【发布时间】:2019-02-11 18:38:39
【问题描述】:
在 cmake 已经预编译后,在 99% 编译时链接 CXX 可执行 worldserver 失败。
[ 99%] Linking CXX executable worldserver
/usr/bin/ld: ../../../deps/jemalloc/libjemalloc.a(jemalloc.c.o): relocation R_X86_64_32S against symbol `sz_size2index_tab' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ../../../deps/jemalloc/libjemalloc.a(large.c.o): relocation R_X86_64_32S against symbol `sz_size2index_tab' can not be used when making a PIE object; recompile with -fPIC
等等
错误是:https://pastebin.com/pVEkzzNs
我正在运行最新的 Ubuntu,并尝试通过 SSH 安装最新的 AzerothCore(无自动安装程序)。
预期:一切正常。 实际:甚至没有创建二进制文件。
【问题讨论】:
-
你的编译器名称和版本是什么?
-
在 CMakeLists.txt 文件中,是否有任何明显的方法可以设置包含 '-fPIC' 的编译标志?
-
CMAKE_INSTALL_PREFIX设置了吗? -
@FrancescoBorzi 我目前使用的是
sudo apt-get install git cmake make gcc g++ clang libmysqlclient-dev libssl-dev libbz2-dev libreadline-dev libncurses-dev mysql-server libace-6.* libace-dev@Barbz_YHOOL 我设置了DCMAKE_INSTALL_PREFIX,是的。 -
你能发布你的cmake的输出吗?
标签: c++ cmake clang jemalloc azerothcore