Registered Member
|
Moinsens!
Ich versuch mich gerade mal, etwas in C (bzw. auch C++) einzuarbeiten und möchte das dann auch gerne direkt auf der Linux-Kiste (Debian 11.3 per xrdp auf mein Windows 10) mit einer vernünftigen IDE machen. Erste Gehversuche mit kleineren Progrämmchen und dem gcc direkt auf der CLI habe ich hinbekommen. (Eigentlich komme ich eher aus der VBA, VB.net und C# Welt mit MS-Office bzw. Visual-Studio.) Was ich habe: Eine neue Session "test", darin ein neues Projekt "test_cmake_c" --> kommt aus "Project - New from Template... - Standard , Terminal, CMake C" --> erstellt main.c Build:
Execute:
Ein neuer Launcher ist "New Compiled Binary Launcher" unter ebendiesem test_cmake_c und steht auf
Und das Projekt-Verzeichnis sieht so aus:
Ich kann auch direkt in das "build"-Verzeichnis gehen und:
So weit, so gut... Scheint zu funktionieren. Jetzt geht's einen Schritt weiter. Ich schaue mir gerade das OpenBook von Rheinwerk an: https://openbook.rheinwerk-verlag.de/linux_unix_programmierung/index.htm, dort speziell Kapitel 14, ev. 15 und 16. Aber fangen wir klein an: Kapitel 14.4.6 hallo_x.c Was ich habe: Eine neue Session "Rheinwerk OpenBook", darin ein neues Projekt "hallo_x" --> kommt aus "Project - New from Template... - Standard , Terminal, CMake C" als "hallo_x" unter "/home/miriki/projects/kdevelop/rheinwerk_openbook/" --> das bereits ausprobierte hallo_x.c aus einem anderen Verzeichnis habe ich dann als main.c in das Projekt einkopiert. Hier würde jetzt, entsprechend Rheinwerk, gehen:
Das funktioniert, weil my_delay.h auch in das Projekt-Verzeichnis kopiert ist. Nicht Sinn der Sache, da diese .h natürlich auch von anderen Projekten genutzt werden soll. Ich würde also viel lieber benutzen:
Aber wie sage ich dem Projekt in kdevelop jetzt, dass dieser Include-Pfad existiert und benutzt werden soll? Im Visual-Studio wären das relativ simpel die "Referenzen", direkt im Menü erreich- und einstellbar. Und ein weiteres Projekt aus Kapitel 16.4.1 sdl1.c: Im Gegensatz zu dort geht es mit
(In- und Output musste weiter nach vorne in der Aufrufzeile.)
Und wie bringe ich dem Build das bei? Ohne das gibt's nämlich bei Build nur
und diverse andere Fehler. Und nun bräuchte ich mal eure Hilfe, bevor ich durch weiteres Herumprobieren hier mehr kaputt als heil mache. Gruss, Michael |
Registered Member
|
Naja, ein bisschen habe ich dann doch noch herumprobiert... Zuerst, hatte ich vergessen: kdevelop 5.6.2 Ich hab jetzt 2 Sachen gemacht: a) Links in der Liste der "Projects" das File CMakeLists.txt um eine Zeile erweitert:
b) Das Projekt "hallo_x" mit linker Maustaste aktiviert und dann im Menü Project - Open Configuration... - Language Support - Includes/Imports den Pfad /home/miriki/projects/kdevelop/rheinwerk_openbook/include hinzugefügt. Nun bekam ich mit rechter Maustaste auf dem Projekt und "Build" dann:
Auch das Projekt sdl1 ähnlich:
(obwohl ich die my_delay.h hier gar nicht brauche, fällt mir gerade auf. Naja...) ergibt dann:
Kann mir jemand bestätigen, dass das der richtige Weg ist? Jetzt hab ich noch das Problem, dass "Run" ins Leere läuft. Das "Project target: hallo_x/hallo_x" ist nicht das richtige Target. Das Executable wird nämlich als hallo_x/build/hallo_x erzeugt, also nicht im Projekt- sondern im Build-Unterverzeichnis. Woran kann / muss ich da jetzt noch drehen? Gruss, Michael |
Registered Member
|
Ok, nächstes Teilergebnis: Ich hab die Launches von "Target" auf "Executable" umgestellt. Ich weiss nur nicht so recht, ob das letztendlich wirklich besser ist. Aber die Executables werden jetzt korrekt gestartet. (Wenn man daran denkt, das Run-Target im Menü "Run - Current Launch Configuration" jeweils umzustellen...) Gruss, Michael |
Registered users: Bing [Bot], Google [Bot], kesang, Yahoo [Bot]