diff --git a/external/onnxruntime.cmake b/external/onnxruntime.cmake index 3e50c804f..01e7b8126 100644 --- a/external/onnxruntime.cmake +++ b/external/onnxruntime.cmake @@ -44,9 +44,18 @@ elseif(APPLE) endif() else() if(WITH_GPU) - set(ONNXRUNTIME_FILENAME "onnxruntime-linux-x64-gpu-${ONNXRUNTIME_VERSION}.tgz") + if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "aarch64") + message("Cannot compile with onnxruntime-gpu while in linux-aarch64 platform, fallback to onnxruntime-cpu") + set(ONNXRUNTIME_FILENAME "onnxruntime-linux-aarch64-${ONNXRUNTIME_VERSION}.tgz") + else() + set(ONNXRUNTIME_FILENAME "onnxruntime-linux-x64-gpu-${ONNXRUNTIME_VERSION}.tgz") + endif() else() - set(ONNXRUNTIME_FILENAME "onnxruntime-linux-x64-${ONNXRUNTIME_VERSION}.tgz") + if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "aarch64") + set(ONNXRUNTIME_FILENAME "onnxruntime-linux-aarch64-${ONNXRUNTIME_VERSION}.tgz") + else() + set(ONNXRUNTIME_FILENAME "onnxruntime-linux-x64-${ONNXRUNTIME_VERSION}.tgz") + endif() endif() endif() set(ONNXRUNTIME_URL "${ONNXRUNTIME_URL_PREFIX}${ONNXRUNTIME_FILENAME}") diff --git a/external/opencv.cmake b/external/opencv.cmake index 8ce8c56cc..6762e0640 100644 --- a/external/opencv.cmake +++ b/external/opencv.cmake @@ -41,8 +41,15 @@ elseif(APPLE) set(OPENCV_URL "https://bj.bcebos.com/paddle2onnx/libs/opencv-osx-x86_64-3.4.16.tgz") endif() else() - set(OPENCV_URL "https://bj.bcebos.com/paddle2onnx/libs/opencv-linux-x64-3.4.16.tgz") + if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "aarch64") + set(OPENCV_URL "https://bj.bcebos.com/paddle2onnx/libs/opencv-linux-aarch64-3.4.14.tgz") + else() + set(OPENCV_URL "https://bj.bcebos.com/paddle2onnx/libs/opencv-linux-x64-3.4.16.tgz") + endif() if(ENABLE_OPENCV_CUDA) + if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "aarch64") + message(FATAL_ERROR "Cannot set ENABLE_OPENCV_CUDA=ON while in linux-aarch64 platform.") + endif() set(OPENCV_URL "https://bj.bcebos.com/paddle2onnx/libs/opencv-linux-x64-gpu-3.4.16.tgz") endif() endif() @@ -60,6 +67,9 @@ elseif(APPLE) set(OPENCV_IMGCODESC_LIB ${OPENCV_INSTALL_DIR}/lib/libopencv_imgcodecs.dylib) else() set(OPENCV_SOURCE_LIB ${OPENCV_SOURCE_DIR}/lib64) + if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "aarch64") + set(OPENCV_SOURCE_LIB ${OPENCV_SOURCE_DIR}/lib) + endif() set(OPENCV_CORE_LIB ${OPENCV_INSTALL_DIR}/lib/libopencv_core.so) set(OPENCV_HIGHGUI_LIB ${OPENCV_INSTALL_DIR}/lib/libopencv_highgui.so) set(OPENCV_IMGPROC_LIB ${OPENCV_INSTALL_DIR}/lib/libopencv_imgproc.so) diff --git a/external/paddle2onnx.cmake b/external/paddle2onnx.cmake index b9847830a..0274c319a 100644 --- a/external/paddle2onnx.cmake +++ b/external/paddle2onnx.cmake @@ -23,7 +23,7 @@ set(PADDLE2ONNX_INC_DIR CACHE PATH "paddle2onnx include directory." FORCE) set(PADDLE2ONNX_LIB_DIR "${PADDLE2ONNX_INSTALL_DIR}/lib/" - CACHE PATH "onnxruntime lib directory." FORCE) + CACHE PATH "paddle2onnx lib directory." FORCE) set(CMAKE_BUILD_RPATH "${CMAKE_BUILD_RPATH}" "${PADDLE2ONNX_LIB_DIR}") @@ -53,7 +53,11 @@ elseif(APPLE) set(PADDLE2ONNX_FILE "paddle2onnx-osx-x86_64-${PADDLE2ONNX_VERSION}.tgz") endif() else() - set(PADDLE2ONNX_FILE "paddle2onnx-linux-x64-${PADDLE2ONNX_VERSION}.tgz") + if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "aarch64") + set(PADDLE2ONNX_FILE "paddle2onnx-linux-aarch64-${PADDLE2ONNX_VERSION}.tgz") + else() + set(PADDLE2ONNX_FILE "paddle2onnx-linux-x64-${PADDLE2ONNX_VERSION}.tgz") + endif() endif() set(PADDLE2ONNX_URL "${PADDLE2ONNX_URL_BASE}${PADDLE2ONNX_FILE}")