Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Lejos installeren  (gelezen 13196 keer)

Offline leepesjee

  • Lid
Re: Lejos installeren
« Reactie #25 Gepost op: 2008/12/05, 23:38:55 »
Hi nearus,
Weet niet of dit iets met je probleem te maken heeft, maar er zit wel iets geks in de definities van je variabelen in je OP:

Citaat
export PATH=$PATH:$/home/stan/lejos/lejoswin/bin
export CLASSPATH=$CLASSPATH:.:$/home/stan/lejos/lejoswin/lib/classes.jar:$/home/stan/lejos/lejoswin/lib/pcrcxcomm.jar

De "$" voor /home staat er normaal niet bij. Ik kan ook niet precies bedenken hoe Bash hiermee omgaat, maar het zou kunnen dat je classpath nu niet goed gedefineerd is.

nearus magnus

  • Gast
Re: Lejos installeren
« Reactie #26 Gepost op: 2008/12/06, 00:23:21 »
Ik heb de handleiding van de officiële website van lejos gekopieerd:
#  After you have downloaded the leJOS environment tar file, extract it to an arbitrary directory.
# Add the SDK's bin directory to your PATH environment variable.
# Set the LEJOS_HOME evironment variable to the directory you installed lejos into:
export LEJOS_HOME=your lejos directory
# Add leJOS's bin directory to your PATH environment variable:
export PATH=$PATH:$LEJOS_HOME/bin
# Add the leJOS classes to your CLASSPATH environment variable:
export CLASSPATH=$CLASSPATH:.:$LEJOS_HOME/lib/classes.jar:$LEJOS_HOME/lib/pcrcxcomm.jar
# Set the RCXTTY environment variable to your 'tower' device:
export RCXTTY=com1 or export RCXTTY=/dev/usb/legousbtower0.
# You might need to adjust the execution permissions in the bin and in the release folder.
# Open a shell and change to the directory you installed leJOS into; type ant. This will build the leJOS executables and libraries on your Linux machine.

Vooral het stuk met het instellen van PATH en CLASSPATH en de SDK's bin map toevoegen aan mijn 'PATH' lijkt me niet te lukken. Ik denk dat hier de fouten inzitten. Lejos staat opgeslagen in de map /home/stan/lejos/lejos_2_1_0 . Ik heb enkele keren geprobeerd mijn /home/stan/.profile bestand te veranderen omdat ik dacht dat de PATH's hier werden opgeslagen. Klopt dit en welke instellingen moet ik toevoegen? Kan ik de regels gewoon onderaan mijn .profile bestand toevoegen?

Re: Lejos installeren
« Reactie #27 Gepost op: 2008/12/06, 00:28:01 »
Volgens mij heeft leepesjee gelijk. Probeer eens het volgende:

export LEJOS_HOME=/home/stan/lejos/lejoswin
export PATH=$PATH:$LEJOS_HOME/bin
export CLASSPATH=$CLASSPATH:.:$LEJOS_HOME/lib/classes.jar:$LEJOS_HOME/lib/pcrcxcomm.jar

Offline profoX

  • Lid
    • wesley
    • Lionslink
Re: Lejos installeren
« Reactie #28 Gepost op: 2008/12/06, 00:28:54 »
profoX, je had toch moeten weten dat dit de fout was ;)
ik wist dat dat absoluut niet de fout kon zijn.. die fout wordt slechts veroorzaakt door het rechtstreeks uitvoeren van "sh" op Ubuntu, aangezien die dash gebruikt en niet volledig compatibel is met bash syntax.. gewoon "firmdl" uitvoeren nadat PATH is ingesteld zou die fout wegwerken (of "./firmdl" in de $LEJOS_HOME/bin directory)

nearus magnus.. probeer dit eens..
Verwijder eerst en vooral de lijnen terug uit je .profile..

'k Heb het zelf even bekeken en het compileert/werkt niet zomaar op moderne Linuxversies zonder enkele aanpassingen...
dit zou moeten werken:

cd <plaats_waar_ik_lejos_wil_installeren> # bijvoorbeeld "cd $HOME" zodat de lejos_2_1_0 map zich in je persoonlijke map zal bevinden
wget http://mesh.dl.sourceforge.net/sourceforge/lejos/lejos_2_1_0.tar.gz # lejos downloaden
tar zxvf lejos_2_1_0.tar.gz # lejos uitpakken
cd lejos_2_1_0/ # in de lejos dir gaan
sed -i 's/javac -target 1.1/javac -target 1.1 -source 1.2/' Makefile rcxcomm/Makefile rcxcomm/rcxclasses/Makefile # Java compiler incompatibiliteit oplossen
sed -i 's/done_pi:/done_pi:;/' vmsrc/threads.c # GCC incompatibiliteit oplossen
make # alles compileren

Als alles goed gaat zou je als laatste regel nu "====> Installation of leJOS done!" moeten zien.. dan kan je weer verder..

export LEJOS_HOME=$PWD # lejos home dir instellen
export PATH=$PATH:$LEJOS_HOME/bin # lejos bin dir aan path toevoegen
export CLASSPATH=$CLASSPATH:.:$LEJOS_HOME/lib/classes.jar:$LEJOS_HOME/lib/pcrcxcomm.jar # classpath instellen
export RCXTTY=/dev/usb/legousbtower0 # RCX tty instellen zodat je infrarood dingetje gevonden wordt (geen idee hoe dit precies werkt want ik heb zoiets niet)

(indien dit werkt kunnen deze 4 lijnen eventueel ook in ~/.profile of dergelijke)

In ieder geval zou het commando "firmdl" nu moeten gevonden worden en werken, ook is er het commando "lejosfirmdl" aanwezig wat een C equivalent is voor het andere.. die zou je dus ook kunnen gebruiken.. de reden hiervoor bevindt zich in de JavaTools.README file:

Citaat
The advantages of the Java Tools over the current C tools are:

 - They are more easily understood by Java programmers
 - They are easier to port to some platforms
 - The shell and batch files are easier to understand and modify to your needs
 - It may be easier to use them in Java IDEs
 - You can incorporate the download code in your own Java programs

ik hoop dat het een beetje klopt, want ik heb het maar snel even uitgezocht.. succes ermee iig
« Laatst bewerkt op: 2008/12/06, 00:30:25 door profoX »
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline siegi

  • Lid
Re: Lejos installeren
« Reactie #29 Gepost op: 2008/12/06, 00:50:56 »
Het is redelijk lang geleden dat ik er nog meegespeeld heb maar ik gebruik gewoon brickos vanuit de ubuntu repo's.
Dit is wel voor het programmeren in C/C++ .
In de repo's zit ook nqc, dit is een simpele op c lijkende taal.

nearus magnus

  • Gast
Re: Lejos installeren
« Reactie #30 Gepost op: 2008/12/06, 02:56:07 »
@Siegi: als ik dat eerder geweten had en vooraf wist hoeveel werk het zou zijn lejos werkend te krijgen was ik daar zeker voor gegaan. Ik heb inmiddels echter al mijn eerste stappen in java gezet en probeer dat dus eerst nog even. Toch bedankt voor de tip.

@Profox: Hier wat ik gedaan heb:
Ik heb een nieuwe virtual machine aangemaakt in Virtual Box zodat er geen instellingen meer verkeerd staan of iets dergelijks. Toen heb ik java sun jdk 6 geïnstalleerd (geen van de openjdk pakketten is geïnstalleerd).
Toen heb ik jouw stappen letterlijk gevolgd. Alles lijkt goed te gaan tot aan het make commando. Ik krijg nu namelijk de volgende foutmeldingen...:stan@stan-laptop:~/Bureaublad/lejos/lejos_2_1_0$ sed -i 's/javac -target 1.1/javac -target 1.1 -source 1.2/' Makefile rcxcomm/Makefile rcxcomm/rcxclasses/Makefile
stan@stan-laptop:~/Bureaublad/lejos/lejos_2_1_0$ sed -i 's/done_pi:/done_pi:;/' vmsrc/threads.c
stan@stan-laptop:~/Bureaublad/lejos/lejos_2_1_0$ make
cd tools; make OSTYPE=linux
make[1]: Map '/home/stan/Bureaublad/lejos/lejos_2_1_0/tools' wordt binnengegaan
cd firmdl; make
make[2]: Map '/home/stan/Bureaublad/lejos/lejos_2_1_0/tools/firmdl' wordt binnengegaan
gcc -O2    -c -o mkimg.o mkimg.c
mkimg.c:27:20: fout: string.h: Bestand of map bestaat niet
mkimg.c:28:19: fout: stdio.h: Bestand of map bestaat niet
mkimg.c:29:19: fout: ctype.h: Bestand of map bestaat niet
mkimg.c: In functie ‘srec_load’:
mkimg.c:50: interne fout ‘FILE’ undeclared (first use in this function)
mkimg.c:50: interne fout (Each undeclared identifier is reported only once
mkimg.c:50: interne fout for each function it appears in.)
mkimg.c:50: interne fout ‘file’ undeclared (first use in this function)
mkimg.c:61: interne fout ‘NULL’ undeclared (first use in this function)
mkimg.c:62: let op: impliciete declaratie van functie `'
mkimg.c:62: interne fout ‘stderr’ undeclared (first use in this function)
mkimg.c:63: let op: impliciete declaratie van functie `'
mkimg.c:67: let op: impliciete declaratie van functie `'
mkimg.c:82: let op: impliciete declaratie van functie `'
mkimg.c:84: let op: impliciete declaratie van functie `'
mkimg.c:97: let op: impliciete declaratie van functie `'
mkimg.c:99: let op: impliciete declaratie van functie `'
mkimg.c:103: let op: impliciete declaratie van functie `'
mkimg.c:109: let op: impliciete declaratie van functie `'
mkimg.c:111: let op: impliciete declaratie van functie `'
mkimg.c:130: let op: impliciete declaratie van functie `'
mkimg.c:131: let op: impliciete declaratie van functie `'
mkimg.c: In functie ‘get_base_name’:
mkimg.c:139: let op: impliciete declaratie van functie `'
mkimg.c: In functie ‘main’:
mkimg.c:172: let op: impliciete declaratie van functie `'
mkimg.c:172: interne fout ‘stderr’ undeclared (first use in this function)
mkimg.c:173: let op: impliciete declaratie van functie `'
mkimg.c:184: let op: impliciete declaratie van functie `'
make[2]: *** [mkimg.o] Fout 1
make[2]: Map '/home/stan/Bureaublad/lejos/lejos_2_1_0/tools/firmdl' wordt verlaten
make[1]: *** [firmdl] Fout 2
make[1]: Map '/home/stan/Bureaublad/lejos/lejos_2_1_0/tools' wordt verlaten
make: *** [all_ctools] Fout 2
stan@stan-laptop:~/Bureaublad/lejos/lejos_2_1_0$

Doe ik iets verkeerd of ben ik misschien iets vergeten? Wel erg fijn dat je me zo actief wilt helpen door het zelfs zelf te installeren. Dit, en de bijdrage van de andere leden is toch nog een stimulans om dit werkend te krijgen!

Offline profoX

  • Lid
    • wesley
    • Lionslink
Re: Lejos installeren
« Reactie #31 Gepost op: 2008/12/06, 03:21:10 »
aangezien er enkele libs gecompileerd moeten worden die in C geprogrammeerd zijn moet je nog wat stuff installeren.. volgens mij volstaat het pakket "build-essential" wel (dus: sudo apt-get install build-essential) probeer daarna nog eens "make"
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

nearus magnus

  • Gast
Re: Lejos installeren
« Reactie #32 Gepost op: 2008/12/06, 22:05:40 »
Lejos installatie is gelukt. Ontzettend bedankt. Firmdl werkt echter nog niet. Na het invoeren van de 'export' commando's stan@stan-laptop:~$ export LEJOS_HOME=/home/stan/Bureaublad/lejos/lejos_2_1_0
stan@stan-laptop:~$ export PATH=$PATH:$/home/stan/Bureaublad/lejos/lejos_2_1_0/bin
stan@stan-laptop:~$ export CLASSPATH=$CLASSPATH:.:/home/stan/Bureaublad/lejos/lejos_2_1_0/lib/classes.jar:/home/stan/Bureaublad/lejos/lejos_2_1_0/lib/pcrcxcomm.jar
stan@stan-laptop:~$ export RCXTTY=/dev/usb/legousbtower0
Daarna probeer ik firmdl uit te voeren maar ik krijg de volgende foutmelding:
stan@stan-laptop:~/Bureaublad/lejos/lejos_2_1_0/bin$ ./firmdl
Exception in thread "main" java.lang.UnsatisfiedLinkError: /home/stan/Bureaublad/lejos/lejos_2_1_0/bin/libirtower.so: libstdc++.so.5: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1030)
at josx.rcxcomm.Tower.<clinit>(Tower.java:126)
at js.tools.Download.open(Download.java:19)
at js.tools.Firmdl.main(Firmdl.java:204)
stan@stan-laptop:~/Bureaublad/lejos/lejos_2_1_0/bin$
Ook lejosfirmdl werkt niet. Ik krijg de volgende foutmelding:
stan@stan-laptop:~/Bureaublad/lejos/lejos_2_1_0/bin$ ./lejosfirmdl
Use --help for options.
segment.length[0] = 13692 (14k)
segment.length[1] = 2940 (3k)
Total image size=16632 (17k)
/dev/usb/legousbtower0: Permission denied
Nadat ik mezelf toestemming geef het apparaat te gebruiken (eigenaar veranderen in 'stan' , lees en schrijfrechten) krijg ik time outs. Voor het commando ./firmdl krijg ik dezelfde foutmelding. Wanneer ik ./lejosfirmdl gebruik krijg ik dan de melding
stan@stan-laptop:~/Bureaublad/lejos/lejos_2_1_0/bin$ ./lejosfirmdl
Use --help for options.
segment.length[0] = 13692 (14k)
segment.length[1] = 2940 (3k)
Total image size=16632 (17k)
/dev/usb/legousbtower0: Connection timed out
stan@stan-laptop:~/Bureaublad/lejos/lejos_2_1_0/bin$
Bij nog een keer proberen krijg ik dezelfde melding maar geeft hij aan dat het apparaat in gebruik is en moet ik deze ontkoppelen en weer aankoppelen om hem weer bruikbaar te krijgen.

Ik ben dus weer een stapje verder maar het werkt nog niet helemaal.

Offline profoX

  • Lid
    • wesley
    • Lionslink
Re: Lejos installeren
« Reactie #33 Gepost op: 2008/12/07, 15:29:06 »
Pff, dat ding is gewoon ouderwets.. je zou libstdc++5 kunnen installeren en "intern int errno;" in de source kunnen vervangen door "include <errno.h>" maar dan ga je nog problemen krijgen denk ik.. ik zou de release candidate eens proberen, die is van 2006 en dus toch 4 jaar nieuwer..

voer gewoon deze commando's uit, één na één, en controleer of er niets misgaat:

mkdir ~/Bureaublad/lejos3
cd ~/Bureaublad/lejos3
# opmerking: dingen zoals $PWD en $LEJOS_HOME gewoon rechtstreeks overtypen, niet zelf gaan aanpassen, m.a.w. je kan al deze commando's gewoon copy-pasten
export LEJOS_HOME=$PWD # lejos home dir instellen
export PATH=$PATH:$LEJOS_HOME/bin # lejos bin dir aan path toevoegen
export CLASSPATH=$CLASSPATH:.:$LEJOS_HOME/lib/classes.jar:$LEJOS_HOME/lib/pcrcxcomm.jar # classpath instellen
export RCXTTY=/dev/usb/legousbtower0 # RCX tty instellen zodat je USB tower gevonden wordt ----> of indien je het via een seriële verbinding doet: export RCXTTY=COM1
export JAVA_HOME=/usr/lib/jvm/java-6-sun
wget http://lejos.sourceforge.net/tools/lejos3/lejos.3.0.0-RC2.tar.gz
tar zxvf lejos.3.0.0-RC2.tar.gz
chmod +x release/cctest.sh
cd build
ant

je zou nu als voorlaatste lijn "BUILD SUCCESSFUL" moeten zien...
daarna kan je verder met:

cd $LEJOS_HOME
chmod +x bin/emulate_lejoslink bin/firmdl bin/lejos bin/lejosdl bin/lejosjc bin/lejoslink check/checkDistribution.sh

Het uitvoeren van firmdl zou nu moeten lukken...

wesley@hox:~/dev/test/lejos3$ firmdl
read firmware srec
  100%
Installing firmware
Loading native libs
/dev/usb/legousbtower0: No such file or directory
Tower error: open failure

zoals je kan zien heb ik echter geen lego USB tower :P maar dat zou de allerlaatste stap moeten zijn..
je kan na de firmware overdracht controleren of alles werkt door:

cd check
./checkDistribution.sh

op het einde zie ik dan in mijn geval:
downloading...
read binary
  100%
download binary
Loading native libs
/dev/usb/legousbtower0: No such file or directory # <-- omdat ik geen lego usb tower heb
error while downloading: Tower error: open failure # <-- omdat ik geen lego usb tower heb
done. If no error occurred, please press the RUN Button on your RCX now. The LCD of the RCX should display SMOKE, then TEST

het is wel een hele boterham, maar het is dan ook een beetje outdated software met onvolledige installatie documentatie :rolleyes: iig succes ermee

PS: ik draai ook ubuntu 8.10, dus daar zou het ook op moeten werken hoor
« Laatst bewerkt op: 2008/12/07, 15:43:59 door profoX »
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

nearus magnus

  • Gast
Re: Lejos installeren
« Reactie #34 Gepost op: 2008/12/07, 17:56:09 »
Bedankt voor de duidelijke stapsgewijze handleiding. Het probleem is echter nog steeds niet opgelost. Na het kopiëren-plakken van de commando's krijg ik de volgende foutmelding:
stan@stan-laptop:~/Bureaublad/lejos3$ firmdl
read firmware srec
  100%
Installing firmware
Loading native libs
/dev/usb/legousbtower0: Permission denied
Tower error: open failure
Dit heb ik verholpen door als root de gebruiker en groep stan lees en schrijfrechten te geven (op de grafische manier, via nautilus). Daarna krijg ik de volgende foutmelding:
stan@stan-laptop:~/Bureaublad/lejos3$ firmdl
read firmware srec
  100%
Installing firmware
Loading native libs
/dev/usb/legousbtower0: Connection timed out
Tower error: open failure
stan@stan-laptop:~/Bureaublad/lejos3$
Ik krijg dus een time out. Wanneer ik het, na een time out nog een keer probeer krijg ik de volgende foutmelding:
stan@stan-laptop:~/Bureaublad/lejos3$ firmdl
read firmware srec
  100%
Installing firmware
Loading native libs
/dev/usb/legousbtower0: Device or resource busy
Tower error: open failure
Ik moet het apparaat dus (virtueel) verwijderen en weer aankoppelen, en dan de rechten veranderen om het apparaat 'werkend' te krijgen (maar met time-outs).

Tijdens het lezen van de documentatie van 3.0 kwam ik de volgende regel tegen:
- leJOS supports Lunix kernel 2.6 now
Ondanks de typefout lijkt het me dan duidelijk dat lejos 2.1 dus niet zal (kunnen) werken.

Kan het zin hebben lejos te proberen op een niet-virtuele machine? Wanneer dit zin kan hebben zal ik mijn systeem waarschijnlijk opnieuw moeten installeren (zie vage foutmeldingen aan het begin van dit topic), maar als dat zin kan hebben ben ik daar zeker toe bereid.

Offline profoX

  • Lid
    • wesley
    • Lionslink
Re: Lejos installeren
« Reactie #35 Gepost op: 2008/12/07, 18:26:06 »
ohja, even een belangrijke opmerking.. de versie van VirtualBox die je uit de repositories van Ubuntu kan downloaden bevat GEEN USB SUPPORT, dus als je iets met USB wil doen in VirtualBox dan moet je de closed-source versie van de website van VirtualBox zelf downloaden..

Maar het is veel gemakkelijker om het gewoon zonder VirtualBox te proberen..
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline profoX

  • Lid
    • wesley
    • Lionslink
Re: Lejos installeren
« Reactie #36 Gepost op: 2008/12/07, 18:36:35 »

Kan het zin hebben lejos te proberen op een niet-virtuele machine? Wanneer dit zin kan hebben zal ik mijn systeem waarschijnlijk opnieuw moeten installeren (zie vage foutmeldingen aan het begin van dit topic), maar als dat zin kan hebben ben ik daar zeker toe bereid.
nee hoor.. laat je systeem maar zoals het is.. je systeem lijkt in orde, ik denk alleen dat je de PATH variabele een beetje vern**kt hebt :) maar door die lijnen terug uit je ~/.profile te verwijderen en opnieuw aan te melden is dat sowieso opgelost gok ik, en dan zou "which javac" wel resultaat moeten geven :)

daarna gewoon alle commando's copy/pasten op je systeem (niet virtueel) zou wel eens kunnen lukken..

edit: wat je ook kan proberen volgens een thread op de lejos-discussion mailing list als het dan nog niet werkt (of als je reeds closed source Virtualbox gebruikt):

sudo ln -s /dev/usb/legousbtower0 /dev/lego0
export RCXTTY=usb

cd ~/Bureaublad/lejos3
# onderstaande 4 export commando's zijn overbodig indien je nog steeds op dezelfde shell werkt, anders moet je ze even opnieuw ingeven na het bovenstaande cd commando, het kan iig sowieso geen kwaad
# opmerking: dingen zoals $PWD en $LEJOS_HOME gewoon rechtstreeks overtypen, niet zelf gaan aanpassen, m.a.w. je kan al deze commando's gewoon copy-pasten
export LEJOS_HOME=$PWD # lejos home dir instellen
export PATH=$PATH:$LEJOS_HOME/bin # lejos bin dir aan path toevoegen
export CLASSPATH=$CLASSPATH:.:$LEJOS_HOME/lib/classes.jar:$LEJOS_HOME/lib/pcrcxcomm.jar # classpath instellen
export RCXTTY=/dev/usb/legousbtower0 # RCX tty instellen zodat je USB tower gevonden wordt ----> of indien je het via een seriële verbinding doet: export RCXTTY=COM1
export JAVA_HOME=/usr/lib/jvm/java-6-sun

firmdl

en daarna nog eens opnieuw proberen...

« Laatst bewerkt op: 2008/12/07, 18:42:47 door profoX »
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

nearus magnus

  • Gast
Re: Lejos installeren
« Reactie #37 Gepost op: 2008/12/07, 19:27:21 »
Het is inderdaad gelukt. Nadat ik dezelfde stappen op mijn niet-virtuele machine had uitgevoerd werkte het wel en kreeg ik géén time-outs. Ik gebruikte wel gewoon de niet-open source versie van virtual box MET usb ondersteuning. Ik denk dat het dus aan virtual box lag. Het probleem is in ieder geval verholpen. Ontzettend bedankt voor al je hulp hiermee!!

Eindelijk kan ik beginnen met het 'echte' werk. Daarvoor zou ik graag gebruik maken van Netbeans, maar aangezien ik een eenvoudige plugin vond voor eclipse ben ik van plan deze te gaan gebruiken. Op de website http://lejos.sourceforge.net/tools/eclipse/ldt/ vond ik een plugin. Na deze uitgepakt te hebben en de bestanden uit de map features in de map features, en de bestanden uit plugins in de map plugins gezet te hebben zie ik een extra menuutje in eclipse. Bij het uitvoeren van elke willekeurige bewerking krijg ik echter foutmeldingen.
Doe ik iets verkeerd en hoe los ik dit op? Of is dit een plugin die alleen onder Windows werkt?
Als dat zo is, is er dan een manier om geschreven programma's eenvoudig te compileren en te versturen naar de lego robot?

Ontzettend bedankt voor je hulp. Het werkt nu in ieder geval. Ik doe mijn best om het nog beter werkend te krijgen en als je me ook daar bij zou kunnen helpen ben ik je nog dankbaarder dan dat ik nu al ben.

BEDANKT!

Offline profoX

  • Lid
    • wesley
    • Lionslink
Re: Lejos installeren
« Reactie #38 Gepost op: 2008/12/07, 19:41:19 »
het zou wel kunnen helpen als je zegt wat je precies probeert en wat er precies misloopt :P (welke foutmelding enzovoorts..)
ik heb het zelf wel eens gedownload, maar bij mij werkt er sowieso niks van, omdat ik zo geen usb ding heb
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

nearus magnus

  • Gast
Re: Lejos installeren
« Reactie #39 Gepost op: 2008/12/07, 22:03:26 »
ok, sorry, even iets te snel.

Ik probeer een plugin te installeren onder Eclipse, een IDE voor Java. Met deze plugin zou ik dan direct de zelfgeschreven programmas kunnen compileren en doorsturen naar mijn lego-robotje. Normaal gesproken moet dat via de command line, maar dat lijkt me nogal omslachtig. Ik zou dan ieder programma eerst met via de cli moeten compileren en daarna versturen.

Hiervoor heb ik het programma LDT ( http://lejos.sourceforge.net/tools/eclipse/ldt/ ) gevonden. Dit is een plugin voor Eclipse die de hierboven genoemde taken met één druk op de knop vanuit eclipse uitvoert. De versie die ik daar vindt werkt echter niet. Ik krijg de volgende foutmelding bij het versturen van de firmware vanuit eclipse (let op, vanuit de cli werkt dit dus wel)
An internal error occured during: "lejos firmware download".
Bij een andere plugin (volgens mij een oudere versie) die ik http://ltu164.ltu.edu/~chung/eclipse/org.lejos_1.0.2.zip gedownload heb, krijg ik de volgende melding:
Plug-in lejos was unable to load class lejos.LejosWizard.

Ik zie twee mogelijke oorzaken.
1- de plugins werken alleen onder Windows. Bij de eerste plugin die ik genoemd heb zit ook een map "/home/stan/Bureaublad/lejos plugin/org.lejos.ldt_1.2.0/plugins/org.lejos_1.2.0/os/win32/x86" wat me doet denken aan een windows-only plugin, maar aangezien deze map wel heel erg specifiek win32 genoemd wordt is er misschien een mogelijkheid de bestanden te vervangen door linux-bestanden.
2- De environment variabelen. De export-dingen. Hoe weet ik zeker dat eclipse hier naar kijkt? Als ik de lijst aan export commando's uitvoer in de cli, gevolgd door eclipse (ook in de cli) 'luistert' eclipse dan naar deze export commando's of moet ik deze ergens vast opslaan zodat ook andere programma's er naar luisteren.

Misschien kun je me hier verder mee helpen. Je kunt kijken of je een vergelijkbare foutmelding krijgt, ook zonder de infrarood-zender die bij de robot hoort.

Edit: Ik ben er net achter gekomen dat het nog niet helemaal goed werkt. Bij het uitvoeren van de distribution test krijg ik een foutmelding:
stan@stan-laptop:~$ cd /home/stan/Bureaublad/lejos3/
stan@stan-laptop:~/Bureaublad/lejos3$ export LEJOS_HOME=$PWD # lejos home dir instellen
stan@stan-laptop:~/Bureaublad/lejos3$ export PATH=$PATH:$LEJOS_HOME/bin # lejos bin dir aan path toevoegen
stan@stan-laptop:~/Bureaublad/lejos3$ export CLASSPATH=$CLASSPATH:.:$LEJOS_HOME/lib/classes.jar:$LEJOS_HOME/lib/pcrcxcomm.jar # classpath instellen
stan@stan-laptop:~/Bureaublad/lejos3$ export RCXTTY=/dev/usb/legousbtower0 # RCX tty instellen zodat je USB tower gevonden wordt ----> of indien je het via een seriële verbinding doet: export RCXTTY=COM1
stan@stan-laptop:~/Bureaublad/lejos3$ export JAVA_HOME=/usr/lib/jvm/java-6-sun
stan@stan-laptop:~/Bureaublad/lejos3$ cd check/
stan@stan-laptop:~/Bureaublad/lejos3/check$ ./checkDistribution.sh
checking environment
environment seems to be ok
compiling test class
/home/stan/Bureaublad/lejos3/bin/lejosjc: line 18: javac: command not found
linking and downloading test class
linking...
error while linking: Class DistributionSmokeTest (file DistributionSmokeTest.class) not found in CLASSPATH .:/home/stan/Bureaublad/lejos3/3rdparty/lib/bcel-5.1.jar:/home/stan/Bureaublad/lejos3/3rdparty/lib/commons-cli-1.0.jar:/home/stan/Bureaublad/lejos3/lib/jtools.jar:/home/stan/Bureaublad/lejos3/lib/classes.jar:/home/stan/Bureaublad/lejos3/lib/rcxcomm.jar:/home/stan/Bureaublad/lejos3/lib/pcrcxcomm.jar
done. If no error occurred, please press the RUN Button on your RCX now. The LCD of the RCX should display SMOKE, then TEST
stan@stan-laptop:~/Bureaublad/lejos3/check$
« Laatst bewerkt op: 2008/12/07, 22:57:31 door nearus magnus »

Offline profoX

  • Lid
    • wesley
    • Lionslink
Re: Lejos installeren
« Reactie #40 Gepost op: 2008/12/07, 23:00:00 »
Geen idee.. heb er even naar gekeken, maar ik denk dat de plug-in nog brakker en minder ondersteund is dan de eigenlijke software zelf en dat het gemakkelijker is om je programma handmatig (eventueel door een klein scriptje te gebruiken) te uploaden naar de robot
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline profoX

  • Lid
    • wesley
    • Lionslink
Re: Lejos installeren
« Reactie #41 Gepost op: 2008/12/07, 23:02:10 »

Edit: Ik ben er net achter gekomen dat het nog niet helemaal goed werkt. Bij het uitvoeren van de distribution test krijg ik een foutmelding:
1. wat is de output van: echo $PATH
2. add me op msn want dat gaat gemakkelijker, profox(at)linux.be
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline profoX

  • Lid
    • wesley
    • Lionslink
Re: Lejos installeren
« Reactie #42 Gepost op: 2008/12/09, 02:17:29 »
geen idee of je me al hebt toegevoegd / of je nog problemen hebt met lejos
maar ik ben nog steeds bereid om dit te fixen :)
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline profoX

  • Lid
    • wesley
    • Lionslink
Re: Lejos installeren
« Reactie #43 Gepost op: 2008/12/09, 18:20:12 »
probleem is opgelost
LD_LIBRARY_PATH moest nog aangepast worden..

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$LEJOS_HOME/bin
en daarna pas werkt checkDistribution.sh

Via de Eclipse plug-in zal het wellicht niet werken, die plug-in crashed bij mij i.i.g. Eclipse,
heb ergens ook gelezen dat die niet compatibel is met Linux.. eventueel schrijven we daar wel eens een klein scriptje voor om het compileerproces te automatiseren, of een nieuwse Eclipse plug-in :)
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

nearus magnus

  • Gast
Re: Lejos installeren
« Reactie #44 Gepost op: 2008/12/15, 23:39:14 »
script om automatisch het werk te doen:
#!/bin/bash

#
# Script om instellingen automatisch goed te zetten en dan een bestand te compileren en uploaden
# Door Nearus Magnus, met dank aan het ubuntu-nl forum en Profox in het bijzonder!

echo Environment variabelen instellen
cd ..


cd ~/Bureaublad/lejos3 # map met lejos
export LEJOS_HOME=$PWD # lejos home dir instellen
export PATH=$PATH:$LEJOS_HOME/bin # lejos bin dir aan path toevoegen
export CLASSPATH=$CLASSPATH:.:$LEJOS_HOME/lib/classes.jar:$LEJOS_HOME/lib/pcrcxcomm.jar: # classpath instellen
export RCXTTY=/dev/usb/legousbtower0 # RCX tty instellen zodat de USB tower gevonden wordt
export JAVA_HOME=/usr/lib/jvm/java-6-sun # map met java
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$LEJOS_HOME/bin # bin-map van lejos

    echo ingesteld... starten met compileren # instellingen aangepast
    cd /home/stan/Documenten/profielwerkstuk/code/netbeans/JavaApplication4/src/javaapplication4 # map met  te compileren java bestanden
echo compileren...
lejosjc Main.java # het te compileren bestand
echo Verbinding maken en binary versturen naar RCX...
lejos Main # verstuurd Main.class !let op! geen .class invoeren, alleen de naam zonder extensie
echo Klaar. Wanneer er geen fouten zijn druk je op Run op de RCX om het programma te starten
« Laatst bewerkt op: 2008/12/17, 11:13:39 door nearus magnus »