Mac OS X 编译第三方库 10.6.4 (64bits)


First you need to install Xcode 3.2.4 with 10.4 SDK (an install option of Xcode that is not pre-selected), and Git

Next, you may want to decide if you need the mozilla-related stuff built. See Development/Native_Build#Disable_mozilla on disabling mozilla. In case of --disable-mozilla you can skip the following dependencies.

Note: the bash sections below are meant to be cut-and-pasted into a console.

We are going to build the dependencies in ~/lodep

cd
mkdir lodep
cd lodep
export PAR="-j8" # change 8 with the approriate number of cpus


Install pkg-config (pkg-config Wiki – FrontPage)
curl http://pkgconfig.freedesktop.org/releases/pkg-config-0.25.tar.gz -o pkg-config-0.25.tar.gz
tar -xf pkg-config-0.25.tar.gz
cd pkg-config-0.25
./configure CC="gcc -arch i386 -arch x86_64" CXX="g++ -arch i386 -arch x86_64" CPP="gcc -E" CXXCPP="g++ -E"
make $PAR
sudo make install
cd -
Install gettext (gettext - GNU Project - Free Software Foundation (FSF))
curl http://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.1.1.tar.gz -o gettext-0.18.1.1.tar.gz
tar -xf gettext-0.18.1.1.tar.gz
cd gettext-0.18.1.1
./configure CC="gcc -arch i386 -arch x86_64" CXX="g++ -arch i386 -arch x86_64" CPP="gcc -E" CXXCPP="g++ -E"
make $PAR
sudo make install
cd -
Install glib2 (ftp.gnome.org)
curl ftp://ftp.gnome.org/pub/gnome/sources/glib/2.27/glib-2.27.0.tar.bz2 -o glib-2.27.0.tar.bz2
tar -xf glib-2.27.0.tar.bz2
cd glib-2.27.0
./configure --with-libiconv=native
echo '--- glib-2.27.0-orig/glib/gconvert.c2010-09-17 17:33:50.000000000 -0500' > glib.patch
echo '+++ glib-2.27.0/glib/gconvert.c 2010-10-27 00:01:39.000000000 -0500' >> glib.patch
echo '@@ -61,9 +61,6 @@' >> glib.patch
echo ' #if defined(USE_LIBICONV_GNU) && !defined (_LIBICONV_H)' >> glib.patch 
echo ' #error GNU libiconv in use but included iconv.h not from libiconv' >> glib.patch
echo ' #endif' >> glib.patch
echo '-#if !defined(USE_LIBICONV_GNU) && defined (_LIBICONV_H)' >> glib.patch
echo '-#error GNU libiconv not in use but included iconv.h is from libiconv' >> glib.patch
echo '-#endif' >> glib.patch 
echo ' ' >> glib.patch
echo ' /**' >> glib.patch 
echo '  * SECTION:conversions' >> glib.patch 
patch -p1 < glib.patch 
make
sudo make install
make clean
./configure CC="gcc -arch i386" CXX="g++ -arch i386" CPP="gcc -E" CXXCPP="g++ -E" --with-libiconv=native
make $PAR
lipo -create gio/.libs/libgio-2.0.0.dylib /usr/local/lib/libgio-2.0.0.dylib -output libgio-2.0.0.dylib
lipo -create glib/.libs/libglib-2.0.0.dylib /usr/local/lib/libglib-2.0.0.dylib -output libglib-2.0.0.dylib
lipo -create gmodule/.libs/libgmodule-2.0.0.dylib /usr/local/lib/libgmodule-2.0.0.dylib -output libgmodule-2.0.0.dylib
lipo -create gobject/.libs/libgobject-2.0.0.dylib /usr/local/lib/libgobject-2.0.0.dylib -output libgobject-2.0.0.dylib
lipo -create gthread/.libs/libgthread-2.0.0.dylib /usr/local/lib/libgthread-2.0.0.dylib -output libgthread-2.0.0.dylib
sudo mv libgio-2.0.0.dylib /usr/local/lib/libgio-2.0.0.dylib
sudo mv libglib-2.0.0.dylib /usr/local/lib/libglib-2.0.0.dylib
sudo mv libgmodule-2.0.0.dylib /usr/local/lib/libgmodule-2.0.0.dylib
sudo mv libgobject-2.0.0.dylib /usr/local/lib/libgobject-2.0.0.dylib
sudo mv libgthread-2.0.0.dylib /usr/local/lib/libgthread-2.0.0.dylib
cd -
Install libIDL (Index of /pub/gnome/sources/libIDL/0.8)
curl http://ftp.acc.umu.se/pub/gnome/sources/libIDL/0.8/libIDL-0.8.14.tar.gz -o libIDL-0.8.14.tar.gz
tar -xf libIDL-0.8.14.tar.gz
cd libIDL-0.8.14
./configure
make $PAR
sudo make install
./configure CC="gcc -arch i386" CXX="g++ -arch i386" CPP="gcc -E" CXXCPP="g++ -E"
make $PAR
lipo -create .libs/libIDL-2.0.dylib /usr/local/lib/libIDL-2.0.dylib -output libIDL-2.0.dylib
lipo -create .libs/libIDL-2.a /usr/local/lib/libIDL-2.a -output libIDL-2.a
sudo mv libIDL-2.0.dylib /usr/local/lib/libIDL-2.0.dylib
sudo mv libIDL-2.a /usr/local/lib/libIDL-2.a
cd -
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值