博主需要编译curl到arm板,而openssl是编译curl的前提。编译curl遇到标题的报错。博主用的openssl版本是最新的openssl3.0.1,curl用的是最新的7.8.0.0。网上的方法,如将openssl降级,解决不了问题。
解决办法:
安装zlib(下面的第一步),例如zlib1.2.5,再编译curl。就不会报错了。
1、安装zlib(博主版本 zlib-1.2.5)
tar zxf zlib-1.2.5.tar.gz
cd zlib-1.2.5/
mkdir zlib_install #安装目录
export CC=arm-linux-gnueabihf-gcc #zlib configure不能配置编译器,需要手动export
./configure --prefix=/home/yg/share/prj/curl/zlib-1.2.5/zlib_install
make -j8
make install
2、安装openssl(博主版本openssl-3.0.1)
tar zxf openssl-3.0.1.tar.gz
cd openssl-3.0.1/
mkdir openssl_install
./config no-asm \
shared \
--prefix=/home/xiaopang/curl/openssl-3.0.1/openssl_install \
--cross-compile-prefix=arm-linux-gnueabihf-
gedit Makefile
#编辑Makefile文件 搜索-m64 都去掉,保存(参考下图),不去掉编译会报错。
make -j8
make install
3、安装curl(博主版本curl7.80.0)
tar -zxf curl-7.80.0.tar.gz
cd curl-7.80.0/
mkdir mkdir curl_install
./configure \
--prefix=/home/xiaopang/curl/curl-7.80.0/curl_install \
--host=arm-linux \
CC=arm-linux-gnueabihf-gcc \
CFLAGS="-fPIC" \
--with-ssl=/home/xiaopang/curl/openssl-3.0.1/openssl_install \
--with-zlib=/home/xiaopang/curl/zlib-1.2.5/zlib_install
make -j8
make install