1. 需要设置交叉编译路径
export CC=/home/yq/mijia_camera_common/buildroot/output/host/bin/mips-linux-gnu-gcc
export CXX=/home/yq/mijia_camera_common/buildroot/output/host/bin/mips-linux-gnu-g++
2. openssl:
需要设置目标平台:
libopenssl-CMakeLists.txt 里边 set (BUILD_OPENSSL_PLATFORM linux-generic32)
如果使用mbedtls:
需要在CMakeList.txt里边设置:
option(USE_OPENSSL "Use openssl as crypto library" OFF)
option(USE_MBEDTLS "Use mbedtls as crypto library" ON)
另外需要在libmbedtls-CMakeLists.txt里边加入选项:
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99")
3. libsrtp:
libsrtp-CMakeLists.txt 里边 SET(BUILD_LIBSRTP_DESTINATION_PLATFORM mips-linux)
另外:
由于openssl 库很大, 可以采用本地编译, 可以修改libopenssl-CMakeLists.txt实现本地编译.
ExternalProject_Add(project_libopenssl
#GIT_REPOSITORY https://github.com/openssl/openssl.git # remove
#GIT_TAG OpenSSL_1_1_1g # remove
URL /home/yq/openssl.tar.gz # new add
SOURCE_DIR ${CMAKE_CURRENT_BINARY_DIR}/build/src/project_libopenssl # new add
PREFIX ${CMAKE_CURRENT_BINARY_DIR}/build
CONFIGURE_COMMAND ${CONFIGURE_COMMAND}
BUILD_COMMAND ${MAKE_EXE}
BUILD_IN_SOURCE TRUE
INSTALL_COMMAND ${MAKE_EXE} install_sw
TEST_COMMAND ""
)
执行编译命令:
mkdir build ; cd build
cmake .. ; make
questions:
1. error: unrecognized command line option '-m64'
编译时需要加入: cmake -DBUILD_OPENSSL_PLATFORM=linux-generic32
网友评论