Date: Sun, 12 Jan 2020 17:32:09 +0100 From: Gordon Bergling <gbergling@googlemail.com> To: freebsd-current@freebsd.org Subject: Re: Building -CURRENT on -STABLE Message-ID: <20200112163209.GA16856@lion.0xfce3.net> In-Reply-To: <D8269108-FAD0-4D3D-A5B0-102F813EF13F@gmail.com> References: <D8269108-FAD0-4D3D-A5B0-102F813EF13F@gmail.com>
index | next in thread | previous in thread | raw e-mail
Hi,
if someone is facing the same error, the build variable MAKEOBJDIRPREFIX must
be set within the environment and _not_ within the make context. I would also
suggest that the source and object directories are on the same partition.
My sources where located in my home directory and the object directory on a
separate zfs pool, but using symlinks to fake the directory structure
wasn't successful. With the following steps I was able to build on the fast
machine, and install via nfs on the client.
On the build machine:
# mkdir -p /boiler/nfs/{src,obj}
# export MAKEOBJDIRPREFIX=/boiler/nfs/obj
# cd /boiler/nfs/src && git pull
# make -s -j 4 buildworld buildkernel > /boiler/nfs/logs/build.log 2>&1
On the target machine (assuming server:/boiler/nfs is mounted on /boiler/nfs at the client)
# env MAKEOBJDIRPREFIX=/boiler/nfs/obj make installkernel
# env MAKEOBJDIRPREFIX=/boiler/nfs/obj make installworld
# mergemaster -Ui -m /boiler/nfs/src/
Best,
Gordon
On Thu, Jan 09, 2020 at 11:45:21AM +0100, Gordon Bergling wrote:
> Hi,
>
> I am currently about to setup an -CURRENT system, which should gets updated via a build
> server that’s runs on -STABLE and shares the src and obj directories via NFS to -CURRENT system.
>
> While doing a „make -s -j 4 buildworld buildkernel“ the builds fails randomly with the following error.
>
> -------------------------------------------------------------------------------------------------
> ===> sbin/fsirand (all)
> ===> sbin/gbde (all)
> ===> sbin/geom (all)
> ===> kerberos5/libexec/kimpersonate (all)
> ld: error: undefined symbol: glabel_class_commands
> >>> referenced by geom.c
> >>> geom.o:(get_class)
>
> ld: error: undefined symbol: glabel_version
> >>> referenced by geom.c
> >>> geom.o:(get_class)
>
> ld: error: undefined symbol: gpart_class_commands
> >>> referenced by geom.c
> >>> geom.o:(get_class)
>
> ld: error: undefined symbol: gpart_version
> >>> referenced by geom.c
> >>> geom.o:(get_class)
> cc: error: linker command failed with exit code 1 (use -v to see invocation)
> --- geom.full ---
> *** [geom.full] Error code 1
>
> make[4]: stopped in /home/gbergling/sources/freebsd/freebsd/sbin/geom
> 1 error
>
> make[4]: stopped in /home/gbergling/sources/freebsd/freebsd/sbin/geom
> A failure has been detected in another branch of the parallel make
> -------------------------------------------------------------------------------------------------
>
> I also tried the build without the „j“-Flag but the error was the same.
>
> Do you have any hints what could have caused this?
>
> The -STABLE machine is stock and no special things are setup within src.conf or make.conf.
>
> Best regards,
>
> Gordon
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20200112163209.GA16856>
