- 移植opensll
./config \
no-asm \
no-sse2 \
no-ssl3 \
no-zlib \
no-async \
no-bf \
no-camellia \
no-cast \
no-cms \
no-comp \
no-dso \
no-idea \
no-md2 \
no-mdc2 \
no-rc2 \
no-rc5 \
no-ripemd \
no-seed \
--prefix=$(pwd)/output\
-fPIC \
--cross-compile-prefix=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-
此时会报错误:mips-linux-gnu-gcc: error: unrecognized command line option ‘-m64’
我们打开当前目录下的Makefile,搜索-m64,将其删除即可,之后再执行make
1.移植libsrtp
./configure \
--prefix=$(pwd)/output \
--host=arm-linux \
CC=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-gcc \
CXX=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-g++ \
CFLAGS=-Os \
2.移植usrsctp
./bootstrap
./configure \
--prefix=$(pwd)/output \
--host=arm-linux \
CC=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-gcc \
CXX=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-g++ \
--disable-programs \
--disable-inet \
--disable-inet6
3.移植mbedtls-
CC=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-gcc \
cmake . \
-DCMAKE_INSTALL_PREFIX=$(pwd)/output \
-DUSE_SHARED_MBEDTLS_LIBRARY=On \
-DCMAKE_BUILD_TYPE=Release \
-DENABLE_TESTING=OFF \
-DENABLE_PROGRAMS=OFF \
4.移植libevent
./autogen.sh; \
./configure \
--prefix=$(pwd)/output \
--host=arm-linux \
CC=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-gcc \
CXX=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-g++ \
--includedir=/home/leo/webrtc_src/openssl-OpenSSL_1_1_1g/output/include \
LDFLAGS=-L/home/leo/webrtc_src/openssl-OpenSSL_1_1_1g/output/lib \
CFLAGS=-I/home/leo/webrtc_src/openssl-OpenSSL_1_1_1g/output/include \
5.移植libwebsockets
cmake .. \
-DCMAKE_C_COMPILER=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-gcc \
-DCMAKE_SYSTEM_NAME=Linux \
-DLIBEVENT_INCLUDE_DIRS=/home/leo/webrtc_src/libevent-2.1.12-stable/include/ \
-DLIBEVENT_LIBRARIES=/home/leo/webrtc_src/libevent-2.1.12-stable/output/lib/libevent.a \
-DLWS_OPENSSL_INCLUDE_DIRS=/home/leo/webrtc_src/openssl-OpenSSL_1_1_1g/include/ \
-DLWS_OPENSSL_LIBRARIES="/home/leo/webrtc_src/openssl-OpenSSL_1_1_1g/output/lib/libcrypto.so;/home/leo/webrtc_src/openssl-OpenSSL_1_1_1g/output/lib/libssl.so;" \
一键编译
export CC=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-gcc CXX=/home/leo/CDV1004QT/AK37D_SDK_V1.06/tools/arm-anykav500-linux-uclibcgnueabi/bin/arm-anykav500-linux-uclibcgnueabi-g++
mkdir build && cd build
cmake .. -DBUILD_SAMPLE=FALSE -DBUILD_STATIC_LIBS=TRUE -DBUILD_OPENSSL=TRUE -DBUILD_OPENSSL_PLATFORM=linux-generic32 -DBUILD_LIBSRTP_HOST_PLATFORM=x86_64-unknown-linux-gnu -DBUILD_LIBSRTP_DESTINATION_PLATFORM=arm-unknown-linux-uclibcgnueabi
git config --global url.http://120.92.49.206:3232/chromiumsrc/boringssl.insteadOf https://boringssl.googlesource.com/boringssl
git config --global url.https://gitee.com/aleelim/krb5.insteadOf https://github.com/krb5/krb5
git config --global url.https://gitee.com/mirrors/cryptography.git.insteadOf https://github.com/pyca/cryptography.git
git config --global url.https://gitee.com/mirrors/libwebsocketssource.git.insteadOf https://github.com/warmcat/libwebsockets.git