• linux c++ 开发 tensorrt 安装


    tensorrt 官方下载地址(需要注册账号登录):Log in | NVIDIA Developer

    根据系统发行版和CUDA版本 (nvcc -V) 选择合适的安装包

    EA(early access)版本代表抢先体验。
    GA(general availability)代表稳定版,经过全面测试。
    建议选用 TensorRT 最新版本的 GA release 

    为了不影响系统环境,只进行单个 C++ 项目的开发,这里选用 TAR Package,解压即用,无需安装。 

    tar -zxvf TensorRT-8.6.1.6.Linux.x86_64-gnu.cuda-11.8.tar.gz

    cmake 文件参考

    1. cmake_minimum_required(VERSION 3.1)
    2. set(CMAKE_CUDA_ARCHITECTURES 60 61 62 70 72 75 86)
    3. set(CMAKE_CUDA_COMPILER /usr/local/cuda/bin/nvcc)
    4. project(yolov8 LANGUAGES CXX CUDA)
    5. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -O3")
    6. set(CMAKE_CXX_STANDARD 14)
    7. set(CMAKE_BUILD_TYPE Release)
    8. option(CUDA_USE_STATIC_CUDA_RUNTIME OFF)
    9. # CUDA
    10. find_package(CUDA REQUIRED)
    11. message(STATUS "CUDA Libs: \n${CUDA_LIBRARIES}\n")
    12. get_filename_component(CUDA_LIB_DIR ${CUDA_LIBRARIES} DIRECTORY)
    13. message(STATUS "CUDA Headers: \n${CUDA_INCLUDE_DIRS}\n")
    14. # OpenCV
    15. set(OpenCV_DIR "/home/c++/lib/opencv-4.8.1/build")
    16. find_package(OpenCV REQUIRED)
    17. message(STATUS "OpenCV Libs: \n${OpenCV_LIBS}\n")
    18. message(STATUS "OpenCV Libraries: \n${OpenCV_LIBRARIES}\n")
    19. message(STATUS "OpenCV Headers: \n${OpenCV_INCLUDE_DIRS}\n")
    20. # TensorRT
    21. set(TensorRT_INCLUDE_DIRS "/home/c++/lib/TensorRT-8.6.1.6/include")
    22. set(TensorRT_LIBRARIES "/home/c++/lib/TensorRT-8.6.1.6/lib")
    23. set(TensorRT_LIB1 "/home/c++/lib/TensorRT-8.6.1.6/lib/libnvinfer.so")
    24. set(TensorRT_LIB2 "/home/c++/lib/TensorRT-8.6.1.6/lib/libnvinfer_plugin.so")
    25. message(STATUS "TensorRT Libs: \n${TensorRT_LIBRARIES}\n")
    26. message(STATUS "TensorRT Headers: \n${TensorRT_INCLUDE_DIRS}\n")
    27. list(APPEND INCLUDE_DIRS
    28. ${CUDA_INCLUDE_DIRS}
    29. ${OpenCV_INCLUDE_DIRS}
    30. ${TensorRT_INCLUDE_DIRS}
    31. include
    32. )
    33. list(APPEND ALL_LIBS
    34. ${CUDA_LIBRARIES}
    35. ${CUDA_LIB_DIR}
    36. ${OpenCV_LIBRARIES}
    37. ${TensorRT_LIBRARIES}
    38. )
    39. include_directories(${INCLUDE_DIRS})
    40. add_executable(${PROJECT_NAME}
    41. main.cpp
    42. include/yolov8.hpp
    43. include/common.hpp
    44. )
    45. link_directories(${ALL_LIBS})
    46. target_link_libraries(${PROJECT_NAME} PRIVATE ${CUDA_LIBRARIES} ${OpenCV_LIBS} ${TensorRT_LIB1} ${TensorRT_LIB2})

  • 相关阅读:
    Python3 异步编程简介
    [附源码]Python计算机毕业设计Django景区直通车服务系统
    接口测试3-接口依赖之token提取
    vba 获取PPT幻灯片中的所有标题的代码
    100天精通Python(可视化篇)——第98天:Pyecharts绘制多种炫酷日历图参数说明+代码实战
    涂鸦云平台设备授权介绍
    createSocketTask:fail wcwss url not in domain list 小程序网络异常
    get_trade_detail_data函数使用
    C++11智能指针shared_ptr应用于继承结构
    贝叶斯网络预测相关问题
  • 原文地址:https://blog.csdn.net/sinat_40471574/article/details/136306439