Hello,
Is it possible to compile DROPS with GCC 4 now?
No, because there are some applications using Linux 2.4 sources (l4io, dde_linux, ORe, ...), which in turn do not compile with GCC4.
Do you have experience in linking libraries compiled with GCC 3.x with other code compiled with GCC 4?
No, I'm sorry.
Within EMSCB we try to move towards recent GCC versions and therefore currently encounter this problem.
DROPS only supports GCC major number 3 up to now. Many packets should compile with GCC4, but those that use Linux kernel sources will not do so until we switch everything to Linux 2.6.
Do you have a list of packages not compatible with GCC 4 due to the above reasons? Probably we don't need these packages anyway.
The following packages in my local L4 tree reference the LINUX24_INCDIR make variable:
dde_linux dsound l4io nethub ore socket_linux usb usbhid video
BTW: Why does l4io need Linux 2.4 sources?
Because it accesses PCI hardware. (rest of explanation below)
And: I thought you already moved to Linux 2.6 completely?
Note, that here is a difference between L4Linux and the use of Linux sources in DROPS. L4Linux is always at the latest 2.6 kernel version and works.
To provide an easy way for direct hardware access from L4 servers and to support a large amount of hardware, DROPS uses legacy Linux device drivers. This is achieved by emulating a Linux driver environment through dde_linux (http://tudos.org/papers_ps/helmuth-diplom.pdf) and running the device drivers (nearly) unmodified within L4 servers.
dde_linux currently supports Linux 2.4 and moving it to 2.6 is on the agenda, but I cannot tell you when this will be finished (the sooner the better...).
So far Bjoern