ตกลงดังนั้นปรากฎว่าฉันไม่จำเป็นต้องใช้ไดรเวอร์นักพัฒนาเพื่อรวบรวม OpenCV หลังจากทั้งหมด!
ฉันทำแหล่งข้อมูลซอฟต์แวร์ของฉันสับสนจนฉันไม่ได้อัปเดต ppa:ubuntu-x-swat/x-updates
อีกต่อไป เมื่อฉันแก้ไขว่าฉันสามารถอัปเดตไดรเวอร์ NVIDIA เป็น 304.43
จาก 295.49
. ฉันคิดว่าอาจเป็นปัจจัยสำคัญในการรวบรวม OpenCV แม้ว่าฉันจะต้องแก้ไข makefile เดียวเพื่อให้ทำงานได้
หากใครสนใจที่จะทำแบบเดียวกันฉันก็ทำตามคำแนะนำ ที่นี่ . ในการถอดความ:
sudo apt-get install
การพึ่งพาโมดูลต่อไปนี้หากคุณยังไม่มี:
libopencv-dev build-essential checkinstall cmake pkg-config libtiff4-dev libjpeg-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev python-dev python-numpy libtbb-dev libqt4-dev libgtk2.0-dev libv4l-dev
ดาวน์โหลด OpenCV ล่าสุดจาก ที่นี่ จากนั้น:
tar -xvf OpenCV-<version#>.tar.bz2
cd OpenCV-<version#>/
mkdir build
cd build
วิ่ง cmake
เพื่อกำหนดค่าไฟล์บิลด์ คุณจะต้องผ่าน cmake
ชุดตัวเลือกเพื่อระบุว่าคุณต้องการให้ OpenCV สร้างขึ้นอย่างไร ตัวเลือกที่แน่นอนจะขึ้นอยู่กับระบบของคุณคุณสามารถทราบว่ามีตัวเลือกใดบ้างโดยดูที่ ../CMakeLists.txt
. คำสั่งที่แน่นอนที่ฉันใช้คือ:
cmake -D WITH_QT=ON -D WITH_XINE=ON -D WITH_OPENGL=ON -D WITH_TBB=ON -D BUILD_EXAMPLES=ON BUILD_TESTS=ON ENABLE_SSE3=ON ENABLE_SSE4.1=ON ENABLE_SSE4.2=ON WITH_CUDA=ON ..
ฉันมีปัญหาในการทำให้คอมไพล์ด้วยการรองรับรันไทม์ของ CUDA ( WITH_CUDA=ON
) ดังนั้นคำถามเดิมเกี่ยวกับไดรเวอร์
cmake
จะสร้างไฟล์ชื่อ CMakeCache.txt
. ฉันพบว่าฉันต้องแก้ไขไฟล์นี้ตามที่อธิบายไว้ ที่นี่ เพื่อหลีกเลี่ยงข้อผิดพลาดในการเชื่อมโยง libcuda.so
.
ค้นหาบรรทัดที่เริ่มต้น:
CUDA_CUDA_LIBRARY:FILEPATH=
และผนวกเส้นทางไปยัง libcuda.so
ในกรณีของฉัน:
CUDA_CUDA_LIBRARY:FILEPATH=/usr/lib/nvidia-current/libcuda.so
ตอนนี้คุณควรจะสามารถเรียกใช้ make
เพื่อคอมไพล์ (ใช้เวลาสักครู่ ... ) จากนั้น sudo make install
ติดตั้ง
ฉันหวังว่าบางคนจะพบว่ามีประโยชน์นี้