Hallo allerseits,
also irgendwie will das mit der aktuellen msp430-gcc-toolchain nicht so
richtig funktionieren.
Ach so, ich arbeite unter Linux Mint 17.2 ...
Das Archiv habe ich von TI herunter geladen, nämlich dieses hier:
msp430-gcc-full-linux-installer-3.3.4.0.run
Dieses lässt sich auch prima ausführen und entpackt die Toolchain samt
aller Unterverzeichnisse an einen gewünschten Ort, defaultmäßig
nach /home/ti/msp430-gcc
So lässt sich aber damit nicht arbeiten, weil beispielsweise der
Compiler
- msp430-elf-gcc - nicht aus beliebigen Softwareverzeichnissen aufrufbar
ist.
In dem gesamten Paket ist absolut nichts über eine Installation zu
finden.
Ich könnte mir vorstellen, dass das nach TI/... entpackte Archiv von
dort aus zunächst noch "im System" installiert werden muss, kann dazu
aber absolut nirgends etwas finden.
Im Vergleich: Ich habe auch die AVR-GCC-Toolchain installiert. Und das
funktioniert, wie geschmiert !!! Aus allen meinen
Softwareverzeichnissen
kann ich im jeweiligen Projektverzeichnis die Konsole öffnen und das
Projekt mit make compilieren. Das geht supergut !
So hätte ich mir das auch mit dem msp430-gcc vorgestellt, kriege es aber
so nicht hin.
Ich will aber auf jeden Fall die aktuellste Version von TI installieren,
in
welcher der compiler neuerdings msp430-elf-gcc heißt sowie alle
anderen
Tools ebenfalls um "elf-" in ihrer Benennung umbezeichnet wurden.
Was kann ich noch tun ?
Gruß
Entweder /home/ti/...../bin zu deinem PATH hinzufügen.
Oder symbolische Links in ein Verzeichnis, das schon im PATH ist (z.B.
"bin" in deinem Home), anlegen:
Hallo,
sorry, funktioniert auch nicht.
Ich habe jetzt das Verzeichnis mit der Toolchain in
/home/meinlappi/gcc_msp430 stehen und die Environmentvariable
zu /bin und /include angepasst.
Der sucht eine Skriptdatei in einem Verzeichnis, wo sie nicht steht,
habe ich so das Gefühl. Hier ist die Fehlermeldung:
msp430-elf-gcc -mmcu=msp430f169 -Wl,-Map=build/main.map -o
build/main.elf
/home/joeder-ite/gcc_msp430/bin/../lib/gcc/msp430-elf/4.9.1/../../../../
msp430-elf/bin/ld: Verknüpfte Skriptdatei kann nicht geöffnet werden
msp430f169.ld: Datei oder Verzeichnis nicht gefunden
collect2: error: ld returned 1 exit status
make: *** [build/main.elf] Fehler 1
==> da wird doch in /msp430-elf/bin/ld nach dieser Skriptdatei gesucht.
Die steht dort aber nicht, sondern in /include oder nicht ?
Achim S. schrieb:> /home/joeder-ite/gcc_msp430/bin/../lib/gcc/msp430-elf/4.9.1/../../../../> msp430-elf/bin/ld:
Das (im Ergebnis "/home/joeder-ite/gcc_msp430/msp430-elf/bin/ld") ist
einfach nur der Pfad des Linkers selbst; andere Dateien werden woanders
gesucht.
> msp430f169.ld: Datei oder Verzeichnis nicht gefunden
Das ist ein Linker-Skript.
Wo unter /home/joeder-ite/gcc_msp430 liegt diese Datei?
hallo,
jau ...
die Datei ist im Verzeichnis include
Ausgabe Deines Befehls:
/home/joeder-ite/gcc_msp430/include/msp430f169.ld
und genau diesen Pfad habe ich in der environment-vari angepasst ...
echo $PATH bringt:
/usr/local/sbin:/home/joeder-ite/gcc_msp430/bin:/home/joeder-ite/gcc_msp
430/include:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr
/local/games
/home/joeder-ite/gcc_msp430/include/
/home/joeder-ite/gcc_msp430/include/
Ich glaube, das hat etwas mit dem makefile zu tun ...
Achim S. schrieb:> /home/joeder-ite/gcc_msp430/include/msp430f169.ld
Das ist ein Linker-Skript; diese Datei (und alle anderen *.ld) gehören
ins Verzeichnis gcc_msp430/lib/430 (oder ohne "430", wenn der Linker
dort nicht sucht).
Aber anscheinend geben die Beispiel-Makefiles von TI alle den Pfad auf
die .ld explizit mit "-T
/home/joeder-ite/gcc_msp430/include/msp430f169.ld" an.
> und genau diesen Pfad habe ich in der environment-vari angepasst ...> $PATH
PATH ist nur für ausführbare Dateien; wenn er läuft, findet gcc seine
anderen Dateien automatisch.
"Das ist ein Linker-Skript; diese Datei (und alle anderen *.ld) gehören
ins Verzeichnis gcc_msp430/lib/430 (oder ohne "430", wenn der Linker
dort nicht sucht)."
Woher weiß ich denn, wo der Linker sucht ?
Dann würde TI ja eine Toolchain verbreiten, die nicht funktioniert ????
Ist das sicher, dass diese gepackte Archiv nur irgendwo nach home...
entpackt wird und damit funktionieren soll ?
Ich denke, es wird ja auch keine Pfadvariable oder so angepasst, oder
etwas
nach /usr/bin kopiert ... §:-o
Warum finde ich denn in diesem ganzen Paket überall
install-tools ? Für wen sollen die denn sein ?
/gcc_msp430/libexec/gcc/msp430-elf/4.9.1/install-tools
Achim S. schrieb:> echo $PATH bringt:> ...:/home/joeder-ite/gcc_msp430/include:...
Nimm das da raus! Das ist Käse.
Achim S. schrieb:> http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSPGCC/latest/index_FDS.html>> Bei der ...linux-full-installer-version steht hintendran:>> "apply chmod x before executing the package"
Das ist jetzt nicht deren Ernst, oder?
> msp430f169.ld
Wie kommt das in die ld-Kommandozile?
per Makefile?
per Skript?
per spec-File?
per buildin Specs?
Wird der Linker (foo-ld) gar von GHand aufgerufen?
Wie ist das Zeugs configured?
Was ist die Ausgabe mit -v -Wl,-v ?
Moin Johann,
ich dachte ich wäre hier der, der die Fragen hat ...
Dass das Geknoddel mit dem Pfad so nicht klappt, habe ich schon gemerkt.
Das Paket von TI muss nach dem Entpacken installiert werden, auch das
mit der Endung .run .
Ich bin mit dem Source-Code-Compile fast durch gekommen ! Nur 2 Fehler.
Beim 2. mal - als Admin - hat das compile fehlerlos geklappt und ich
habe
das Build mit make install installiert bekommen.
Die Support-Files habe ich noch in die beiden Verzeichnisse kopiert und
hinterher noch mspdebug entpackt, compiliert und installiert.
Ich hoffe, dass es das jetzt war ...
mfg
Eine eigene Frage?
Dieser Thread ist über 11 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.