buildworld (don't know how to make libc.a)

Hi,

I am trying to make make buildworld DESTDIR=/jail/comp-node1 SRCCONF=/etc/src.conf but receiving the following:

Code:
--------------------------------------------------------------
>>> Building an up-to-date make(1)
--------------------------------------------------------------
make: don't know how to make /jail/comp-node1/usr/lib/libc.a. Stop
*** [make] Error code 2

Stop in /usr/src.
*** [upgrade_checks] Error code 1

Stop in /usr/src.
Environment:
Code:
FreeBSD xbsdhost 9.2-RELEASE FreeBSD 9.2-RELEASE #0 r255898: Thu Sep 26 22:50:31 UTC 2013     root@bake.isc.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64
I updated sources via svn (release/9.2.0). The releng/9.2 also gives the same result.

Using src.conf:
Code:
# This is src.conf for jails
WITHOUT_ACCT="YES"                    # ok
WITHOUT_ACPI="YES"                    # ok
WITHOUT_AMD="YES"                    # ok
WITHOUT_APM="YES"                    # ok
WITHOUT_ASSERT_DEBUG="YES"                # ok
WITHOUT_AT="YES"                    # ok
WITHOUT_ATM="YES"                    # ok
WITHOUT_AUDIT="YES"                    # ok
WITHOUT_AUTHPF="YES"                    # ok
WITHOUT_BIND="YES"                    # ok
WITHOUT_BIND_DNSSEC="YES"                # ok
WITHOUT_BIND_ETC="YES"                    # ok
WITHOUT_BIND_LIBS_LWRES="YES"                # ok
WITHOUT_BIND_MTREE="YES"                # ok
WITHOUT_BIND_NAMED="YES"                # ok
WITHOUT_BIND_UTILS="YES"                # ok
WITHOUT_BLUETOOTH="YES"                    # ok
WITHOUT_BOOT="YES"                    # ol
WITHOUT_BSD_CPIO="YES"                    # ok
WITHOUT_BSNMP="YES"                    # ok
# WITHOUT_BZIP2="YES"                    # ok
WITHOUT_CALENDAR="YES"                    # ok
WITHOUT_CDDL="YES"                    # ok
# WITHOUT_CPP="YES"                    # ok
# WITHOUT_CRYPT="YES"                    # ok, if uncommented no openssl and no openssh
WITHOUT_CTM="YES"                    # ok
WITHOUT_CVS="YES"                    # ok
# WITHOUT_CXX="YES"                    # ok
WITHOUT_DICT="YES"                    # ok
# WITHOUT_DYNAMICROOT="YES"                # ok
WITHOUT_EXAMPLES="YES"                    # ok
WITHOUT_FLOPPY="YES"                    # ok
WITHOUT_FORTH="YES"                    # ok
# WITHOUT_FP_LIBC="YES"                    # ok
WITHOUT_FREEBSD_UPDATE="YES"                # ok
WITHOUT_GAMES="YES"                    # ok
# WITHOUT_GCOV="YES"                    # ok
WITHOUT_GDB="YES"                    # ok
# WITHOUT_GNU="YES"                    # ok
# WITHOUT_GNU_GREP="YES"                # ok
WITHOUT_GPIB="YES"                    # ok
# WITHOUT_GROFF="YES"                    # pl
WITHOUT_GSSAPI="YES"                    # ok
WITHOUT_HTML="YES"                    # ok
# WITH_IDEA="YES"                    # might be illigal to use
WITHOUT_INET6="YES"                    # ok
# WITHOUT_INFO="YES"                    # Some ports fail to build without
# WITHOUT_INSTALLLIB="YES"                # fails to build if uncommented
WITHOUT_IPFILTER="YES"                    # ok
WITHOUT_IPFW="YES"                    # ok
WITHOUT_IPX="YES"                    # ok
WITHOUT_JAIL="YES"                    # ok
WITHOUT_KERBEROS="YES"                    # ok
WITHOUT_KVM="YES"                    # ok
WITHOUT_LEGACY_CONSOLE="YES"                # ok
WITHOUT_LIB32="YES"                    # ok so far, fails to build if selected, don't know why
# WITHOUT_LIBPTHREAD="YES"                # ok. seams that this can be removed, but ....
# WITHOUT_LIBTHR="YES"                    # ok. seams that this can be removed, but ....
# WITHOUT_LOCALES="YES"                    # ok
WITHOUT_LOCATE="YES"                    # ok
WITHOUT_LPR="YES"                    # ok
# WITHOUT_MAIL="YES"                    # ok
WITHOUT_MAILWRAPPER="YES"                # ok, at least seams so
# WITHOUT_MAKE="YES"                    # ok
WITHOUT_MAN="YES"                    # ok
WITHOUT_NCP="YES"                    # ok
WITHOUT_NDIS="YES"                    # ok
WITHOUT_NETCAT="YES"                    # ok
# WITHOUT_NETGRAPH="YES"                # ok        ???
WITHOUT_NIS="YES"                    # ok
WITHOUT_NLS="YES"                    # ok
WITHOUT_NLS_CATALOGS="YES"                # ok
WITHOUT_NS_CACHING="YES"                # ok
WITHOUT_NTP="YES"                    # ok
# WITHOUT_OBJC="YES"                    # ok
# WITHOUT_OPENSSH="YES"                    # ok
# WITHOUT_OPENSSL="YES"                    # ok
# WITHOUT_PAM="YES"                    # ok
WITHOUT_PF="YES"                    # ok
# WITHOUT_PKGTOOLS="YES"                # ok
WITHOUT_PMC="YES"                    # ok
WITHOUT_PORTSNAP="YES"                    # ok
WITHOUT_PPP="YES"                    # ok
WITHOUT_PROFILE="YES"                    # ok
WITHOUT_QUOTAS="YES"                    # ok
WITHOUT_RCMDS="YES"                    # ok
WITHOUT_RCS="YES"                    # ok
WITHOUT_RESCUE="YES"                    # ok
WITHOUT_ROUTED="YES"                    # ok
WITHOUT_SENDMAIL="YES"                    # ok
# WITHOUT_SETUID_LOGIN="YES"                # ok
WITHOUT_SHAREDOCS="YES"                    # ok
# WITHOUT_SSP="YES"                    # ok, good thing to build
# WITHOUT_SYMVER="YES"                    # ok
WITHOUT_SYSCONS="YES"                    # ok
WITHOUT_SYSINSTALL="YES"                # ok
# WITHOUT_TCSH="YES"                    # ok
WITHOUT_TELNET="YES"                    # ok
# WITHOUT_TEXTPROC="YES"                # ok
# WITHOUT_TOOLCHAIN="YES"                # ok
WITHOUT_USB="YES"                    # ok
WITHOUT_WIRELESS="YES"                    # ok
WITHOUT_WPA_SUPPLICANT_EAPOL="YES"            # ok
WITHOUT_ZFS="YES"                    # ok
# WITHOUT_ZONEINFO="YES"                # ok
Any ideas?
 
Ok, I found the solution. Somehow the make /jail/comp-node1/usr/lib/libc.a got into:
Code:
/usr/obj/usr/src/make.amd64/usr/src/usr.bin/make
      327:.depend
  /usr/obj/usr/src_old/make.amd64/usr/src_old/usr.bin/make
     327:.depend
 
It's not really clear what the solution is but I had the same problem. Solved it by NOT setting DESTDIR during buildworld.
 
make buildworld does exactly that; it only builds the world and nothing more. Ergo it's pretty useless to specify a destination directory because nothing gets installed at this stage. That parameter is best reserved for the moment when you're using make installworld.

In general it's best not to define make parameters when they're not needed.
 
Sure. But it's easier to type make DESTDIR=/whatever buildworld installworld than make buildworld; make DESTDIR=/whatever installworld. And it used to work just fine until recently. Oh and this appears to be a problem with stable/9, stable/10 compiles flawlessly with DESTDIR defined during buildworld.
 
iddqd said:
Sure. But it's easier to type make DESTDIR=/whatever buildworld installworld than make buildworld; make DESTDIR=/whatever installworld.
Easier isn't always better, and performing both steps in one run can easily become a recipe for disaster.

If it's ease of use you're after then I'd consider using /etc/make.conf or /etc/src.conf to keep certain often used parameters defined at all times. That way you only need to worry about the commands and can forget about the rest.
 
Back
Top