提交 33b27be8 编写于 作者: M Megvii Engine Team

fix(mgb/build): fix trt8 build error

GitOrigin-RevId: 14acc064e0956cd3d18e50ced2f662455986792c
上级 bccda5c4
...@@ -814,8 +814,7 @@ if(MGE_WITH_CUDA) ...@@ -814,8 +814,7 @@ if(MGE_WITH_CUDA)
list(APPEND MGE_CUDA_LIBS ${TRT_LIBRARY} ${TRT_PLUGIN_LIBRARY}) list(APPEND MGE_CUDA_LIBS ${TRT_LIBRARY} ${TRT_PLUGIN_LIBRARY})
else() else()
if(TensorRT_VERSION_MAJOR GREATER_EQUAL 8) if(TensorRT_VERSION_MAJOR GREATER_EQUAL 8)
list(APPEND MGE_CUDA_LIBS -Wl,--whole-archive libnvinfer.so list(APPEND MGE_CUDA_LIBS libnvinfer libnvinfer_plugin)
libnvinfer_plugin.so -Wl,--no-whole-archive)
else() else()
list(APPEND MGE_CUDA_LIBS -Wl,--whole-archive libnvinfer libnvinfer_plugin list(APPEND MGE_CUDA_LIBS -Wl,--whole-archive libnvinfer libnvinfer_plugin
-Wl,--no-whole-archive) -Wl,--no-whole-archive)
......
...@@ -36,7 +36,6 @@ else() ...@@ -36,7 +36,6 @@ else()
PATH_SUFFIXES lib lib64 PATH_SUFFIXES lib lib64
DOC "TRT plugin library.") DOC "TRT plugin library.")
endif() endif()
message(STATUS "TRT_LIBRARY: ${TRT_LIBRARY}")
if(TRT_LIBRARY STREQUAL "TRT_LIBRARY-NOTFOUND") if(TRT_LIBRARY STREQUAL "TRT_LIBRARY-NOTFOUND")
message( message(
FATAL_ERROR FATAL_ERROR
...@@ -102,7 +101,42 @@ string(REGEX REPLACE "^#define NV_TENSORRT_PATCH ([0-9]+).*$" "\\1" ...@@ -102,7 +101,42 @@ string(REGEX REPLACE "^#define NV_TENSORRT_PATCH ([0-9]+).*$" "\\1"
set(TRT_VERSION_STRING set(TRT_VERSION_STRING
"${TensorRT_VERSION_MAJOR}.${TensorRT_VERSION_MINOR}.${TensorRT_VERSION_PATCH}") "${TensorRT_VERSION_MAJOR}.${TensorRT_VERSION_MINOR}.${TensorRT_VERSION_PATCH}")
if(MGE_CUDA_USE_STATIC) if(TensorRT_VERSION_MAJOR GREATER_EQUAL 8 AND NOT (MSVC OR WIN32))
set(TRT_LIBRARY "TRT_LIBRARY-NOTFOUND")
set(TRT_PLUGIN_LIBRARY "TRT_PLUGIN_LIBRARY-NOTFOUND")
find_library(
TRT_LIBRARY
NAMES libnvinfer.so nvinfer
PATHS ${ALTER_LD_LIBRARY_PATHS} ${TRT_ROOT_DIR} ${CMAKE_INSTALL_PREFIX}
HINTS ${ALTER_LIBRARY_PATHS}
PATH_SUFFIXES lib lib64
DOC "TRT library.")
find_library(
TRT_PLUGIN_LIBRARY
NAMES libnvinfer_plugin.so nvinfer_plugin
PATHS ${ALTER_LD_LIBRARY_PATHS} ${TRT_ROOT_DIR} ${CMAKE_INSTALL_PREFIX}
HINTS ${ALTER_LIBRARY_PATHS}
PATH_SUFFIXES lib lib64
DOC "TRT plugin library.")
message(STATUS "TensorRT8 has been changed to dynamic linking")
if(TRT_LIBRARY STREQUAL "TRT_LIBRARY-NOTFOUND")
message(
FATAL_ERROR
"Can not find TensorRT Library, please refer to scripts/cmake-build/BUILD_README.md to init TRT env"
)
endif()
if(TRT_PLUGIN_LIBRARY STREQUAL "TRT_PLUGIN_LIBRARY-NOTFOUND")
message(
FATAL_ERROR
"Can not find TensorRT Plugin Library, please refer to scripts/cmake-build/BUILD_README.md to init TRT env"
)
endif()
endif()
message(STATUS "TRT_LIBRARY: ${TRT_LIBRARY}")
if(MGE_CUDA_USE_STATIC AND NOT (TensorRT_VERSION_MAJOR GREATER_EQUAL 8
AND NOT (MSVC OR WIN32)))
add_library(libnvinfer STATIC IMPORTED) add_library(libnvinfer STATIC IMPORTED)
add_library(libnvinfer_plugin STATIC IMPORTED) add_library(libnvinfer_plugin STATIC IMPORTED)
else() else()
......
...@@ -235,8 +235,6 @@ function prepare_env_for_windows_build() { ...@@ -235,8 +235,6 @@ function prepare_env_for_windows_build() {
export CUDA_BIN_PATH=$CUDA_PATH export CUDA_BIN_PATH=$CUDA_PATH
export PC_CUDNN_INCLUDE_DIRS=$NIVIDA_INSTALL_PRE/${CUDNN_V}/cuda/include export PC_CUDNN_INCLUDE_DIRS=$NIVIDA_INSTALL_PRE/${CUDNN_V}/cuda/include
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$NIVIDA_INSTALL_PRE/${TRT_V}/lib:$NIVIDA_INSTALL_PRE/CUDA/${CUDA_V}/lib/x64:$NIVIDA_INSTALL_PRE/${CUDNN_V}/cuda/lib/x64 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$NIVIDA_INSTALL_PRE/${TRT_V}/lib:$NIVIDA_INSTALL_PRE/CUDA/${CUDA_V}/lib/x64:$NIVIDA_INSTALL_PRE/${CUDNN_V}/cuda/lib/x64
export CPATH=$CPATH:$NIVIDA_INSTALL_PRE/${TRT_V}/include:$NIVIDA_INSTALL_PRE/CUDA/${CUDA_V}/include:$NIVIDA_INSTALL_PRE/CUDA/${CUDA_V}/include/nvtx3:$PC_CUDNN_INCLUDE_DIRS
export LIBRARY_PATH=$LIBRARY_PATH:$LD_LIBRARY_PATH
export INCLUDE=$INCLUDE:$CPATH export INCLUDE=$INCLUDE:$CPATH
export CUDNN_ROOT_DIR=${NIVIDA_INSTALL_PRE}/${CUDNN_V}/cuda export CUDNN_ROOT_DIR=${NIVIDA_INSTALL_PRE}/${CUDNN_V}/cuda
export TRT_ROOT_DIR=${NIVIDA_INSTALL_PRE}/${TRT_V} export TRT_ROOT_DIR=${NIVIDA_INSTALL_PRE}/${TRT_V}
......
...@@ -2,9 +2,7 @@ FROM quay.io/pypa/manylinux2014_x86_64:2020-12-31-56195b3 ...@@ -2,9 +2,7 @@ FROM quay.io/pypa/manylinux2014_x86_64:2020-12-31-56195b3
ENV UID=1024 \ ENV UID=1024 \
PATH=${PATH}:/usr/local/cuda/bin \ PATH=${PATH}:/usr/local/cuda/bin \
LIBRARY_PATH=${LIBRARY_PATH}:/usr/local/cuda/lib64:/usr/local/cuda/lib64/stubs:/opt/cudnn/lib64:/opt/tensorrt/lib \ LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/cuda/lib64:/usr/local/cuda/lib64/stubs:/opt/cudnn/lib64:/opt/tensorrt/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/cuda/lib64:/usr/local/cuda/lib64/stubs:/opt/cudnn/lib64:/opt/tensorrt/lib \
CPATH=${CPATH}:/usr/local/cuda/include:/opt/cudnn/include:/opt/tensorrt/include
ARG platform ARG platform
COPY setup_mirror.sh . COPY setup_mirror.sh .
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册