gcc - 编译 xorg-server 时出现 libexa 错误
问题描述
我正在尝试编译 xorg-server 版本 1.20.5。
LDFLAGS="-lrt" ./configure \
--prefix=/usr \
--enable-glamor \
--enable-config-udev \
--enable-config-udev-kms \
--enable-suid-wrapper \
--disable-systemd-logind \
--with-xkb-output=/lib/xkb \
--with-log-dir=/var/log/xorg
配置没有给出错误,但是在运行 make 时,我得到了这个:
gcc -shared -fPIC -DPIC .libs/examodule.o -Wl,--whole-archive ../../../exa/.libs/libexa.a -Wl,--no-whole-archive -lrt /usr/lib/libpixman-1.a -lm -g -O2 -pthread -pthread -Wl,-soname -Wl,libexa.so -o .libs/libexa.so
/usr/sbin/ld: /usr/lib/libpixman-1.a(pixman-implementation.o)(.text+0x2c8): R_ARM_TLS_LE32 relocation not permitted in shared object
/usr/lib/libpixman-1.a(pixman-implementation.o): in function `_pixman_implementation_lookup_composite':
/home/root/pixman-0.38.4/pixman/pixman-implementation.c:180:(.text+0x2c8): dangerous relocation: unsupported relocation
collect2: error: ld returned 1 exit status
make[5]: *** [Makefile:699: libexa.la] Error 1
make[5]: Leaving directory '/home/root/xorg-server-1.20.5/hw/xfree86/exa'
make[4]: *** [Makefile:749: all-recursive] Error 1
make[4]: Leaving directory '/home/root/xorg-server-1.20.5/hw/xfree86/exa'
make[3]: *** [Makefile:869: all-recursive] Error 1
make[3]: Leaving directory '/home/root/xorg-server-1.20.5/hw/xfree86'
make[2]: *** [Makefile:678: all] Error 2
make[2]: Leaving directory '/home/root/xorg-server-1.20.5/hw/xfree86'
make[1]: *** [Makefile:615: all-recursive] Error 1
make[1]: Leaving directory '/home/root/xorg-server-1.20.5/hw'
make: *** [Makefile:816: all-recursive] Error 1
我该如何解决?我假设我需要一些自定义 LDFLAGS?到底什么是 libexa?我真的需要它还是可以以某种方式禁用它?
解决方案
推荐阅读
- sql - 使用 SQL 获取按部门分组的最大值
- objective-c - 带有 NSArray 的 2D NSDictionary
- java - 缩放导航网站,不让悬停在背景部分上工作
- r - 如何将 R 数据帧转换为长格式
- python - 如何在Excel文件中插入图片?
- c# - 跨对话广播消息
- python - 了解图像上的导数以及 scipy 的卷积信号函数
- reverse-engineering - 编写一个编辑非法私人服务器客户端内存的程序本身是非法的吗?
- excel - 以动态表列为参数的 Excel vba 函数
- angular - Angular中组件的全局scss文件和scss文件之间的区别