Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 1 Oct 2016 10:42:24 -0300
From:      Mario Lobo <lobo@bsd.com.br>
To:        freebsd-questions@freebsd.org
Subject:   Centralizing /usr/src compilation
Message-ID:  <20161001104224.6f276332@Papi>

next in thread | raw e-mail | index | archive | help
Hi;

I posted this question a while back. I've been looking 
for what could be wrong without success.

Source is 10-STABLE.

I hava a src master server (10.3.51.50) where I compile src and kernel.
No CPUTYPE or compiler flags are set. On it, I issued 
make buildworld and make buildkernel that proceed with no errors.
I shared its /usr/src and /usr/obj via nfs.

Then, on a slave server, same version and arch as the master, it
has this:

Filesystem               Size    Used   Avail Capacity  Mounted on
/dev/ada0s1a             4.8G    243M    4.2G     5%    /
devfs                    1.0K    1.0K      0B   100%    /dev
/dev/ada0s1d             1.9G    346M    1.4G    19%    /var
/dev/ada0s1e              38G    4.0G     31G    11%    /usr
/dev/ada1s1               28G    4.9M     26G     0%    /www
fdescfs                  1.0K    1.0K      0B   100%    /dev/fd
procfs                   4.0K    4.0K      0B   100%    /proc
10.3.51.50:/usr/src       97G     20G     69G    23%    /usr/src
10.3.51.50:/usr/obj       97G     20G     69G    23%    /usr/obj

In my thoughts, after the compilation on the master, all I had to do
is to go to the src slave and issue:

-cd /usr/src

-mergemaster -p (goes OK).

But when I issue make installworld, I get this:

[/usr/src]>make installworld  
mkdir -p /tmp/install.rlVMvcaV
export PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:
/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:
/usr/obj/usr/src/tmp/legacy/bin:/sbin:/bin:/usr/sbin:/usr/bin ;
progs=$(for prog in [ awk cap_mkdb cat chflags chmod chown  date echo
egrep find grep id install install-info  ln lockf make mkdir mtree
nmtree mv pwd_mkdb  rm sed sh strip sysctl test true uname wc zic
tzsetup   makewhatis; do  if progpath=`which $prog`; then  echo
$progpath;  else  echo "Required tool $prog not found in PATH." >&2;
exit 1;  fi;  done);  libs=$(ldd -f "%o %p\n" -f "%o %p\n" $progs
2>/dev/null | sort -u |  while read line; do  set -- $line;  if [ "$2
2>$3" != "not found" ]; then  echo $2;  else  echo "Required library $1
2>not found." >&2;  exit 1;  fi;  done);  cp $libs
2>$progs /tmp/install.rlVMvcaV cp -R
2>${PATH_LOCALE:-"/usr/share/locale"} /tmp/install.rlVMvcaV/locale
2>cd /usr/src; MAKEOBJDIRPREFIX=/usr/obj MACHINE_ARCH=amd64
2>MACHINE=amd64 CPUTYPE=
2>GROFF_BIN_PATH=/usr/obj/usr/src/tmp/legacy/usr/bin
2>GROFF_FONT_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/groff_font
2>GROFF_TMAC_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/tmac
2>PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:
/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/legacy/bin:
/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:
/tmp/install.rlVMvcaV
2>LD_LIBRARY_PATH=/tmp/install.rlVMvcaV
2>PATH_LOCALE=/tmp/install.rlVMvcaV/locale make -f Makefile.inc1
2>COMPILER_TYPE=clang __MAKE_SHELL=/tmp/install.rlVMvcaV/sh reinstall;
2>MAKEOBJDIRPREFIX=/usr/obj MACHINE_ARCH=amd64 MACHINE=amd64 CPUTYPE=
2>GROFF_BIN_PATH=/usr/obj/usr/src/tmp/legacy/usr/bin
2>GROFF_FONT_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/groff_font
2>GROFF_TMAC_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/tmac
2>PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:
/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/legacy/bin:
/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:
/usr/obj/usr/src/tmp/usr/games:/tmp/install.rlVMvcaV
2>LD_LIBRARY_PATH=/tmp/install.rlVMvcaV
2>PATH_LOCALE=/tmp/install.rlVMvcaV/locale rm -rf /tmp/install.rlVMvcaV

2>Illegal instruction (core dumped) Illegal instruction (core dumped)
2>Illegal instruction (core dumped)
2>--------------------------------------------------------------  
>>> Making hierarchy  
--------------------------------------------------------------
cd /usr/src; make -f Makefile.inc1  LOCAL_MTREE= hierarchy
Illegal instruction (core dumped)
Illegal instruction (core dumped)
Illegal instruction (core dumped)

cd /usr/src/etc;
PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:
/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:
/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:
/usr/obj/usr/src/tmp/usr/games:/usr/obj/usr/src/tmp/legacy/usr/sbin:
/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:
/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:
/usr/obj/usr/src/tmp/usr/games:/tmp/install.rlVMvcaV

make LOCAL_MTREE= distrib-dirs Illegal instruction (core dumped)

mtree -deU -f /usr/src/etc/mtree/BSD.root.dist -p / mtree -deU
-f /usr/src/etc/mtree/BSD.var.dist -p /var empty:  flags ("schg" is not
"none"mtree -deU -f /usr/src/etc/mtree/BSD.usr.dist -p /usr mtree -deU
-f /usr/src/etc/mtree/BSD.include.dist -p /usr/include mtree -deU
-f /usr/src/etc/mtree/BSD.debug.dist -p /usr/lib mtree -deU
-f /usr/src/etc/mtree/BSD.groff.dist -p /usr mtree -deU
-f /usr/src/etc/mtree/BSD.sendmail.dist -p / install -l s
usr/src/sys /sys *** Signal 4

Stop.
make[4]: stopped in /usr/src/etc
*** Error code 1

Stop.
make[3]: stopped in /usr/src
*** Error code 1

Stop.
make[2]: stopped in /usr/src
*** Error code 1

Stop.
make[1]: stopped in /usr/src
*** Error code 1

Stop.
make: stopped in /usr/src

And dmesg on the slave shows:

pid 786 (cc), uid 0: exited on signal 4 (core dumped)
pid 799 (cc), uid 0: exited on signal 4 (core dumped)
pid 816 (cc), uid 0: exited on signal 4 (core dumped)
pid 834 (cc), uid 0: exited on signal 4 (core dumped)
pid 847 (cc), uid 0: exited on signal 4 (core dumped)
pid 864 (cc), uid 0: exited on signal 4 (core dumped)
pid 879 (cc), uid 0: exited on signal 4 (core dumped)
pid 891 (install), uid 0: exited on signal 4 (core dumped)

Can anybody point at some direction on whats wrong here, or 
even bury my idea for good as non workable?

Thanks

-- 
Mario Lobo
http://www.mallavoodoo.com.br
FreeBSD since 2.2.8 [not Pro-Audio.... YET!!]
 
"UNIX was not designed to stop you from doing stupid things, 
because that would also stop you from doing clever things."



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20161001104224.6f276332>