Subject: Re: groff/-current build problems
To: Thor Lancelot Simon <tls@rek.tjls.com>
From: Greywolf <greywolf@starwolf.com>
List: current-users
Date: 12/12/2002 13:20:43
On Fri, 6 Dec 2002, Thor Lancelot Simon wrote:

# In fact, if you try to build using the top-level Makefile and without
# setting DESTDIR, you will end up with a C++ compiler and /usr/lib/crt*
# that are inconsistent, due to the build order.  In the past, we used
# to teach the top-level Makefile to work around such problems but now
# I guess we don't.  The same thing will happen if you naively use
# build.sh, AFAICT; the tools gcc will build a bad groff (if this is not
# the case, I'm not sure how it happened to me, which it did).

In fact, you will not be able to build static C *or* C++ executables
due to the brokenness of this (I was not able to successfully run

	cc -static -O2 foo.c -o foo

with foo.c containing

	main() { printf("Hello, World\n"); }

I got:
/usr/lib/crt0.o: In function `___start':
/usr/lib/crt0.o(.text+0x97): undefined reference to `_fini'
/usr/lib/crt0.o(.text+0xa1): undefined reference to `_init'
*** Error code 1 (continuing)


Stop.

# You can build with NOMAN= set, then build again, or you can set NOMAN,
# then rebuild /usr/lib/crt*, libiberty, and g++ -- your choice, either
# way you get out of the hole.

Does this still apply or is this still likely to be a problem after
I do the above...?

# Thor



				--*greywolf;
--
NetBSD:  All your platform are belong to us.