getting back buildworld to work!

Toxa postfix at
Sat Apr 10 17:11:43 PDT 2004

Hello, folks.

Last night, as usual, current sources were cvsuped, I did buildkernel
& buildworld & installkernel, reboot to fresh kernel, and run
installworld after it. Unfortunately, system failed during
installworld, so I had only part of new world installed (actually it
was only few seconds of installworld'ing before failure). I can figure
it now, because when I try to make buildworld, I see errors like this:

/usr/src/contrib/gperf/src/ In function `List_Node*
   parse_line(const char*, const char*)':
/usr/src/contrib/gperf/src/ error: `__UCHAR_MAX' undeclared
   (first use this function)

Sure, error is the lack of headers in /usr/include (and maybe another
world files), because of failed
installworld, isn't it?. How can I correct this? I took 5.2.1-release miniiso,
untar base distribution (base.?? files), move /usr/include to /usr/include.old, copy
base/usr/include to /usr/include and
rerum make buildworld. Headers are Ok now but then the new problem arrived:

/usr/lib/libc.a: could not read symbols: Malformed archive
*** Error code 1

Ok, I repeat this with /usr/lib: move /usr/lib to /usr/lib.old and cp
base/usr/lib to /usr/lib, and rerun buildworld. I get the new one:

c++ -O2 -pipe -mno-sse2 -march=pentium4 -ffast-math -funroll-loops -I/usr/obj/usr/src/i386/legacy/usr/include -I/usr/src/gnu/usr.bin/gperf/../../../contrib/gperf/lib -I/usr/src/gnu/usr.bin/gperf  -static -L/usr/obj/usr/src/i386/legacy/usr/lib -o gperf bool-array.o gen-perf.o hash-table.o iterator.o key-list.o list-node.o main.o new.o options.o read-line.o trace.o vectors.o version.o hash.o -legacy
options.o: In function `__static_initialization_and_destruction_0(int, int)':
options.o(.text+0xe1b): undefined reference to `__cxa_atexit'
*** Error code 1

This one I can't work out. What was damaged except /usr/lib and
/usr/include (ok, maybe only /usr/include, I think some libs in /usr/lib simply depends on
/usr/include) during installworld failure? What should I do now to
rollback system to a state then it will able to make buildworld?

ps: buildkernel goes smoothly from startpoint to endpoint now, but buildworld,
as you can see, does not.

Thanks a lot for all advices and responces.

Best regards,
 Toxa                          mailto:postfix at

More information about the freebsd-current mailing list