PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : includes in kdevelop



kajoka
10-03-2005, 09:11
Hallo zusammen,

ich bin ein Newbie in der Linux-Programmierung und versuche mich gerade daran, ein Progrämmchen mit C++ und OpenInventor zum Laufen zu bekommen.
Beim Kompilieren bekomme ich die Fehlermeldung, dass die include-Datei "Xm/Xm.h" nicht gefunden werden kann.
Wo kann ich einstellen, welche Pfade als include genutzt werden können bzw. wie muss ich es definieren?
Wäre super, wenn ihr mir helfen könntet
Ciao
kajoka

Boron
10-03-2005, 09:23
Inkludierst du es mit #include "Xm/Xm.h" oder mit #include <Xm/Xm.h>?
Ich denke du brauchst den zweiten Fall. Dann schaut der Compiler in den Standard Include-Verzeichnissen nach und nicht im Projektverzeichnis.

Xm.h sollte sich in /usr/X11R6/include/Xm/ befinden.
Wenn nicht, dann sind vielleicht die X-Includes gar nicht installiert.

kajoka
10-03-2005, 09:38
Hallo Boron,

danke für die schnelle Antwort.
Das File, das die Include-Datei Xm.h benötigt, ist nicht von mir selbst geschrieben, sondern gehört zu der API OpenInventor. Die möchte ich daher nicht verändern. Dort wird es mit <> eingebunden.

Die X-Includes sind installiert, die Datei befindet sich an der entsprechenden Stelle.

OpenInventor befindet sich im Verzeichnis /usr/include/

Gibt es eine andere Möglichkeit, diesen Pfad einzubinden? Ich habe einen symbolischen Link gemacht, aber damit scheint es rekursiv zu werden.

Hope, you can help me again.

Ciao

kajoka

Boron
10-03-2005, 10:07
Lies mal das hier: http://www.rt.com/man/ldconfig.8.html

Vielleicht sucht der Compiler in /usr/X11R6/include gar keine Includes.

- In ld.so.conf das Verzeichnis ergänzen
- ldconfig als root ausführen
- Programm nochmal übersetzen

Evtl. kannst du auch im in den Projekteinstellungen in KDevelop das Verzeichnis /usr/X11R6/include zusätzlich angeben. Hab grad kein Linux, kann leider nicht nachschauen wo genau das wäre.

kajoka
10-03-2005, 10:42
Hallo Boron,

danke für erneute Hilfe. Ich werde es ausprobieren und werde mich dann noch mal melden.
Muss nun erst noch andere Sachen machen.
Ciao
kajoka

anda_skoa
10-03-2005, 12:35
- In ld.so.conf das Verzeichnis ergänzen
- ldconfig als root ausführen
- Programm nochmal übersetzen

Das hat was mit Linken zu tun, nicht mit Inkludieren von Header.
Hilft hier also leider nicht im Geringsten.

kajoka schau mal ob die Datei überhaupt wo auf deinem System vorhanden ist, nur um mal auszuschließen das noch etwas installiert werden muss.

Ciao,
_