glib 交叉编译记录

redhat6.5平台

glib版本:glib-2.45.2

源码资源url:

libffi-3.2.1.tar.gz:https://sourceware.org/libffi/

glib-2.45.2.tar.xz:http://ftp.acc.umu.se/pub/gnome/sources/glib/2.45/

zlib-1.2.3.tar.bz2 : http://download.chinaunix.net/download.php?id=24014&ResourceID=12241

或者官网下载最新zlib源码版本。


使用glib-2.55.2版本  有找不到lmount问题,即使主机上已经编译安装了util-linux-2.21.2亦有此故障,暂不处理。

使用 glib-2.48.2版本 有pcre库的交叉编译,编译时pcre编译报错,暂不处理,继续更换库版本。glib-2.45.2版本中pcre被源码内部包含


宿主机交叉编译检查配置时,需要glib-compile-resources   glib-compile-schemas等工具。但因宿主机glib2-devel版本太低,须在宿主机上重新编译安装glib-2.45.2。如果主机通过yum安装glib2-devel.i686 及其他glib yum源安装后有glib-compile-resources   glib-compile-schemas  等工具可以忽略下文中宿主机上glib-2.48.2的安装。

ubuntu平台:

sudo apt-get install libglib2.0-dev

直接安装libglib2.0-dev即可解决


宿主机上编译安装glib-2.48.2采用默认配置及编译即可。

宿主机系统中已存在zlib库,无需编译安装。若无 yum install zlib;或下载zlib源码下载编译安装。

宿主机libffi-3.2.1.tar.gz解压编译安装

[root@localhost libffi-3.2.1]# ./configure 
[root@localhost libffi-3.2.1]# make ;make install

 宿主机编译安装glib-2.45.2.tar.xz

解压tar.xz使用指令tar -xvJf glib-2.45.2.tar.xz

[root@localhost glib-2.45.2]# ./configure LIBFFI_CFLAGS='-I/usr/local/lib/libffi-3.2.1/include' LIBFFI_LIBS='-lffi -L=/usr/local/lib' glib_cv_stack_grows=no glib_cv_uscore=yes ac_cv_func_posix_getpwuid_r=yes ac_cv_func_posix_getgrgid_r=yes
[root@localhost glib-2.45.2]# make
[root@localhost glib-2.45.2]# make install

在make  make install末期可能会有doc xsl生成及安装的失败log,在查看宿主机已有如下工具我直接选择了忽视



交叉编译过程描述

zlib库交叉编译

[root@localhost zlib]# CC=arm-hisiv400-linux-gcc ./configure --prefix=/home/yueyc/misc/glib/install/  --shared

[root@localhost zlib]#make;make install


libffi-3.2.1.tar.gz 交叉编译

[root@localhost libffi-3.2.1]# ./configure --prefix=/home/yueyc/misc/glib/install/ --host=arm-hisiv400-linux

[root@localhost libffi-3.2.1]# make;make install


glib-2.45.2交叉编译

[root@localhost glib-2.45.2]# ./configure --prefix=/home/yueyc/misc/glib/install --host=arm-hisiv400-linux PKG_CONFIG_PATH=/home/yueyc/misc/glib/install LIBFFI_CFLAGS='-I/home/yueyc/misc/glib/install/lib/libffi-3.2.1/include' LIBFFI_LIBS='-lffi -L=/home/yueyc/misc/glib/install/lib' ZLIB_CFLAGS='-I/home/yueyc/misc/glib/install/include' ZLIB_LIBS='-lz -L/home/yueyc/misc/glib/install/lib' glib_cv_stack_grows=no glib_cv_uscore=yes ac_cv_func_posix_getpwuid_r=yes ac_cv_func_posix_getgrgid_r=yes  
[root@localhost glib-2.45.2]# make
[root@localhost glib-2.45.2]# make install

即可




主要参考的网页如下:

https://blog.csdn.net/lizhu_csdn/article/details/72877941

https://blog.csdn.net/ty3219/article/details/46942493








yum provides glib-compile-resources

猜你喜欢

转载自blog.csdn.net/vc66vcc/article/details/79737008