feat: Update NNSDK path and library linking in CMake configurations and Android build script, and add a new script to build all Android examples.
This commit is contained in:
parent
f3447fd563
commit
79a2bd27f6
14 changed files with 240 additions and 50 deletions
|
|
@ -70,7 +70,8 @@ cmake ../../src \
|
|||
-DANDROID_ABI=${TARGET_ABI} \
|
||||
-DANDROID_PLATFORM=android-24 \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DOpenCV_DIR=${ROOT_PWD}/../../../dependency/opencv/opencv-android-sdk-build/sdk/native/jni/abi-${TARGET_ABI}
|
||||
-DOpenCV_DIR=${ROOT_PWD}/../../../dependency/opencv/opencv-android-sdk-build/sdk/native/jni/abi-${TARGET_ABI} \
|
||||
-DNNSDK_DIR=${ROOT_PWD}/../../../../amlnn-toolkit/nn_runtime/nnsdk
|
||||
|
||||
make -j4
|
||||
|
||||
|
|
|
|||
|
|
@ -46,8 +46,13 @@ done
|
|||
GCC_COMPILER=${GCC_COMPILER:-aarch64-linux-gnu}
|
||||
|
||||
# Set compilers
|
||||
export CC=${GCC_COMPILER}-gcc
|
||||
export CXX=${GCC_COMPILER}-g++
|
||||
if [[ ${GCC_COMPILER} == *"-gcc" ]]; then
|
||||
export CC=${GCC_COMPILER}
|
||||
export CXX=${GCC_COMPILER%-gcc}-g++
|
||||
else
|
||||
export CC=${GCC_COMPILER}-gcc
|
||||
export CXX=${GCC_COMPILER}-g++
|
||||
fi
|
||||
|
||||
# Validate compiler
|
||||
if ! command -v ${CC} &> /dev/null; then
|
||||
|
|
@ -68,10 +73,21 @@ echo "BUILD_DIR: ${BUILD_DIR}"
|
|||
mkdir -p ${BUILD_DIR}
|
||||
cd ${BUILD_DIR}
|
||||
|
||||
# Set OpenCV path
|
||||
if [ "${TARGET_ARCH}" == "aarch64" ]; then
|
||||
OPENCV_DIR_NAME="opencv-linux-aarch64"
|
||||
elif [ "${TARGET_ARCH}" == "armhf" ]; then
|
||||
OPENCV_DIR_NAME="opencv-linux-armhf"
|
||||
else
|
||||
echo "Warning: No OpenCV prebuilt for architecture ${TARGET_ARCH}"
|
||||
fi
|
||||
|
||||
cmake ../../src \
|
||||
-DCMAKE_SYSTEM_NAME=Linux \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=${TARGET_ARCH} \
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DNNSDK_DIR=${ROOT_PWD}/../../../../amlnn-toolkit/nn_runtime/nnsdk \
|
||||
-DOpenCV_DIR=${ROOT_PWD}/../../../dependency/opencv/${OPENCV_DIR_NAME}/share/OpenCV
|
||||
|
||||
make -j4
|
||||
|
||||
|
|
|
|||
|
|
@ -4,8 +4,12 @@ project(yolo_world_demo)
|
|||
set(CMAKE_CXX_STANDARD 17)
|
||||
|
||||
# Set NNSDK path
|
||||
# Set NNSDK path
|
||||
set(NNSDK_ROOT "${CMAKE_SOURCE_DIR}/../../../../dependency/nnsdk")
|
||||
if(NOT DEFINED NNSDK_DIR)
|
||||
set(NNSDK_DIR "${CMAKE_SOURCE_DIR}/../../../../../amlnn-toolkit/nn_runtime/nnsdk")
|
||||
endif()
|
||||
set(NNSDK_ROOT "${NNSDK_DIR}")
|
||||
message(STATUS "NNSDK_ROOT: ${NNSDK_ROOT}")
|
||||
|
||||
include_directories(${NNSDK_ROOT}/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/../../../../common)
|
||||
|
||||
|
|
@ -14,14 +18,14 @@ set(3RDPARTY_DIR "${CMAKE_SOURCE_DIR}/../../../../dependency")
|
|||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||
if (ANDROID_ABI STREQUAL "arm64-v8a")
|
||||
link_directories(${NNSDK_ROOT}/lib/android/arm64-v8a)
|
||||
link_directories(${NNSDK_ROOT}/android/arm64-v8a)
|
||||
else()
|
||||
link_directories(${NNSDK_ROOT}/lib/android/armeabi-v7a)
|
||||
link_directories(${NNSDK_ROOT}/android/armeabi-v7a)
|
||||
endif()
|
||||
# Android needs log
|
||||
link_libraries(log)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
link_directories(${NNSDK_ROOT}/lib/linux/lib64_yocto)
|
||||
link_directories(${NNSDK_ROOT}/linux/yocto/aarch64-poky-linux)
|
||||
endif()
|
||||
|
||||
# Find OpenCV
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue