← Back to team overview

kicad-developers team mailing list archive

Re: Crosscompilling again - no luck

 

On 03/10/2011 01:53 PM, Milan Horák wrote:
> Hi gentlemen,
>
> I'm trying again to crosscompile Kicad for Windows on Linux.
>
> My problem is, that cmake ends with "wxWidgets bot found" message.
>
> I ran cmake through strace but everything seems to be the right way.
>
> wx is 2.8.11, Kubuntu 10.10
>
> What should I focus on now?
>
> Thanks for any advice.
>
> Milan


Last week I needed to build a MinGW application, and it needed to link to
zlib (i.e. zip library).  I was able to trick out the CMakeList.txt file for
the parent program to download and build the zlib using the "external
project" mechanism within CMake.    Moreover, I did this from Linux for a
Windows executable.


The CMake External Project mechanism is quite powerful and customizable.  
It can build external projects.   The only weakness is Windows itself, where
perhaps the project you want to build, cannot be built on Windows (without
say Cygwin or Msys).


But if you are building on Linux for Windows, then this limitation might not
present itself, if say, all external projects can be cross compiled from
Linux for Windows.


On Linux, I think it would be possible to build everything needed for
Windows Kicad using CMake's *external project* mechanism.


This might be a good way for a contributor to step up and help Milan.

I can post the CMake lines I used for zlib, and that may serve as an example
for someone to take this to all the external projects required by Windows Kicad.


Note that zlib now has a CMakeLists.txt file that was used within the
external project (chain loaded, so to speak), so this is one way to build an
external project.  But from Kicad's CMakeList.txt file you can also build
any external project that might use Autotools, or whatever, as long as those
tools are present on your linux box.   ANd if they are not, CMake could even
be used to download and build those.

There is almost nothing that cannot be done by CMake if you write the
correct scripts for it, since it can:

A) download files from the internet,
B) Compile and link external projects.
C) has a simple general purpose programming language built in.


Again, executive summary:

On Linux, I think it would be possible to build everything needed for
Windows Kicad using CMake's *external project* mechanism.


Dick




Follow ups

References