KDevelop C++ mit opencv

C

CuRaToR

Doppel-As
Hi
ich hoffe ich bin hier richtig:
ich nutzte kürzlich Kdevelop c++ und muss jetzt mit opencv arbeiten.
ich habe opencv auch gedonloaded und kompliliert und installiert

es sind die header auch in /usr/local/include/opencv erschienen.

Wenn ich aber in Kdevelop #include "cv.h" eintrage, kriege ich die Fehlermeldung, dass er die Datei nicht findet.

Muss ich den Ordner noch irgendwo eintragen?

Danke im vorraus
 
Zuletzt bearbeitet:
Du musst auch

Code:
#include <opencv/cv.h>

nutzen. Die Header-Dateien liegen ja nicht direkt im include-Verzeichnis, sondern in einem Unterordner.
 
Des Rätsels Lösung war so einfach!

Danke schön.
 
Hallo,
ich bin linux neuling und würde gern wissen welche version man von opencv zur installation am besten hernimmt und wie man diese installiert.

die installation der neuesten version 1.0 von sourceforge haut bei mir nicht hin.
wenn ich make ausführen will,kommt immer ein fehler das keine vorschrift zur installation vorhanden ist,quasi die datei make fehlt.

ich hoffe ihr könnt mir weiterhelfen :))

mfg
 
hey,
habs gemacht und gesehen das mir ein c++ compiler abging...dachte der wär in ubuntu edgy standardmäßig dabei.
naja,auf jedenfall konnt ichs jetzt installieren.
vielen dank für die hilfe
 
hallo,
leider hab ich noch ein problem mit opencv
trotz #include <opencv/cv.h> "findet" er in eclipse nicht diese datei,obwohl sie in dem pfad:/usr/local/include/opencv vorhanden sind
es kommt die fehlermeldung:
undefined reference to `cvCreateCameraCapture'
der gleiche code funktioniert aber in eclipse unter windows.
muss man in eclipse/linux sonst irgendwo noch was includen?
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

p.s.
wenn ich in eclipse/linux unter den projekteigenschaften die libraries include, kommt folgender fehler:
ld: cannot find -lcv.h
 
Zuletzt bearbeitet von einem Moderator:
Bitte poste die genaue Fehlermeldung.
Code:
ld: cannot find -lcv.h
Du versuchst hier gegen eine Header zu linken, was natürlich nicht geht.
 
Kann mir jemand zu dem Thema helfen?
Wie kann ich in der Konsole meine *.cpp-Datei compilieren ?(Ich hab nenn Compiler (Keine Sorge)) Ich hab das schon so lang nicht mehr gemacht!!!
 
unter project->properties->c/c++-Build->tool settings->directories habe ich folgendes angegeben:
/usr/local/include/opencv
und project->properties->c/c++-Build->tool settings->libraries:
search path: /usr/local/include/opencv
libraries:cv.h
mit diesem include kommt folgende fehlermeldung:
Severity and Description Path Resource Location Creation Time Id
ld: cannot find -lcv.h Camstream line 0 1167390949191 81



wenn ich aber das alles nicht angebe und nur #include <opencv/cv.h> mache, kommt z.B. folgender fehler:
Severity and Description Path Resource Location Creation Time Id
undefined reference to `cvCreateCameraCapture' Camstream stream.cpp line 8 1167402589348 103


hoffe die fehlermeldung sagt dir was und du kannst mir weiterhelfen :)



http://www.cs.iit.edu/~agam/cs512/lect-notes/opencv-intro/opencv-intro.html#SECTION00023000000000000000
hier habe ich folgendes gefunden:
Compilation instructions

* Linux:

g++ hello-world.cpp -o hello-world \
-I /usr/local/include/opencv -L /usr/local/lib \
-lm -lcv -lhighgui -lcvaux


so kompiliert er es auch, aber das ind konsole einzutippen ist doch ziemlich umständlich....bzw wenn ich meinen code in eclipse in eine methode verpacke würde ich es doch gern bevorzugen,dass keine fehler auftauchen und ich es über eclipse compilieren und laufen lassen kann
 
Zuletzt bearbeitet von einem Moderator:
und project->properties->c/c++-Build->tool settings->libraries:
search path: /usr/local/include/opencv
libraries:cv.h

Und hier liegt dein Fehler. cv.h ist nicht die Library, sondern die Header-Datei zur Library. Damit -lcv benutzt, musst du als Libraries auch 'cv' angeben und nicht 'cv.h'.
 
hab mittlerweile viel rumprobiert und .h auch weggelassen aber kam der gleiche fehler....
könntest du bitte nochmal angeben was man genau includen muss? also ob man unter den project-properties auch was angeben muss, oder langt #include ....
 
Du musst einfach bei den Compiler-Flags
Code:
-lm -lcv -lhighgui -lcvaux
mit angeben. Was ist daran so schwer?

Project->Project Options->Configure Options->C bzw. C++->Compiler Flags
 
vielen dank für die hilfe, jetzt compiliert er es aber führt es aufgrund folgenden fehlers ned aus:
/home/cmuck/workspace/Camstream/Debug/Camstream: error while loading shared libraries: libcv.so.1: cannot open shared object file: No such file or directory

das kommt in der console zur laufzeit
sagt dir das was?
libcv,libhighgui etc. ist installiert
 
Zuletzt bearbeitet von einem Moderator:
Was heisst "zur Laufzeit"? Kommt der Fehler nun beim Kompilieren oder beim Ausführen des Programms?
 
der fehler kommt beim ausführen des programms. er kompiliert es ohne fehler -> click auf run -> fehler
 
Dann ist der Ordner, wo die Libs liegen (nicht die Includes!) nicht im LD_LIBRARY_PATH oder der ld.so.conf würde ich vermuten, evtl. hast du aber nach der Installation der Libs auch einfach vergessen 'ldconfig' auszufuehren.
 

Ähnliche Themen

Bashscript aus Debian6 läuft nicht auf Debian7

Nginx: Virtuellen Unterordner im SCRIPT_FILENAME entfernen.

Ausführbare C-Datei von Mac OS auf Embedded Linux ausführen

g++ Shared Libraries

Samba4 Freigabe erstellen

Zurück
Oben