针对本地符号重定位 R_X86_64_32 错误

发布于 2024-07-27 13:23:58 字数 772 浏览 5 评论 0原文

我正在尝试安装具有 Apache 支持的 Subversion。 我使用 --enable-shared 安装了 aprapr-utilsneonOpenSSL 标志。 但是,在尝试安装 subversion 时,我收到以下错误:

/usr/bin/ld: /usr0/software/openssl/ossl/lib/libssl.a(s23_clnt.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/usr0/software/openssl/ossl/lib/libssl.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [libserf-0.la] Error 1
make[1]: Leaving directory `/usr0/sources/svn/subversion-1.6.3/serf'
make: *** [external-all] Error 1

Subversion 常见问题解答中指出,如果收到此错误,我应该使用 --enable-shared 标志,它应该可以工作。 然而,这并没有帮助。 关于如何解决这个问题有什么想法吗?

I am trying to install Subversion with Apache support. I installed apr, apr-utils, neon, and OpenSSL with the --enable-shared flag. However, I get the following error when trying to install subversion:

/usr/bin/ld: /usr0/software/openssl/ossl/lib/libssl.a(s23_clnt.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/usr0/software/openssl/ossl/lib/libssl.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [libserf-0.la] Error 1
make[1]: Leaving directory `/usr0/sources/svn/subversion-1.6.3/serf'
make: *** [external-all] Error 1

On the Subversion FAQ it is stated that if I get this error, I should use the --enable-shared flag and it should work. However, that doesn't help. Any ideas on how to get around this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

听不够的曲调 2024-08-03 13:23:58

我发现问题出在 openssl 安装上。 重新安装 openssl 并启用共享有效。

I figured out that the problem was with the openssl install. Reinstalling openssl with enable-shared worked.

国产ˉ祖宗 2024-08-03 13:23:58

我通过在 crypto\cryptolib.h 中向 OPENSSL_ia32cap_P 添加隐藏属性并重新编译来解决该问题。

extern unsigned int OPENSSL_ia32cap_P[] __attribute__ ((visibility ("hidden")));

I solve it with adding hidden attribute to OPENSSL_ia32cap_P in crypto\cryptolib.h and recompile.

extern unsigned int OPENSSL_ia32cap_P[] __attribute__ ((visibility ("hidden")));
三生一梦 2024-08-03 13:23:58

我在其他几个非 openssl 场景中遇到过这个问题,我发现这通常与没有打开共享库有关。

--enable-shared 添加到您的配置行似乎可以修复它。

I've run into this in a couple of other non-openssl scenarios, and I've found that this is generally related to not having shared libraries turned on.

Adding --enable-shared to your configure line seems to fix it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文