[En-Nut-Discussion] Unix emulation bugs in CVS HEAD
Ole Reinhardt
ole.reinhardt at kernelconcepts.de
Tue Aug 16 19:08:18 CEST 2005
Hi Matthias and all other.
The unix emulation in CVS currently does not work properly. I think most
of these bugs where introduced with the latest NutOS changes.
At the moment I don't have much time to look for it. I would be glad if
Matthias could look on it.
1.) Running the threads example:
The application seems to deadlock. If this is a real sceduler bug this
perhaps could be the reason for the strange behavior of the unix
emulation of BTNut too.
The same happens with the timer example.
The output is only:
ole at platon:~/work/avr/ethernut/nut/app/threads$ ./threads.hex
Thread Test
MHL
2.) Uart Example:
The same happens with the pppc example.
This one does not compile:
ole at platon:~/work/avr/ethernut/nut/app/uart$ make
gcc -c -Os -Wall -Wstrict-prototypes -Wa,-ahlms=uart.lst
-I../../include uart.c -o uart.o
gcc uart.o -L../../lib/gcc/unix -lpthread ../../lib/gcc/unix/nutinit.o
-lnutarch -lnutdev -lnutos -lnutcrt -o uart.elf
../../lib/gcc/unix/libnutos.a(timer.o): In function `NutTimerInit':
/home/ole/work/avr/ethernut/nut/os/timer.c:240: undefined reference to
`NutRegisterTimer'
../../lib/gcc/unix/libnutos.a(timer.o): In function `NutTimerStart':
/home/ole/work/avr/ethernut/nut/os/timer.c:415: undefined reference to
`NutTimerMillisToTicks'
../../lib/gcc/unix/libnutos.a(timer.o): In function `NutGetSeconds':
/home/ole/work/avr/ethernut/nut/os/timer.c:565: undefined reference to
`NutGetTickClock'
../../lib/gcc/unix/libnutos.a(timer.o): In function `NutGetMillis':
/home/ole/work/avr/ethernut/nut/os/timer.c:588: undefined reference to
`NutGetTickClock'
/home/ole/work/avr/ethernut/nut/os/timer.c:589: undefined reference to
`NutGetTickClock'
/home/ole/work/avr/ethernut/nut/os/timer.c:590: undefined reference to
`NutGetTickClock'
../../lib/gcc/unix/libnutos.a(event.o): In function `NutEventWait':
/home/ole/work/avr/ethernut/nut/os/event.c:234: undefined reference to
`NutTimerMillisToTicks'
collect2: ld gab 1 als Ende-Status zurück
make: *** [uart.elf] Fehler 1
3.) The most simple example does not work:
There seems to be a problem with the header files.
gcc -c -Os -Wall -Wstrict-prototypes -Wa,-ahlms=simple.lst
-I../../include simple.c -o simple.o
gcc simple.o -L../../lib/gcc/unix
-lpthread ../../lib/gcc/unix/nutinit.o -lnutos -lnutarch -lnutdev -o
simple.elf
../../lib/gcc/unix/libnutos.a(thread.o): In function `NutThreadCreate':
../arch/unix/os/thread.c:254: undefined reference to `NUT_printf'
collect2: ld gab 1 als Ende-Status zurück
make: *** [simple.elf] Fehler 1
perhaps even more...
Best regards,
Ole Reinhardt
--
kernel concepts Tel: +49-271-771091-14
Dreisbachstr. 24 Fax: +49-271-771091-19
D-57250 Netphen E+ : +49-177-7420433
--
More information about the En-Nut-Discussion
mailing list