WinARM bzw. Make und korrekte Pfadangabe

Gast #239224
Lesenswert?

Hi,

Ich bin ein Newbie bei WinARM und habe jetzt ein Weilchen damit
gekämpft eines der examples zu kompilieren. Ich war der Meinung, dass
alle Pfade korrekt gesetzt sind, denn bei Aufruf von "make --version"
bzw. "arm-elf-gcc --version" in der Kommandozeile bekam ich immer eine
korrekte Rückmeldung. Bei Aufruf von "make all" bekam ich aber immer
folgende Fehlermelung:

-------- begin --------
process_begin: CreateProcess((null), arm-elf-gcc --version, ...)
failed.
make (e=2): Das System kann die angegebene Datei nicht finden.
make: *** [gccversion] Error 2

Nachdem ich hier in Beiträgen schon die gleichen Probleme gefunden
hatte und es in diesen Fällen am Pfad lag, dieser bei mir aber zu
funktionieren schien, war Kopfkratzen angesagt.

Ich begann alles unnötige aus der PATH Angabe zu schmeißen und siehe
da, irgendwann funktionierte es.

Der Übeltäter im Pfad war: C:\Programme\Gemeinsame Dateien\Autodesk
Shared\;
Make schien über die Leerzeichen zu stolpern, denn wenn man diesen Teil
mit "" klammert funktioniert es wieder.

Frage: Ist das nun ein Problem einer nicht ganz Normenkonformen
Pfadangabe aufgrund der Leerzeichen, oder ein Problem der
implementierten Auswertung des Pfades?

Na jedenfalls kann es jetzt ans Programmieren gehen und vielleicht ist
mit diesem Post anderen in ähnlichen Situationen geholfen.
Persönliche Seite #239225
Lesenswert?

Wenn einzelne Pfade mit enthaltenen Leerzeichen verwendet werden, müssen
diese immer in Anführungszeichen eingeschlossen werden, ob die nun in
der Environmentvariable %PATH% angegeben werden oder wo auch immer.

Dabei müssen die Teilpfade in Anführungszeichen stehen, nicht der
gesamte "PATH"-Ausdruck, denn das Semikolon, das hier als
Trennzeichen verwendet wird, kann durchaus auch Bestandteil eines
Datei- bzw. Pfadnamens sein.
Auch Teilpfade, die ein Semikolon enthalten, müssen folglich in
Anführungszeichen angegeben werden.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren