[cairo-commit] [cairo-www] src/end_to_end_build_for_win32.mdwn

Carl Worth cworth at freedesktop.org
Tue Oct 20 10:00:30 PDT 2009


 src/end_to_end_build_for_win32.mdwn |   71 ++++++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)

New commits:
commit f4f7d0cd81a1994215ae21d7e803e7fd63c4feb6
Author: travisgriggs <travisgriggs at web>
Date:   Tue Oct 20 10:00:30 2009 -0700

diff --git a/src/end_to_end_build_for_win32.mdwn b/src/end_to_end_build_for_win32.mdwn
new file mode 100644
index 0000000..67ef4ad
--- /dev/null
+++ b/src/end_to_end_build_for_win32.mdwn
@@ -0,0 +1,71 @@
+Goal: Build CairoGraphics dll as a single redistributable DLL. Use free tools that anyone can download. End up with a dll that doesn't need any other dlls, system or not.
+
+Original Author: Travis Griggs (travisgriggs at gmail.com)
+
+Original Version: 1.8.8
+
+Other Tested Versions: 
+
+Tools Needed:
+<ul>
+<li>Command line (e.g. cmd32.exe)</li>
+<li>Dev Studio Express</li>
+</ul>
+
+Work in progress/Draft
+
+### Initial Setup
+Designate a directory to work in. Clean it out and then we'll do all work in there with fresh copies.
+
+
+       export BuildDir=${HOME}/BuildCairo
+       rm -rf ${BuildDir}
+       mkdir ${BuildDir}
+       cd ${BuildDir}
+
+### Download and untar tarballs
+Use curl to download FOUR tarballs: pkg-config, libpng, pixman, cairo. Adjust specific version paths as desired
+       
+       
+       curl http://pkgconfig.freedesktop.org/releases/pkg-config-0.23.tar.gz -o pkgconfig.tgz
+       curl ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.2.40.tar.gz -o libpng.tgz
+       curl http://www.cairographics.org/releases/pixman-0.16.2.tar.gz -o pixman.tgz
+       curl http://www.cairographics.org/releases/cairo-1.8.8.tar.gz -o cairo.tgz
+
+
+       tar -xzf pkgconfig.tgz
+       tar -xzf libpng.tgz
+       tar -xzf pixman.tgz
+       tar -xzf cairo.tgz
+
+
+       mv pkg-config-* pkgconfig
+       mv libpng-* libpng
+       mv pixman-* pixman
+       mv cairo-* cairo
+
+
+
+
+Why the last 4 mv commands? The default directory names are things like pixman-0.1.16 (version numbers included in the name). Some of the packages have compile paths dependent on the simpler names. So we do all 4 of them to keep them simple and consistent.
+
+
+### Setup environment variables for fat binary compilation
+
+### Build zlib
+
+In progress
+
+### Build libpng
+
+In progress
+
+### Build pixman
+In progress
+
+### Build cairo
+In progress
+
+### Congratulations!
+You've got a cairo.dll...
+


More information about the cairo-commit mailing list