交叉编译libcurl时候找不到openssl动态库问题

需要交叉编译libcurl,需要依赖openssl跟zlib。
编译libcurl时候出现libssl.so.1.1找不到问题。
源码官网:
https://curl.se/download.html
https://www.openssl.org/source/
https://www.openssl.org/source/

以下流程:

1.交叉编译openssl:

./config no-asm shared no-async --prefix=/home/cdr/work/third-party/openssl --cross-compile-prefix=arm-linux-gnueabihf-
make;make install

2.交叉编译zlib

./configure --prefix=/home/work/third-party/zlib --shared
修改makefile添加交叉编译工具(将CC,CPP等改为交叉编译工具链)
CC=arm-linux-gcc

CFLAGS=-O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
#CFLAGS=-g -DZLIB_DEBUG
#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
#           -Wstrict-prototypes -Wmissing-prototypes

SFLAGS=-O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN
LDFLAGS=
TEST_LDFLAGS=-L. libz.a
LDSHARED=arm-linux-gcc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map
CPP=arm-linux-gcc -E

STATICLIB=libz.a
SHAREDLIB=libz.so
SHAREDLIBV=libz.so.1.2.11
SHAREDLIBM=libz.so.1
LIBS=$(STATICLIB) $(SHAREDLIBV)

AR=arm-linux-ar
ARFLAGS=rc
RANLIB=arm-linux-ranlib
LDCONFIG=ldconfig
LDSHAREDLIBC=-lc
TAR=tar
SHELL=/bin/sh
EXE=

prefix =/home/user/work/arm/zlib
exec_prefix =${prefix}
libdir =${exec_prefix}/lib
sharedlibdir =${libdir}
includedir =${prefix}/include
mandir =${prefix}/share/man
man3dir = ${mandir}/man3
pkgconfigdir = ${libdir}/pkgconfig
SRCDIR=
ZINC=
ZINCOUT=-I.
make;make install

3.交叉编译libcurl

./configure --prefix=/home/work/third-party/curl --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ -with-ssl=/home/work/third-party/openssl --enable-shared --enable-static --disable-dict --disable-ftp CPPFLAGS="-I/home/work/third-party/openssl -I/home/work/third-party/openssl/include" LDFLAGS="-L/home/work/third-party/openssl/lib" LIBS="-ldl -lssl -lcrypto"
make;make install

**注意:**如果不加CPPFLAGS,LDFLAGS路径会出现报错,找不到libssl.so.1.1
warning: libssl.so.1.0.0, needed by …/lib/.libs/libcurl.so, not found (try using -rpath or -rpath-link)
warning: libcrypto.so.1.0.0, needed by …/lib/.libs/libcurl.so, not found (try using -rpath or -rpath-link)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值