海思Hi3519/Hi3559-使用cmake編譯sdk代碼

事情的起因是我的邏輯代碼使用cmake編譯的,覺着cmake的開發速度會更快(其實是看不懂華爲那層層套用的Makefile -_-).

1. 首先就是先配置交叉編譯鏈,具體參考https://www.cnblogs.com/pied/p/8805883.html

我的toolChain.cmake配置如下,編譯時記得用 cmake DCMAKE_TOOLCHAIN_FILE=../toolChain.cmake ..,

../toolChain.cmake爲該文件放置的路徑

SET(CMAKE_SYSTEM_NAME Linux)

SET(CMAKE_C_COMPILER /opt/hisi-linux/x86-arm/arm-himix200-linux/bin/arm-himix200-linux-gcc)
SET(CMAKE_CXX_COMPILER /opt/hisi-linux/x86-arm/arm-himix200-linux/bin/arm-himix200-linux-g++)
#根目錄
set(CMAKE_FIND_ROOT_PATH )
# search for programs in the build host directories (not necessary)
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
# for libraries and headers in the target directories
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

2. 增加外部庫文件到CMakeLists.txt

set( IVE_SAMPLE_DIR /home/user/Documents/Hi3519AV100/Hi3519AV100R001C02SPC010-user/Hi3519AV100_SDK_V2.0.1.0/smp/a53_linux/mpp/sample/svp/common/)
add_subdirectory( ${IVE_SAMPLE_DIR}/ ive_sample.out)

include_directories(
 
        ${IVE_SAMPLE_DIR}
        ${IncDir}
)

3. 鏈接海思靜態庫,需要鏈接的庫可以參考mpp/sample下的Makefile.param文件, 截取如下

SENSOR_LIBS := $(REL_LIB)/lib_hiae.a
SENSOR_LIBS += $(REL_LIB)/libisp.a
SENSOR_LIBS += $(REL_LIB)/lib_hidehaze.a
SENSOR_LIBS += $(REL_LIB)/lib_hidrc.a
SENSOR_LIBS += $(REL_LIB)/lib_hildci.a
SENSOR_LIBS += $(REL_LIB)/lib_hiawb.a

SENSOR_LIBS += $(REL_LIB)/libsns_imx290.a
SENSOR_LIBS += $(REL_LIB)/libsns_imx290_slave.a
SENSOR_LIBS += $(REL_LIB)/libsns_imx334.a
SENSOR_LIBS += $(REL_LIB)/libsns_imx307.a

我的CMakeList.txt配置如下,僅供參考:

target_link_libraries(MYPROJECT pthread -ldl 
        ${LIB_DIR}/libmpi.a 
        ${LIB_DIR}/libsecurec.a
        ${LIB_DIR}/libupvqe.a
        ${LIB_DIR}/libdnvqe.a
        ${LIB_DIR}/libVoiceEngine.a

        ${LIB_DIR}/libhdmi.a
        ${LIB_DIR}/libdsp.a

        ${LIB_DIR}/libsns_imx290.a
        ${LIB_DIR}/libsns_imx290_slave.a
        ${LIB_DIR}/libsns_imx307.a
        ${LIB_DIR}/libsns_imx334.a


        ${LIB_DIR}/libisp.a
        ${LIB_DIR}/lib_hiae.a
        ${LIB_DIR}/lib_hiawb.a

        ${LIB_DIR}/lib_hildci.a
        ${LIB_DIR}/lib_hidrc.a
        ${LIB_DIR}/lib_hidehaze.a

        ${LIB_DIR}/libive.a
        ${LIB_DIR}/libmd.a
        ${LIB_DIR}/libnnie.a
        )

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章