交叉编译 glib

解压后,在源码根目录下创建glib.cache

glib_cv_long_long_format=ll
glib_cv_stack_grows=no
glib_cv_have_strlcpy=no
glib_cv_have_qsort_r=yes
glib_cv_va_val_copy=yes
glib_cv_uscore=no
glib_cv_rtldglobal_broken=no
ac_cv_func_posix_getpwuid_r=yes
ac_cv_func_posix_getgrgid_r=yes

执行配置,不要在build目录里

./configure --prefix=$PWD/arm-install CC=aarch64-linux-gnu-gcc --host=aarch64-linux-gnu LIBFFI_CFLAGS="-I/home/zys/tool/libffi-3.4.2/arm-install/include" LIBFFI_LIBS="-lffi -L/home/zys/tool/libffi-3.4.2/arm-install/lib" --cache-file=./glib.cache --disable-selinux  --disable-xattr --disable-libelf

报错
gdate.c:2497:7: error: format not a string literal, format string not checked [-Werror=format-nonliteral]
tmplen = strftime (tmpbuf, tmpbufsize, locale_format, &tm);

解决:tmplen = strftime 前后增加pragma

#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wformat-nonliteral"
tmplen = strftime (tmpbuf, tmpbufsize, locale_format, &tm);
#pragma GCC diagnostic pop

报错 gdbusauth.c:1298:11: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
1298 | debug_print (“SERVER: WaitingForBegin, read ‘%s’”, line);

解决 增加判断指针非空

报错 gdbusmessage.c:2698:30: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
2698 | tupled_signature_str = g_strdup_printf (“(%s)”, signature_str);

解决 增加判断指针非空

编译成功
在这里插入图片描述
/home/zys/tool/glib-2.48.2/arm-install

x86版本 LCM requires GLib >= 2.0 解决 sudo apt-get install glib2.0 -y

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值