2010-06-26 52 views
8

Tôi đã cài đặt ubuntu 10. Tôi đã cài đặt tất cả các gói opencv mà tôi có thể tìm thấy trong trung tâm phần mềm. Tôi hy vọng rằng nó cài đặt một số tập tin .lib một nơi nào đó mà tôi có thể tham khảo trong dự án của tôi, nhưng tôi không thể tìm thấy chúng. Nó đặt chúng ở đâu?Nơi nào opencv cài đặt libs của nó trong ubuntu

Tôi muốn sử dụng nhật thực làm lập trình ide trong c + +, nhưng tôi gặp sự cố khi tìm hiểu cách thiết lập ban đầu. Tôi mới để lập trình trong nhật thực và ubuntu nói chung vì vậy nếu có ai có một hướng dẫn từng bước tôi rất thích nhìn thấy nó.

+0

Hmm .. lần cuối tôi kiểm tra "10" không phải là phiên bản giao hàng của Ubuntu ... –

+0

Nếu nó giúp làm rõ câu hỏi, tôi thực sự đã cài đặt Ubuntu 10.04. –

+0

tôi cũng bị kẹt ở cùng một vấn đề trên ubuntu 1104. tôi đã giữ an toàn của mình tại http://ikharn.blogspot.com/2011_09_01_archive.html – Netro

Trả lời

13

Bạn có thể tìm thấy các cờ liên kết thích hợp sử dụng pkg-config --libs opencv và thích hợp bao gồm sử dụng pkg-config --cflags opencv.

Thư viện thực tế phải được cài đặt trong/usr/lib và có tên như libhighgui.a hoặc libhighgui.so, nhưng bạn có thể sẽ không phải tham chiếu trực tiếp những thư viện đó. Chỉ cần sử dụng đầu ra của các lệnh trên ở đúng chỗ trong Eclipse để thiết lập các cờ liên kết và bao gồm các thư mục. Nếu bạn thực sự muốn biết libs nào là OpenCV liên quan, đầu ra của pkg-config --libs opencv sẽ cung cấp cho bạn tên. Ví dụ: một trong các đầu ra của lệnh đó là -lhighgui, vì vậy chúng tôi biết có một tệp có tên là libhighgui.so trong/usr/lib.

Tôi đã không sử dụng Eclipse trong một thời gian cho C hoặc C++, vì vậy tôi không thể nhớ các tùy chọn đó ở đâu, nhưng chúng ở đâu đó.

+0

ok, điều đó giải thích tại sao tôi không thể tìm thấy chúng. Tôi đã mong đợi để tìm tập tin .lib thực tế tức là một tập tin như opencv.lib. Các tệp lib * .so trong ubuntu có giống như các tệp .lib trong các cửa sổ không? –

+0

@ Buzz Chuông: Tôi không phải 100% chính xác tệp .lib là gì trên Windows, vì vậy không thể thực sự trả lời được. Tuy nhiên, trong Linux, một lib * .so tương ứng với một thư viện được chia sẻ trong khi lib * .a tương ứng với một thư viện tĩnh. Hy vọng rằng sẽ giúp. –

+0

Không tìm thấy gói opencv trong đường dẫn tìm kiếm pkg-config. Có lẽ bạn nên thêm thư mục chứa 'opencv.pc' vào biến môi trường PKG_CONFIG_PATH Không tìm thấy gói 'opencv' – waspinator

1

dpkg -L opencv sẽ cung cấp cho bạn danh sách tất cả các tệp được cài đặt từ gói opencv. Tuy nhiên, hãy cảnh báo rằng nó sẽ không hiển thị các tệp không có trong gói nhưng được tạo khi gói được cài đặt. Không quen thuộc với opencv, tôi không biết liệu đây có phải là vấn đề cho bạn hay không.

4

Như đã trình bày bởi Eric

pkg-config --libs opencv 

sẽ trở lại libs để được bao gồm và nếu nó là về bao gồm đường dẫn tập tin

nó là /usr/include/opencv và nếu bạn muốn nó được tự động thêm vào chỉ cần thêm sau đây để lệnh cùng với lệnh của Eric --cflags đến lệnh trên.

Ví dụ: để tập tin được biên dịch là test.c thì toàn bộ lệnh sẽ là

g++ test.c `pkg-config --libs --cflags opencv` 

hy vọng điều đó sẽ hữu ích.

+1

Đây là câu trả lời hợp lý. Để thêm vào điều này, tôi sẽ đề nghị sử dụng 'g ++' thay cho' gcc'. Điều này sẽ tự động liên kết với stdC++, trong trường hợp lỗi liên kết được ném vào thời gian biên dịch. –

+0

Xin chào, tôi đã sử dụng hướng dẫn chính thức của opencv.org nhưng không thể hoàn tất cài đặt. Tôi đã làm những gì được nói [ở đây] (http://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation) nhưng khi tôi cố gắng thêm đường dẫn, tôi chỉ có thể ' t tìm thấy nó. Không có gì trong thư mục chứa của ubuntu của tôi 14.04.1 Bạn có thể giúp tôi không? – Rasool

2

Thư viện OpenCV được cài đặt ở định dạng .a (thư viện tĩnh) hoặc định dạng .so (thư viện động).

Bạn có thể tìm thấy thư viện OpenCV2 (tức là phiên bản C++) (ví dụ: libopencv_core.so, libopencv_highgui.so v.v.) tại /usr/local/lib. Nếu bạn chỉ muốn thư viện cho phiên bản c (ví dụ: libcv.a, libcxcore.a v.v.), bạn có thể tìm thấy chúng tại /usr/lib.

Các vấn đề liên quan