交叉编译-12:openssl交叉编译undefined reference to `TLS_DTPREL_VALUE'问题解决

本文介绍在使用MIPS-Linux-UCLibc-GCC交叉编译链编译OpenSSL过程中遇到的未定义引用错误,并提供了一种有效的解决方案。通过修改Makefile中特定部分,可以成功解决这些错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:使用mips-linux-uclibc-gnu-gcc交叉编译链在编译openssl的时候报出以下错误:

[root@localhost openssl-1.0.1e]# libdl.c:(.text+0x1778): undefined reference to `TLS_DTPREL_VALUE'
[root@localhost openssl-1.0.1e]# libdl.c:(.text+0x17b8): undefined reference to `TLS_TPREL_VALUE'
[root@localhost openssl-1.0.1e]# libdl.c:(.text+0x1770): undefined reference to `TLS_DTPREL_VALUE'
[root@localhost openssl-1.0.1e]# libdl.c:(.text+0x1790): undefined reference to `TLS_TPREL_VALUE'
[root@localhost openssl-1.0.1e]# libdl.c:(.text+0x17ac): undefined reference to `TLS_TPREL_VALUE'
[root@localhost openssl-1.0.1e]# collect2: error: ld returned 1 exit status

解决方法:修改Makefile以下两处

sub_all: build_all
#build_all: build_libs build_apps build_tests build_tools
build_all: build_libs
build_libs: build_crypto build_ssl build_engines
#DIRS=   crypto ssl engines apps test tools
DIRS=   crypto ssl engines 
ENGDIRS= ccgost
SHLIBDIRS= crypto ssl

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值