This is strange because, looking in the ld man, the other error looks like ld can't find libc.a which is normally in the default include path (/usr/lib/libc.a on my old debian). Can you compile any other program ?
[EMAIL PROTECTED] wrote:
Hi,
Unfortunately, the problem remains. I\'ve tried both solutions, separately and together, and make linux ARCH=um still ends with:
"ld -r -o unmap_fin.o unmap.o -lc -L/usr/lib
ld: cannot find -lc " (...)
perhaps there is another reason?
Thank you for your help,
Adam
Vincent Guffens <[EMAIL PROTECTED]> :
Hi,
I don\\\'t know what is the clean way to fix it, but I was able to compile 2.4.24 with gcc-3.4.2 wich gives the same error.
The problem is due to the FASTCALL macro which is defined in
include/linux/kernel.h
If you modify this definition like so :
#ifdef __i386__ #define FASTCALL(x) x #else #define FASTCALL(x) x #endif
It will compile. You can also remove the UM_FASTCALL from from CFLAGS in arch/um/Makefile-i386 (according to http://jdike.stearns.org/uml/faq.html)
Off course, these changes will also remove the optimization.
Also, if you want to run uml2.4 on a 2.6 host, I think you will also need a uml patch.
I hope it helps,
[EMAIL PROTECTED] wrote:
Hello,
Could you please help me?
Here\\\'s a problem I\\\'ve encountered when trying to compile an UML (User Mode Linux) linux binary:
Details:
1) I am working with Mandrake 10.1 Official distribution
2) I got 2.4.27 kernel and uml patch 2.4.27-1
3) Applied the patch - worked well
4) Did make xconfig ARCH=um and saved standard configuration
5) Then I\\\'ve tried make linux ARCH=um but got problems:
a) with gcc 3.4.1 that I started with (standard Mandrake 10.1 instalation) I\\\'ve got a lot of errors like:
"sched.c:839: error: conflicting types for \\\'sleep_on_timeout\\\'
/home/adam/work/UML/linux-2.4.27/include/linux/sched.h:598: error: previous declaration of \\\'sleep_on_timeout\\\'
was here"
So I guessed it was a gcc/Mandrake problem..
b) with gcc 3.3.1-2mdk or gcc 2.96-063mdk I got another problem - make linux ARCH=um runs smooth
until it gets to linking: here is what I\\\'ve got: "ld -r -o unmap_fin.o unmap.o -lc -L/usr/lib ld: cannot find -lc make[3]: *** [unmap_fin.o] Error 1 make[3] Leaving directory `/home/adam/work/UML/linux-2.4.27/arch/um/kernel/tt\\\' ..."
Could anybody please help me? My goal is to get UML in order to make some changes to kernel (A patch I\\\'ve got
to write), so downloading binary linux with maps&config is no solution - I need to be able to compile this. And I
guess I need to start with raw UML working :\\\\ What should I do?
P.S As you can see, I am not building it in /usr/src/linux
Thank you, Adam
------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ User-mode-linux-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/user-mode-linux-user
--
Vincent Guffens
PhD Student UCL/CESAME
tel: +32 10 47 80 30
Value your freedom, or you will lose it, teaches history.
"Don't bother us with politics," respond those who don't want to learn.
-- Richard M. Stallman
------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ User-mode-linux-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/user-mode-linux-user
