multirotor
The first day ——12.10
1.install vmware-workstation and ubuntu
- swap sources and 換輸入法
2.learn git
- github關(guān)聯(lián)遠(yuǎn)程倉庫
3.install and use Typora
Git
code | meaning |
---|---|
mkdir test | 創(chuàng)建目錄 |
cd test | 進入目錄 |
git init | 初始化倉庫 |
ls ;ls -ah | 查看目錄 |
touch test.c | 新建項目 |
add | 添加到緩存 |
commit -m “words” | 提交到庫 |
log | 提交歷史 |
status | 查看倉庫狀態(tài) |
checkout – file | 回到最近修改狀態(tài) |
rm ;rm -rf file | 刪除 |
reset+checkout | 恢復(fù)文件 |
checkout -b dev | 創(chuàng)建分支+切換 |
merge | 合并 |
branch -a | 查看分支 |
branch -D | 刪除分支 |
branch -m | 修改分支名 |
clone | 遠(yuǎn)程倉庫關(guān)聯(lián)到本地 |
push origin branch | 修改提交 |
The second day——12.11
1. install and learn g++
- question 1: unable to install g++(軟件包有未依賴的關(guān)系)
- solve :swap sources;
2. c++ printf “hello world”
- question 2 :unable to edit helloworld.cpp
- solve :learn vim ( --,-- ; gedit is better )
- question 3 :unable to compile and run
- solve :learn g++ about linking cpp files
- question 4 :push helloworld 文件夾到github 時 error: 源引用規(guī)格 helloworld 沒有匹配
- solve :創(chuàng)建本地倉庫和分支沒有add 文件
- question 5:本地上傳helloworld文件到遠(yuǎn)程github倉庫后,本地修改readme上傳git hub出現(xiàn)問題—> git pull 整合遠(yuǎn)程變更又出現(xiàn)問題—>偏離分支:當(dāng)本地的分支落后于遠(yuǎn)程分支時,本地分支又自行修改項目文件生成了新的提交
- solve : git config pull.rebase false # 合并 + git pull
G++
some command:
command | meaning |
---|---|
-o outputfile file.cpp | 編譯為可執(zhí)行文件 |
-c | 編譯為對象文件 |
-o outputfile file1.o file2.o | 鏈接對象文件 |
about .o files and .exe files:
對象文件和可執(zhí)行文件的主要區(qū)別在于鏈接的程度:對象文件包含了部分鏈接的代碼,而可執(zhí)行文件包含了完全鏈接的代碼。在一些大型項目中,源代碼可能被分割成多個文件,然后分別編譯成對象文件,最后再鏈接成一個可執(zhí)行文件。這樣的做法可以提高編譯的效率,因為當(dāng)某個源文件被修改時,只需要重新編譯那個文件,而不需要重新編譯整個項目。
g++ -o test1 hello.cpp helloworld.cpp
g++ -c hello.cpp
g++ -c helloworld.cpp
g++ -o test2 hello.o helloworld.o
g++ -o test3 hello.o helloworld.cpp
g++ -o test4 hello.cpp //wrong
vim
默認(rèn)命令模式
command | meaning |
---|---|
ESC | 命令模式 |
gg / G/ 5+G | 首行/末行/第五行 |
yy / p/ dd | 復(fù)制/粘貼/剪切 |
u / ctrl + r | 撤銷/取消撤銷 |
+i / +a | 編輯模式 |
:/ wq/ q! | 末行模式/保存退出/強制退出 |
The third day——12.12
1. install opencv
怎么會有裝起來這么麻煩的東西
- install cmake
- use gedit
- install pkg-config
- question 1 : 裝著裝著虛擬機就死機了?
- solve : 強制重啟,太智能了我直接執(zhí)行下一個操作居然幫我?guī)蜕蟼€死機沒完成的操作自動執(zhí)行
- question 2 : 檢驗時執(zhí)行 pkg-config opencv --modversion 報錯
- solve : 手動創(chuàng)建opencv.pc
cd /usr/local/lib
sudo mkdir pkgconfig && cd pkgconfig
sudo gedit opencv.pc
prefix=/usr/local
exec_prefix=${prefix}
includedir=/usr/local/include
libdir=/usr/local/lib
Name: OpenCV
Description: Open Source Computer Vision Library
Version: 4.4.0
Libs: -L${exec_prefix}/lib -lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dpm -lopencv_face -lopencv_photo -lopencv_freetype -lopencv_fuzzy -lopencv_hdf -lopencv_hfs -lopencv_img_hash -lopencv_line_descriptor -lopencv_optflow -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_dnn -lopencv_plot -lopencv_xfeatures2d -lopencv_shape -lopencv_video -lopencv_ml -lopencv_ximgproc -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_flann -lopencv_xobjdetect -lopencv_imgcodecs -lopencv_objdetect -lopencv_xphoto -lopencv_imgproc -lopencv_core
Libs.private: -ldl -lm -lpthread -lrt
Cflags: -I${includedir}
- question 3:編譯時出現(xiàn) fatal error :opencv2/opencv.hpp:沒有那個文件或目錄
- solve : 將/usr/local/include/opencv4/opencv2扔到/usr/local/include/下
- question 4 :上面的 solve 沒有 solve
- quesiton …
- sovle :卸載
- question 5 : 上面的 solve 沒有solve
2. learn to use opencv and code to invoke the webcam
3.Abaut the total install of Opencv
main error
- error 1 :檢測opencv版本報錯
- solve :手動創(chuàng)建opencv.pc
- error 2 : 編譯fatal error :opencv2/opencv.hpp:沒有那個文件或目錄
- solve :將opencv2文件夾鏈接到include文件夾下
sudo ln -s /usr/include/opencv4/opencv2 /usr/include/
- error 3 :上述代碼仍無法解決問題
- solve :代碼路徑不準(zhǔn)確
sudo ln -s /usr/local/include/opencv4/opencv2 /usr/local/include/
- error 4 : 編譯通過生成目標(biāo)文件,不能生成鏈接文件 報錯 no input files
- solve :g++用法錯誤
g++ -o webcam.o //wrong
g++ webcam.o -o webcam //wright
ps:百度搜不到解決方案,還得是gpt。
這個錯誤通常是因為你沒有在編譯命令中指定要編譯的源文件。例如,如果你想編譯一個名為hello.cpp的源文件,你應(yīng)該使用以下命令:
g++ hello.cpp -o hello
在這個命令中,hello.cpp是要編譯的源文件,-o選項指定了輸出文件的名稱,hello是輸出文件的名稱。如果你在命令中沒有指定要編譯的源文件,編譯器就會報“no input files”的錯誤。確保你在命令中指定了正確的源文件名,并且文件存在于當(dāng)前工作目錄中。文章來源:http://www.zghlxwxcb.cn/news/detail-828139.html
- error 5 :g++用法正確后報錯undefined reference to`cv::VideoCapture::VideoCapture(int, int)’
- solve :鏈接時沒有包含OpenCV庫文件。要解決這個問題,需要在編譯命令中包含OpenCV庫文件
g++ yourfile.cpp -o yourfile `pkg-config --cflags --libs opencv`
- error 6 :成功編譯成可執(zhí)行文件,但運行時報錯error while loading shared libraries: libopencv_highgui.so.3.4: cannot open shared object file: No such file or directory
- solve :有幾個庫找不到,用locate定位這幾個庫
sudo apt install mlocate
locate libopencv_highgui.so.3.4
找到后添加路徑文章來源地址http://www.zghlxwxcb.cn/news/detail-828139.html
cd /etc/ld.so.conf.d
sudo vim opencv.conf //加入路徑
sudo ldconfig
- error 7 : 想不起來還error什么了
The forth day——12.13
1.install anacanda
2.install virtul environment
3.install pytorch
到了這里,關(guān)于opencv一些報錯的解決方案的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!