Hi, Ich habe einen dilnet pc 9200 mit einem AT91RM9200 und will mir ein Makefile schreiben das mein Programm zuerst compiliert und dann via ftp auf mein Zielsystem kopiert. in der Commandline funktioniert es wunderbar aber weiß jemand wie man das mit einem Makefile machen kann? mein Vorschlag ist: CC = /usr/local/arm/2.95.2/bin/arm-linux-gcc all: main clean ftpcopy main: dnp9200.o function.o main.o $(CC) -o main.x dnp9200.o function.o main.o dnp9200.o: dnp9200.c dnp9200.h $(CC) -g -c dnp9200.c function.o: function.c function.h dnp9200.c dnp9200.h $(CC) -g -c function.c clean: rm -f *.o ftpcopy: ftp 192.168.0.126 1umane passwd put a.out chmod 777 a.out bye
du müßtes dem FTP Programm wohl alles per commandline übergeben da 'ftp 192.168.0.126' vermutlich ein extra Programm aufruft.
probier mal: ftp 192.160.0.126 < commands.txt In die Textdatei packst du dann die Befehle
Ja, stimmt mit ftp ruft man ein eigenen Programm auf daher geht das login schon mal nicht. ftp 192.160.0.126 < commands.txt macht irgendwie was komisches, weiß aber noch nicht ob dass der richtige weg ist. ftp 192.160.0.126 < commands.txt Password:Name (192.168.0.126:zeiro): Login incorrect. Login failed. ?Invalid command
http://openbook.galileocomputing.de/linux/linux_kap03_008.htm#mjeaf7b02596e31360061e065986da6447 Schau mal da unter Eingabenumlenkung
Nimm doch statt dem ftp Befehl im makefile einfach ein Shell Script. Das führt dann die Befehle so aus wie du es in die Commandline eintippst.
Bei ncftp kann man Benutzername und PW per Kommandozeile übergeben. ncftpput kopiert auf einen entfernten Rechner, ncftpget holt entsprechend. Sehr handlich in der Kommandozeile, in Skripten und natürlich auch in einem Makefile.
Vieleicht erlaubt das Login aber auch keine direkte Texteingabe. Gibt es außer der IP keine weiteren Kommandozeilenoption von 'ftp'? Ansosnten würd ich mir einfach schnell ein eigenes FTP Programm schreiben, das ist wenn man nur ein festes Schema haben will und nur einen bestimmten Server nuzt recht unkompliziert.
Es gibt auch Alternativen zum Standard-ftp-Programm. Beispielsweise wput, das wurde für so Skriptereien erfunden.
Hab gerade mal ein wenig rumgekramt. So habe ich mal Daten per Script auf einen FTP Server geschoben: #! /bin/sh FILE="$1" ftp -f -r 60 -p -v -u "ftp://user:password@serverip/$FILE" "$FILE"
Danke an alle für die schnelle Hilfe per Script ist es eine sehr elegante Lösung. Habe mich aber dann doch für die ftp-Alternative ncftp entschieden da ist es nur eine kurze Zeile. ncftpput -u uname -p passwd 192.168.0.126 ./ ./main.x HERZLICHEN DANK!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.