首页 > 解决方案 > 编译 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?我真的需要它还是可以以某种方式禁用它?

标签: gccmakefilexorg

解决方案


推荐阅读