源码下载
下载链接地址
/source/old/1.1.1/index.html (openssl.org)https://www.openssl.org/source/old/1.1.1/
选择如下软件包openssl-1.1.1k.tar.gz
解压openssl-1.1.1k.tar.gz
tar -xvf openssl-1.1.1k.tar.gz
将openssl-1.1.1k目录下新增src目录,将所有文件放到src目录下
cd openssl-1.1.1k
mkdir src
mv * ./src
在openssl-1.1.1k目录下新建Makefile
Makefile内容如下
说明:由于X12是armv7,但是openssl提供可选只有如下,所以在Configure只能选择linux-armv4
pick os/compiler from:
BS2000-OSD BSD-generic32 BSD-generic64 BSD-ia64 BSD-sparc64 BSD-sparcv8
BSD-x86 BSD-x86-elf BSD-x86_64 Cygwin Cygwin-i386 Cygwin-i486 Cygwin-i586
Cygwin-i686 Cygwin-x86 Cygwin-x86_64 DJGPP MPE/iX-gcc UEFI UWIN VC-CE VC-WIN32
VC-WIN32-ARM VC-WIN32-ONECORE VC-WIN64-ARM VC-WIN64A VC-WIN64A-ONECORE
VC-WIN64A-masm VC-WIN64I aix-cc aix-gcc aix64-cc aix64-gcc android-arm
android-arm64 android-armeabi android-mips android-mips64 android-x86
android-x86_64 android64 android64-aarch64 android64-mips64 android64-x86_64
bsdi-elf-gcc cc darwin-i386-cc darwin-ppc-cc darwin64-arm64-cc darwin64-ppc-cc
darwin64-x86_64-cc gcc haiku-x86 haiku-x86_64 hpux-ia64-cc hpux-ia64-gcc
hpux-parisc-cc hpux-parisc-gcc hpux-parisc1_1-cc hpux-parisc1_1-gcc
hpux64-ia64-cc hpux64-ia64-gcc hpux64-parisc2-cc hpux64-parisc2-gcc hurd-x86
ios-cross ios-xcrun ios64-cross ios64-xcrun iossimulator-xcrun iphoneos-cross
irix-mips3-cc irix-mips3-gcc irix64-mips4-cc irix64-mips4-gcc linux-aarch64
linux-alpha-gcc linux-aout linux-arm64ilp32 linux-armv4 linux-c64xplus
linux-elf linux-generic32 linux-generic64 linux-ia64 linux-mips32 linux-mips64
linux-ppc linux-ppc64 linux-ppc64le linux-sparcv8 linux-sparcv9 linux-x32
linux-x86 linux-x86-clang linux-x86_64 linux-x86_64-clang linux32-s390x
linux64-mips64 linux64-s390x linux64-sparcv9 mingw mingw64 nextstep
nextstep3.3 sco5-cc sco5-gcc solaris-sparcv7-cc solaris-sparcv7-gcc
solaris-sparcv8-cc solaris-sparcv8-gcc solaris-sparcv9-cc solaris-sparcv9-gcc
solaris-x86-gcc solaris64-sparcv9-cc solaris64-sparcv9-gcc solaris64-x86_64-cc
solaris64-x86_64-gcc tru64-alpha-cc tru64-alpha-gcc uClinux-dist
uClinux-dist64 unixware-2.0 unixware-2.1 unixware-7 unixware-7-gcc vms-alpha
vms-alpha-p32 vms-alpha-p64 vms-ia64 vms-ia64-p32 vms-ia64-p64 vos-gcc
vxworks-mips vxworks-ppc405 vxworks-ppc60x vxworks-ppc750 vxworks-ppc750-debug
vxworks-ppc860 vxworks-ppcgen vxworks-simlinux
all:
@if [ ! -e ./src/Makefile ]; then \
cd src;\
CFLAGS=" -fPIC -D_FORTIFY_SOURCE=2 -O3" \
./Configure no-hw linux-armv4 shared \
--prefix=$(DIR_ROMFS)/usr/lib \
--openssldir=$(DIR_ROMFS)/usr/lib/ \
|| exit 1;\
make depend; \
sed -i 's/RANLIB=$$(CROSS_COMPILE)arm-oe-linux-gnueabi-ranlib/RANLIB=$$(CROSS_COMPILE)ranlib/g' Makefile; \
sed -i 's/CC=$$(CROSS_COMPILE)\//CC=\//g' Makefile; \
sed -i 's/CXX=$$(CROSS_COMPILE)\//CXX=\//g' Makefile; \
make;\
else \
cd src; \
make;\
fi
romfs:
cd src;\
cp -rf ./apps/openssl $(ROMFS)/usr/bin;\
cp *.so* $(ROMFS)/usr/lib/; \
clean:
[ -e "./src/Makefile" ] && $(MAKE) -C src clean
[ -e "./src/Makefile" ] && rm -rf src/Makefile
distclean:
[ -e "./src/Makefile" ] && $(MAKE) -C src distclean
[ -e "./src/Makefile" ] && rm -rf src/Makefile
如果交叉编译,可以在./Configure修改为如下
./Configure linux-armv4 shared \
--prefix=$(ROMFS)/usr/lib \
--cross-compile-prefix=$(ROOTFS)/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi- \
-march=armv7-a \
--openssldir=$(ROMFS)/usr/lib/ \