编译rocksdb报错

编译器工具链 编译器工具链 1605 人阅读 | 1 人回复 | 2022-03-30

Makefile:235:   -DROCKSDB_DLL -fno-rtti
  CCLD     librocksdb.so.7.0.3
/usr/bin/ld: ./memory/concurrent_arena.o: TLS local exec code cannot be linked into shared objects
/usr/bin/ld: ./memory/concurrent_arena.o: TLS local exec code cannot be linked into shared objects
/usr/bin/ld: 最后的链结失败: nonrepresentable section on output

参考网上资料添加 gcc -pie 选项,编译成功,请问专家,这样做可以吗,有何影响,和具体原因
以下为编译环境
xxx@xx:~/cpp_compile/rocksdb-7.0.3$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/sw_64-sunway-linux-gnu/8.3.0/lto-wrapper
Target: sw_64-sunway-linux-gnu
Configured with: /work/build/gcc-8/gcc-8-8.3.0.2-1+deepin2/src/configure --build=sw_64-sunway-linux-gnu --host=sw_64-sunway-linux-gnu --target=sw_64-sunway-linux-gnu --prefix=/usr --with-gmp=/usr --with-mpfr=/usr --with-mpc=/usr --enable-shared --enable-languages=c,c++,fortran,go,lto,objc,obj-c++ --disable-multilib --enable-c99 --enable-long-long --enable-threads=posix --enable-__cxa_atexit --disable-bootstrap --disable-nls --enable-multiarch --enable-browser-plugin --enable-gnu-indirect-function --enable-linker-build-id --enable-linker-no-relax --with-cpu=sw6b
Thread model: posix
gcc version 8.3.0 20210709 (Branch: ID (GCC)

回复

使用道具 举报

回答|共 1 个

TecSupport

发表于 2022-5-16 11:09:11 | 显示全部楼层

-pie选项是公用选项,申威平台和其他平台是一样的,加了也不会有什么影响。

【提示:论坛功能管控受限,建议您移步“申威社区-助力申威-问题反馈”反馈问题,谢谢】
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则