OpenSSL安装
先去官网下载openssl1.1.1u和python3.10的安装包到树莓派
将openssl安装到/software目录下
sudo mkdir /software sudo tar -xvf openssl-1.1.1u.tar.gz cd openssl-1.1.1u/
编译安装
sudo ./config --prefix=/software/openssl --openssldir=/software/openssl-111 sudo make -j4 sudo make install sudo mv /usr/bin/openssl /usr/bin/openssl-back sudo ln -s /software/openssl/bin/openssl /usr/bin/openssl sudo ln -s /software/openssl/include/openssl /usr/include/openssl sudo sh -c "echo '/software/openssl/lib' >> /etc/ld.so.conf" sudo ldconfig -v openssl version sudo mv /usr/lib/arm-linux-gnueabihf/libssl.so.1.1 /usr/lib/arm-linux-gnueabihf/libssl.so.1.1.old sudo mv /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.1 /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.1.old sudo cp /software/openssl/lib/libssl.so.1.1 /usr/lib/arm-linux-gnueabihf sudo cp /software/openssl/lib/libcrypto.so.1.1 /usr/lib/arm-linux-gnueabihf
最终显示
pi@RaspberryPi:~ $ openssl version OpenSSL 1.1.1u 30 May 2023
python安装
将python安装到/software目录下
查看openssl lib库文件位置
pi@RaspberryPi:~ $ dpkg -L libssl-dev | grep libssl.a /usr/lib/arm-linux-gnueabihf/libssl.a sudo tar -xvf Python-3.10.12.tgz cd Python-3.10.12/
编译安装
--prefix :选项指定Python 3的安装目录为 /usr/local/mydev/python/python3,你可以根据自己的需要修改安装目录。(可选)。用法:--prefix=/usr/local/mydev/python/python3。
--enable-optimizations: 选项启用优化选项,以提高Python解释器的性能。这个选项会使用一些编译器优化和调整来提高Python的执行速度,但是会增加编译时间和内存使用。(可选)
--with-openssl :选项指定使用哪个OpenSSL库版本编译Python。在这个例子中,Python将使用/software/openssl 路径下的OpenSSL库,这个路径下通常是OpenSSL库的二进制可执行文件的安装位置。(可选)。用法:--with-openssl=/software/openssl,使用这个选项一定要先安装openssl再安装python,目录使用openssl安装好的那个目录(--prefix=),不要像安装模块一样指定解压出来的那个目录,因为模块是不需要安装的但openssl不一样。
--with-ssl :与 --with-openssl二选一,此方式就是不指定ssl
make j4 :意思就是make编译的时候用4个核心同时编译,这样会加快编译速度,缺点是树莓派CPU温度上升非常快,一会就到了70度上下,最好是make j2使用双核心,这样温度大概62度左右。冬天可以j4,因为室温比较低。
./configure --prefix=/software/python3.10 --with-openssl=/software/openssl sudo make j2 sudo make install sudo ln -s /software/python3.10/bin/python3.10 /usr/local/bin/python3.10 sudo ln -s /software/python3.10/bin/pip3.10 /usr/local/bin/pip3.10 sudo ln -s /software/python3.10/bin/python3.10-config /usr/local/bin/python3.10-config
查看python是否支持openssl,分别是python2、python3.5、python3.10,前两个是树莓派自带的python,后面这个python3.10就是编译安装的,到此就算成功了。
pi@RaspberryPi:/software/Python-3.10.12 $ python -c "import ssl; print(ssl.OPENSSL_VERSION)" OpenSSL 1.1.1u 30 May 2023 pi@RaspberryPi:/software/Python-3.10.12 $ python3 -c "import ssl; print(ssl.OPENSSL_VERSION)" OpenSSL 1.1.1u 30 May 2023 pi@RaspberryPi:/software/Python-3.10.12 $ python3.10 -c "import ssl; print(ssl.OPENSSL_VERSION)" OpenSSL 1.1.1u 30 May 2023 python3.10 --version
发表评论