Re: Build L4::Pistachio on FC5
MingyanGuo <[email protected]>
| Newsgroups | gmane.comp.micro-kernel.l4.l4ka.general |
|---|---|
| Message-ID | <[email protected]> |
On 7/5/06, Jan Stoess <[email protected]> wrote: > > Hi MingyanGuo, > > > Hi all, > > > > I use gcc32/g++32 on FC5 to build L4::Pistachio(default CC and CXX on > FC5 > > are gcc4, so I > > set CC and CXX environment variables to gcc32 and g++32) but failed. > > The error message is below. > > ---------------------<<<<cut>>>>------------------------------- > > > of src/api/v4/space.o: defined in discarded section > > `.gnu.linkonce.t._ZN8cpu_mb_t5allocEv' of src/api/v4/space.o > > `.gnu.linkonce.t._ZN8cpu_mb_t5allocEv' referenced in section > `.spinlock' > > Is your gcc4 version 4.1.X? Then I suspect that you're still using that > compiler. Your debug output looks like it's a (known but still) > unresolved compiler issue that occurs when using recent gcc 4.1 > compilers, some versions of ld, and the SMP version of pistachio. So if > you need SMP support I'd suggest to use an older version of gcc, e.g. > via "make CC=gcc3". You could also try switching to a different version > of ld. It compiles for me with gcc 4.1 and ld 2.16.1 with linker > warnings, but not with gcc 4.1 and ld 2.16.91.X. gcc3 does not cause > problems with both linker versions. By the way, I do only have that > problem if I disable debugging symbols being included within the binary > in pistachio's menu config as well. If you don't need SMP, just try > disable it; you can do so in the config menu. You also might want to > have a look at > > http://l4ka.org/projects/pistachio/buildstatus/ > > a webpage that lists the weekly build status of pistachio on different > architectures and with different compilers. > Regards, > -Jan > Thanks for your help. The compiler I used to build Pistachio is gcc32/g++32, and here is part of the output of `make' -------------------------<<<<cut>>>>--------------------------------- ===> src/generic/kmemory.cc cd src/generic/ && gcc32 -nostdinc -I/home/prime/pistachio-0.4/ia32-kernel-build/include -I/home/prime/pistachio-0.4/kernel/include -I/usr/lib/gcc-lib/i386-redhat-linux/3.2.3/include -Uia32 -Ui586 -Upc99 -Uv4 -D__ARCH__=ia32 -D__CPU__=i586 -D__PLATFORM__=pc99 -D__API__=v4 -imacros /home/prime/pistachio- 0.4/ia32-kernel-build/config/config.h -imacros /home/prime/pistachio-0.4/kernel/include/macros.h -include /home/prime/pistachio-0.4/kernel/include/config.h -include /home/prime/pistachio-0.4/kernel/include/types.h -fno-builtin -fomit-frame-pointer -fno-exceptions -Wall -Wno-format -Wconversion -O2 -mpreferred-stack-boundary=2 -march=i586 -c /home/prime/pistachio- 0.4 /kernel/src/generic/kmemory.cc -------------------------<<<<cut>>>>--------------------------------- According to your suggestion, I disable the SMP support and it is OK now. Thanks :-). I build Pistachio just to do some experiments, and I think the SMP version is more general than UP version, so I prefer SMP support enabled even not needed. Regards, MingyanGuo -- Three passions, simple but overwhelmingly strong, have governed my life: the longing for love, the search for knowledge, and unbearable pity for the suffering of mankind. ---------Bertrand Russell -- Three passions, simple but overwhelmingly strong, have governed my life: the longing for love, the search for knowledge, and unbearable pity for the suffering of mankind. ---------Bertrand Russell