環境搭建
- vscode c++環境部署 cmake
- 編譯器clang安裝
- libtorch安裝
- cudnn安裝
- opencv安裝及編譯
本文總結記錄了在將lightweight-openpose的pytorch網路模型部署到c++的程序以及遇到的一些問題,如有錯誤敬請指正
vscode c++環境部署 cmake
vscode中c++編譯程序主要參考如下教程
https://www.bilibili.com/video/BV1nA411T7VK?from=search&seid=1436175833878339385&spm_id_from=333.337.0.0
編譯器clang安裝
在ubuntu系統中可直接通過apt命令安裝(6.0.0)不過版本較老
安裝llvm
apt-get install llvm
2.安裝clang
apt-get install clang
3.檢查是否安裝成功(查看clang版本,有顯示即為成功)
clang -v
建議在git中下載較新的適合系統的Releases版本
https://github.com/llvm/llvm-project/tree/llvmorg-12.0.1
注意不要只看系統忽略處理器,我在誤裝powerpc64le版本后出現vscode無法識別編譯器情況
解壓后進入檔案路徑
將clang加入系統路徑
sudo cp -r * /usr/local
執行clang -v查看到版本即成功,
References :
https://www.cnblogs.com/willaty/p/8024313.html
https://fzy15116089232.blog.csdn.net/article/details/101211003
libtorch安裝
https://pytorch.org/選擇適合系統cuda的版本 以及c++11版本
將libtorch中編譯后的so庫檔案目錄寫入vscode cmakelists.txt

cudnn安裝
cudnn下載https://developer.nvidia.com/rdp/cudnn-archive
選擇適合本機cuda版本
同一版本安裝包型別較多,選擇合適的版本下載,建議選擇免安裝版(cuDNN Library for Linux)
解壓后進入到相應目錄,運行以下命令將cudnn庫檔案添加到系統路徑:
sudo cp cuda/include/cudnn.h /usr/local/cuda-10.2/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.2/lib64
由于新版本中cudnn的版本資訊包含在cudnn_version.h中,而不是cudnn.h中,需要把版本檔案一起添加,防止后續編譯時報錯
sudo cp cuda/include/cudnn_version.h /usr/local/cuda-10.2/include
sudo chmod a+r /usr/local/cuda-10.2/include/cudnn.h
sudo chmod a+r /usr/local/cuda-10.2/lib64/libcudnn*
同樣地,查詢cuDNN版本也要更改為cudnn_version.h
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
References :
https://zhuanlan.zhihu.com/p/72298520
https://zhuanlan.zhihu.com/p/370192639
opencv安裝及編譯
根據opencv官方提供的安裝指導,以4.5.3為例
https://docs.opencv.org/master/d7/d9f/tutorial_linux_install.html
依次執行如下命令:
# Install minimal prerequisites (Ubuntu 18.04 as reference)
sudo apt update && sudo apt install -y cmake g++ wget unzip
# Download and unpack sources
wget -O opencv.zip https://github.com/opencv/opencv/archive/master.zip
unzip opencv.zip
# Create build directory
mkdir -p build && cd build
# Configure
cmake ../opencv-master
# Build
cmake --build .
本專案中沒有用到opencv_contrib模塊,所以只安裝基礎opencv模塊即可,編譯完成不要忘記最后一步安裝
sudo make install
接下來把opencv編譯后的路徑添加到vscode中的Cmakelists.txt

References :
https://blog.csdn.net/weixin_43953829/article/details/96473891
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/297673.html
標籤:其他
