OE5TPO - Netbeans Makefile auf Linux

NetBeans Makefile auf Linux nutzen

Achtung

Achtung, es gibt eine bessere Methode um ein passendes Makefile zu erstellen. Ich werde es demnächst in diesem Beitrag beschreiben.

Vor kurzem habe ich ein C++-Programm von meinem Windows-PC auf meinem Raspberry Pi compiliert. Der Quellcode wurde mit NetBeans geschrieben, welches auch ein sogenannte ein sogenanntes Makefile erstellt. Dieses war in meinem Fall fast kompatibel zu meinem Linux System, aber nur fast.

Fehlerbehebung in den Makefiles

Das Problem in meinem Fall war dass make mit "g++.exe" compilieren wollte, ich bei linux aber keine ".exe" Endungen habe :). Man könnte die ".exe" Endungen überall händlisch löschen, ich nutze dafür aber einfach ein kleines Shell-Skript welches auch die Ersetzungen automatisiert. Den Code für das Suchen und Ersetzen habe ich von hier.

#! /bin/sh

STRSEARCH=".exe"
STRREPLACE=""

find "." -type f -name '*.mk' -print | while read i
do
        cp "$i" "$i.tmp"
        
        if [ -f "$i.tmp" ]
        then
                sed "s/$STRSEARCH/$STRREPLACE/g" "$i" > "$i.new"
                if [ -f "$i.new" ]
                then
						echo "delete all \".exe\" in $i"
                        mv "$i.new" "$i"
                else
                        echo "$i.new doesn't exist"
                fi
        else
                echo "$i.tmp wasn't created"
        fi
		
		rm "$i.tmp"
done

make CONF=Debug build

Das ganze wird jetzt einfach dorthin kopiert wo das Makefile liegt (normalerweise im Wurzelpfad des Projektes). Ich hab die Datei make.sh genannt.

In meinem Fall wird das Projekt mit den Debug-Einstellungen compiliert. Wer das nicht haben möchte muss das entsprechend ändern.

Compilieren

./make.sh

Dieser Befehl würde in meinem Fall das Projekt compilieren und linken, falls keine Fehler existieren. Ob das auch mit den Makefiles einer anderen IDE funktioniert kann ich nicht sagen. Bei Netbeans funktioniert es jedenfalls. Die IDE wird jetzt zum compilieren normalerweise nicht mehr benötigt. So kann man auch auf dem Terminal das Projekt ohne Probleme Compilieren

 

Hat ihnen der Beitrag gefallen?, wenn ja teilen sie ihn

Kommentare

VerÖffentlichen Sie ihre Kommentare ...