g++ und "#include "~/file"

Hi
Folgende Situation:
Code:
/home/redeagle/prog/header.hpp
/home/redeagle/prog/ordner/source.cpp

jetzt würde ich in "source.cpp" gerne den header "header.hpp" einbinden.

Bisher habe ich es wie folgt gelöst:
Code:
#include "/home/redeagle/prog/header.hpp"
Ist natürlich scheiße so.
Und es kahm, wies kommen musste, das tool soll aus dem verzeichniss eines anderen users kompiliert werden.

Das Problem:
Code:
#include "~/prog/header.hpp"
Wenn ich anstelle von "/home/username/" "~/" einsetze, wird der header nicht mehr gefunden.


Und so wird kompiliert:
Code:
# [...]

cd ~/prog/ordner/
rm -f /tmp/compilererror.tmp

CPPFILES=`find ./ -type f -name "*.cpp"`

for i in $CPPFILES ;
do

   g++ -m32 -c -Os -nostdlib -fno-builtin -fno-rtti -fno-exceptions -o "${i%.*}.obj" $i 2>> /tmp/compilererror.tmp

done

# [...]
 
Ja, das ginge...
Allerdings gehen die Verzeichnisse tiefer als ich es im beispiel angegeben habe.

und sonetwas sieht auchn icht schöne aus:
Code:
#include "../../../../header.hpp"
#include "../../header2.hpp"
#include "../../../header3.hpp"

Kann ich den Kompiler nicht einen fixpunkt mitgeben, von wo aus er die Pfade zwischen "" interpretieren soll??

gehe gerade "man g++" durch aber bis zeile 4000 war bisher noch nicht brauchbares dabei :(
 
Zurück
Oben