Hi ALL
I am a student of IIT Dellhi. I am working on a project to build usb webcam driver and ex2 filesystem driver for L4.
I have compiled loaders downloaded from svn repository on 5th April 1:00 AM IST ,svn revision 444.
I am using following gcc version 4.3.2 and ubuntu 8.10 linux.
root@tapas-laptop:/home/tapas/tudos/l4# gcc --version gcc (Ubuntu 4.3.2-1ubuntu12) 4.3.2 Copyright (C) 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
root@tapas-laptop:/home/tapas/tudos/l4#
I had run following commands to compile all modules:
$sudo su $svn checkout -N http://svn.tudos.org/repos/tudos/trunk tudos $cd tudos $./repomgr co dice fiasco hello l4env $cd l4/pkg/ $svn up dope $svn up linux-26-headers $svn up dde_linux26 $svn up l4ide $svn up ore
then i have tried to compile :
$make -C l4 O=/home/tapas/5thAprilUserbuild oldconfig $cd l4/ $make O=/home/tapas/5thAprilUserbuild
after running above commands , it gives an error like this below:
==> "dump-l4" built ==> Installing dump-l4 to local build-tree install -d /home/tapas/5thAprilUserbuild/bin/x86_586/l4v2/ install -m 755 dump-l4 /home/tapas/5thAprilUserbuild/bin/x86_586/l4v2/dump-l4 make[5]: Leaving directory `/home/tapas/5thAprilUserbuild/pkg/loader/examples/dump-l4/OBJ-x86_586-l4v2' make[4]: Leaving directory `/home/tapas/tudos/l4/pkg/loader/examples/dump-l4' test -f fprov-l4/broken -o -f fprov-l4/obsolete || \ if [ -f fprov-l4/Makefile ] ; then PWD=/home/tapas/tudos/l4/pkg/loader/examples/fprov-l4 make -C fprov-l4 ; fi make[4]: Entering directory `/home/tapas/tudos/l4/pkg/loader/examples/fprov-l4' ... Building /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/.general.d make[4]: Leaving directory `/home/tapas/tudos/l4/pkg/loader/examples/fprov-l4' make[4]: Entering directory `/home/tapas/tudos/l4/pkg/loader/examples/fprov-l4' install -d /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/ echo '# automatically created -- modifications will be lost' > /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/Makefile echo 'SRC := /home/tapas/tudos/l4/pkg/loader/examples/fprov-l4' >> /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/Makefile echo 'OBJ := /home/tapas/5thAprilUserbuild' >> /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/Makefile echo '.PHONY: x $(MAKECMDGOALS)' >> /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/Makefile echo 'x:' >> /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/Makefile echo ' PWD=$(SRC) $(MAKE) -C $(SRC) O=$(OBJ)' >> /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/Makefile echo '$(MAKECMDGOALS):' >> /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/Makefile echo ' PWD=$(SRC) $(MAKE) -C $(SRC) O=$(OBJ) $@'>> /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/Makefile PWD=/home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/OBJ-x86_586-l4v2 make -C /home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/OBJ-x86_586-l4v2 -f Makefile make[5]: Entering directory `/home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/OBJ-x86_586-l4v2' ... Building .general.d ... Building Makefile.inc make[5]: Leaving directory `/home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/OBJ-x86_586-l4v2' make[5]: Entering directory `/home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/OBJ-x86_586-l4v2' ... Compiling main.o LD_PRELOAD=/home/tapas/5thAprilUserbuild/tool/gendep/libgendep.so GENDEP_TARGET=main.o GENDEP_BINARY=cc1 gcc -m32 -c -DUSE_UCLIBC=y -DRAM_BASE=0x0 -DSYSTEM_x86_586_l4v2 -DARCH_x86 -DCPUTYPE_586 -DL4API_l4v2 -DCONFIG_L4_CALL_SYSCALLS -DCONFIG_L4_ABS_SYSCALLS -I/home/tapas/5thAprilUserbuild/pkg/loader/idl/OBJ-x86-l4v2 -I/home/tapas/5thAprilUserbuild/include/x86/l4v2 -I/home/tapas/5thAprilUserbuild/include/l4v2 -I/home/tapas/5thAprilUserbuild/include/x86 -I/home/tapas/5thAprilUserbuild/include -I/home/tapas/tudos/l4/../dice/include -I/home/drops/include/x86/l4v2 -I/home/drops/include/l4v2 -I/home/drops/include/x86 -I/home/drops/include -I/usr/lib/gcc/i486-linux-gnu/4.3.2/include -I/usr/lib/gcc/i486-linux-gnu/4.3.2/include-fixed -gstabs+ -g -O2 -fno-strict-aliasing -march=i586 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -fno-common -fno-stack-protector /home/tapas/tudos/l4/pkg/loader/examples/fprov-l4/main.c -o main.o In function ‘open’, inlined from ‘l4fprov_file_ext_write_component’ at /home/tapas/tudos/l4/pkg/loader/examples/fprov-l4/main.c:117: /usr/include/bits/fcntl2.h:51: error: call to ‘__open_missing_mode’ declared with attribute error: open with O_CREAT in second argument needs 3 arguments make[5]: *** [main.o] Error 1 make[5]: Leaving directory `/home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/OBJ-x86_586-l4v2' make[4]: *** [/home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/OBJ-x86_586-l4v2] Error 2 make[4]: Leaving directory `/home/tapas/tudos/l4/pkg/loader/examples/fprov-l4' make[3]: *** [fprov-l4] Error 2 make[3]: Leaving directory `/home/tapas/tudos/l4/pkg/loader/examples' make[2]: *** [examples] Error 2 make[2]: Leaving directory `/home/tapas/tudos/l4/pkg/loader' make[1]: *** [loader.bin] Error 2 make[1]: Leaving directory `/home/tapas/tudos/l4/pkg' make: *** [pkg] Error 2
To solve this problem . I have modified line 117 of /home/tapas/tudos/l4/pkg/loader/examples/dump-l4/main.c
fd = open(fname, O_CREAT | O_APPEND | O_RDWR );
to "fd = open(fname, O_CREAT | O_APPEND | O_RDWR ,0664);"
but I am not sure whether it is correct or not. After modifying above line , I have run $make O=/home/tapas/5thAprilUserbuild again. But it gives another error like :
==> "l4dope" built ==> Installing l4dope to local build-tree install -d /home/tapas/5thAprilUserbuild/bin/x86_586/l4v2/ install -m 755 l4dope /home/tapas/5thAprilUserbuild/bin/x86_586/l4v2/l4dope make[5]: Leaving directory `/home/tapas/5thAprilUserbuild/pkg/dope/server/l4/OBJ-x86_586-l4v2' make[4]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/server/l4' test -f linux/broken -o -f linux/obsolete || \ if [ -f linux/Makefile ] ; then PWD=/home/tapas/tudos/l4/pkg/dope/server/linux make -C linux ; fi make[4]: Entering directory `/home/tapas/tudos/l4/pkg/dope/server/linux' ... Building /home/tapas/5thAprilUserbuild/pkg/dope/server/linux/.general.d make[4]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/server/linux' make[4]: Entering directory `/home/tapas/tudos/l4/pkg/dope/server/linux' install -d /home/tapas/5thAprilUserbuild/pkg/dope/server/linux/ echo '# automatically created -- modifications will be lost' > /home/tapas/5thAprilUserbuild/pkg/dope/server/linux/Makefile echo 'SRC := /home/tapas/tudos/l4/pkg/dope/server/linux' >> /home/tapas/5thAprilUserbuild/pkg/dope/server/linux/Makefile echo 'OBJ := /home/tapas/5thAprilUserbuild' >> /home/tapas/5thAprilUserbuild/pkg/dope/server/linux/Makefile echo '.PHONY: x $(MAKECMDGOALS)' >> /home/tapas/5thAprilUserbuild/pkg/dope/server/linux/Makefile echo 'x:' >> /home/tapas/5thAprilUserbuild/pkg/dope/server/linux/Makefile echo ' PWD=$(SRC) $(MAKE) -C $(SRC) O=$(OBJ)' >> /home/tapas/5thAprilUserbuild/pkg/dope/server/linux/Makefile echo '$(MAKECMDGOALS):' >> /home/tapas/5thAprilUserbuild/pkg/dope/server/linux/Makefile echo ' PWD=$(SRC) $(MAKE) -C $(SRC) O=$(OBJ) $@'>> /home/tapas/5thAprilUserbuild/pkg/dope/server/linux/Makefile make[4]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/server/linux' make[3]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/server' test -f examples/broken -o -f examples/obsolete || \ if [ -f examples/Makefile ] ; then PWD=/home/tapas/tudos/l4/pkg/dope/examples make -C examples ; fi make[3]: Entering directory `/home/tapas/tudos/l4/pkg/dope/examples' install -d /home/tapas/5thAprilUserbuild/pkg/dope/examples/ echo '# automatically created -- modifications will be lost' > /home/tapas/5thAprilUserbuild/pkg/dope/examples/Makefile echo 'SRC := /home/tapas/tudos/l4/pkg/dope/examples' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/Makefile echo 'OBJ := /home/tapas/5thAprilUserbuild' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/Makefile echo '.PHONY: x $(MAKECMDGOALS)' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/Makefile echo 'x:' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/Makefile echo ' PWD=$(SRC) $(MAKE) -C $(SRC) O=$(OBJ)' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/Makefile echo '$(MAKECMDGOALS):' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/Makefile echo ' PWD=$(SRC) $(MAKE) -C $(SRC) O=$(OBJ) $@'>> /home/tapas/5thAprilUserbuild/pkg/dope/examples/Makefile test -f dopecmd/broken -o -f dopecmd/obsolete || \ if [ -f dopecmd/Makefile ] ; then PWD=/home/tapas/tudos/l4/pkg/dope/examples/dopecmd make -C dopecmd ; fi make[4]: Entering directory `/home/tapas/tudos/l4/pkg/dope/examples/dopecmd' install -d /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/ echo '# automatically created -- modifications will be lost' > /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/Makefile echo 'SRC := /home/tapas/tudos/l4/pkg/dope/examples/dopecmd' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/Makefile echo 'OBJ := /home/tapas/5thAprilUserbuild' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/Makefile echo '.PHONY: x $(MAKECMDGOALS)' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/Makefile echo 'x:' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/Makefile echo ' PWD=$(SRC) $(MAKE) -C $(SRC) O=$(OBJ)' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/Makefile echo '$(MAKECMDGOALS):' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/Makefile echo ' PWD=$(SRC) $(MAKE) -C $(SRC) O=$(OBJ) $@'>> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/Makefile test -f l4/broken -o -f l4/obsolete || \ if [ -f l4/Makefile ] ; then PWD=/home/tapas/tudos/l4/pkg/dope/examples/dopecmd/l4 make -C l4 ; fi make[5]: Entering directory `/home/tapas/tudos/l4/pkg/dope/examples/dopecmd/l4' ... Building /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/.general.d make[5]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/examples/dopecmd/l4' make[5]: Entering directory `/home/tapas/tudos/l4/pkg/dope/examples/dopecmd/l4' install -d /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/ echo '# automatically created -- modifications will be lost' > /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/Makefile echo 'SRC := /home/tapas/tudos/l4/pkg/dope/examples/dopecmd/l4' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/Makefile echo 'OBJ := /home/tapas/5thAprilUserbuild' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/Makefile echo '.PHONY: x $(MAKECMDGOALS)' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/Makefile echo 'x:' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/Makefile echo ' PWD=$(SRC) $(MAKE) -C $(SRC) O=$(OBJ)' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/Makefile echo '$(MAKECMDGOALS):' >> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/Makefile echo ' PWD=$(SRC) $(MAKE) -C $(SRC) O=$(OBJ) $@'>> /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/Makefile PWD=/home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/OBJ-x86_586-l4v2 make -C /home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/OBJ-x86_586-l4v2 -f Makefile make[6]: Entering directory `/home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/OBJ-x86_586-l4v2' ... Building .general.d ... Building Makefile.inc make[6]: Leaving directory `/home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/OBJ-x86_586-l4v2' make[6]: Entering directory `/home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/OBJ-x86_586-l4v2' ... Generating simpleterm.dpi LD_PRELOAD=/home/tapas/5thAprilUserbuild/tool/gendep/libgendep.so GENDEP_TARGET=simpleterm.dpi GENDEP_BINARY=perl /home/tapas/tudos/l4/tool/gen_dopecode/gen_dopecode /home/tapas/tudos/l4/pkg/dope/examples/dopecmd/common/simpleterm.dpe
simpleterm.dpi
/bin/bash: /home/tapas/tudos/l4/tool/gen_dopecode/gen_dopecode: No such file or directory make[6]: *** [simpleterm.dpi] Error 127 make[6]: Leaving directory `/home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/OBJ-x86_586-l4v2' make[5]: *** [/home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/OBJ-x86_586-l4v2] Error 2 make[5]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/examples/dopecmd/l4' make[4]: *** [l4] Error 2 make[4]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/examples/dopecmd' make[3]: *** [dopecmd] Error 2 make[3]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/examples' make[2]: *** [examples] Error 2 make[2]: Leaving directory `/home/tapas/tudos/l4/pkg/dope' make[1]: *** [dope.bin] Error 2 make[1]: Leaving directory `/home/tapas/tudos/l4/pkg' make: *** [pkg] Error 2 root@tapas-laptop:/home/tapas/tudos/l4#
This seems to me that some files are not available or deleted from svn . Please correct these two errors. And also let us know correct solution as soon as possible. Please also let us know how can we get stable versions of dice ,fiasco ,hello ,l4env, dope, linux-26-headers, dde_linux26 ,l4ide, ore. Please also let us know menu.lst file for dope with l4env,hello, loader, dde_linux26,l4ide,ore .
This seems to me a bug .. Please solve as soon as possible. We need the loader and other modules for our work as soon as possible. We have a plan to build usb webcam and ex2 filesystem driver as soon as possible.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hello,
first of all, please do not double-post.
root@tapas-laptop:/home/tapas/tudos/l4# gcc --version
^^^^ There is absolutely no reason to build L4 as root user.
gcc (Ubuntu 4.3.2-1ubuntu12) 4.3.2
No problem with that. I'm building with the same compiler.
[..] $svn up dope
Better use the repomgr to checkout DOpE: ./repomgr co dope
[..]
/home/tapas/tudos/l4/pkg/loader/examples/fprov-l4/main.c -o main.o In function ‘open’, inlined from ‘l4fprov_file_ext_write_component’ at /home/tapas/tudos/l4/pkg/loader/examples/fprov-l4/main.c:117: /usr/include/bits/fcntl2.h:51: error: call to ‘__open_missing_mode’ declared with attribute error: open with O_CREAT in second argument needs 3 arguments make[5]: *** [main.o] Error 1 make[5]: Leaving directory `/home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/OBJ-x86_586-l4v2' make[4]: *** [/home/tapas/5thAprilUserbuild/pkg/loader/examples/fprov-l4/OBJ-x86_586-l4v2] Error 2 make[4]: Leaving directory `/home/tapas/tudos/l4/pkg/loader/examples/fprov-l4' make[3]: *** [fprov-l4] Error 2 make[3]: Leaving directory `/home/tapas/tudos/l4/pkg/loader/examples' make[2]: *** [examples] Error 2 make[2]: Leaving directory `/home/tapas/tudos/l4/pkg/loader' make[1]: *** [loader.bin] Error 2 make[1]: Leaving directory `/home/tapas/tudos/l4/pkg' make: *** [pkg] Error 2
Seems there were some modifications to fprov-l4 recently which may be the cause. You can ignore this for now (using your patch) as you won't need this program.
[..]
... Generating simpleterm.dpi LD_PRELOAD=/home/tapas/5thAprilUserbuild/tool/gendep/libgendep.so GENDEP_TARGET=simpleterm.dpi GENDEP_BINARY=perl /home/tapas/tudos/l4/tool/gen_dopecode/gen_dopecode /home/tapas/tudos/l4/pkg/dope/examples/dopecmd/common/simpleterm.dpe
simpleterm.dpi
/bin/bash: /home/tapas/tudos/l4/tool/gen_dopecode/gen_dopecode: No such file or directory make[6]: *** [simpleterm.dpi] Error 127 make[6]: Leaving directory `/home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/OBJ-x86_586-l4v2' make[5]: *** [/home/tapas/5thAprilUserbuild/pkg/dope/examples/dopecmd/l4/OBJ-x86_586-l4v2] Error 2 make[5]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/examples/dopecmd/l4' make[4]: *** [l4] Error 2 make[4]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/examples/dopecmd' make[3]: *** [dopecmd] Error 2 make[3]: Leaving directory `/home/tapas/tudos/l4/pkg/dope/examples' make[2]: *** [examples] Error 2 make[2]: Leaving directory `/home/tapas/tudos/l4/pkg/dope' make[1]: *** [dope.bin] Error 2 make[1]: Leaving directory `/home/tapas/tudos/l4/pkg' make: *** [pkg] Error 2 root@tapas-laptop:/home/tapas/tudos/l4#
This seems to me that some files are not available or deleted from svn
No. It is there. You can manually fix this by going to l4/tool and running "svn up gen_dopecode". Otherwise you may use the repomgr to checkout DOpE as described above and it will do this automatically.
Cheers, Bjoern
l4-hackers@os.inf.tu-dresden.de