>> BTW, I fear that it's practically impossible (means: takes a too huge amount 
>> of work) to build a static lib of cairo due to its numerous dependencies.
> 
> Actually, I did it last week :) I wanted to try cairo meta surface which is 
> implemented in new 1.9.4 snapshot (not release). Cairo has Makefile.Win32, 
> but it is for MSVC only. I've tried to use mingw. It requires msys. It was 
> the first time I've installed msys and (to my surprise) I've got shell 
> similar to cygwin. Later I've tried to run "configure" and "make", use 
> switches like --without-svg, install some packages, etc.
> 
> The final step by step cook receipt is:

Wow, thanks for these instructions.

As next step the same can be tried to create static libs.

And as a final exercise it should also work with MSVC and 
MSVC x64. This is the part where real "fun" begins :/

> 1) Install mingw using TDM's GCC into c:/mingw
> 2) gunzip http://cairographics.org/snapshots/cairo-1.9.4.tar.gz into c:/
> 3) Install msys-1.0.11.exe (from MinGW) into c:/msys
> 4) gunzip 
> http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config_0.23-3_win32.zip
>  into c:/mingw (not into c:/msys !!!)
> 5) gunzip 
> http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.22/glib_2.22.2-1_win32.zip
>  into c:/mingw
> 6) gunzip 
> http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libpng-dev_1.2.39-1_win32.zip
>  into c:/mingw
> 7) gunzip libz-1.2.3-1-mingw32-dev.tar.gz (from Mingw zlib) into c:/mingw 
> (http://www.zlib.net/zlib123-dll.zip is not good for this, it is for MSVC)
> 8) gunzip http://cairographics.org/releases/pixman-0.17.2.tar.gz into c:/
> 9) msys> cd /c/pixman-0.17.2
> 10) msys> ./configure
> 11) msys> make install
> 12) Copy c:/msys/pixman-1/* to c:/mingw (it should be installed into c:/mingw)
> 13) msys> cd /c/cairo-1.9.4
> 14) msys> ./configure
> 15) msys> make
> 16) Bingo! c:/cairo-1.9.4/src/.libs/libcairo-2.dll exists! Can be stripped to 
> make 2495KB -> 473 KB.
> 
> 
> The most magic part was running ./configure. Looks more sophisticated than 
> linux boot messages on the screen :)

I didn't have much luck with msys yet, but this seems sleek.

Unfortunately the process varies a lot from project to project, 
so it needs to be reinvented for each lib and each compiler.
(with OpenSSL, it's 'perl.exe Configure')

Brgds,
Viktor

_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to