Problema con installworld e compilatore

Franco Marchesini <[email protected]> Thu, 22 Dec 2016 12:25:10 +0100
Newsgroups gmane.os.freebsd.italian.esperti
Message-ID <CAP6J_dPS1wTc8zgDbpQRFOyff7khyMhOs6VYYikZ=7Wv5Qmq6g@mail.gmail.com>
Ciao,

ho fatto una nuova macchina con 11 amd64 + zfs per sperimentare le jails su=
 zfs.
Dopo aver aggiornato la macchina con freebsd-update fetch install:

root@jails:/usr/src # uname -a
FreeBSD jails 11.0-RELEASE-p2 FreeBSD 11.0-RELEASE-p2 #0: Mon Oct 24
06:55:27 UTC 2016
[email protected]:/usr/obj/usr/src/sys/GENERIC  amd64

ho seguito pedissequamente quanto riportato nell'handbook per la
creazione del template ed ho avuto il primo errore:

root@jails:/usr/src # make installworld DESTDIR=3D/home/j/mroot
mkdir -p /tmp/install.bGPJCDUE
progs=3D$(for prog in [ awk cap_mkdb cat chflags chmod chown cmp cp
date echo egrep find grep id install   ln make mkdir mtree mv pwd_mkdb
 rm sed services_mkdb sh strip sysctl test true uname wc zic tzsetup
makewhatis; do  if progpath=3D`which $prog`; then  echo $progpath;  else
 echo "Required tool $prog not found in PATH." >&2;  exit 1;  fi;
done);  libs=3D$(ldd -f "%o %p\n" -f "%o %p\n" $progs 2>/dev/null | sort
-u |  while read line; do  set -- $line;  if [ "$2 $3" !=3D "not found"
]; then  echo $2;  else  echo "Required library $1 not found." >&2;
exit 1;  fi;  done);  cp $libs $progs /tmp/install.bGPJCDUE
cp -R ${PATH_LOCALE:-"/usr/share/locale"} /tmp/install.bGPJCDUE/locale
cd /usr/src; MAKEOBJDIRPREFIX=3D/usr/obj  MACHINE_ARCH=3Damd64
MACHINE=3Damd64  CPUTYPE=3D
GROFF_BIN_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/bin
GROFF_FONT_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/groff_font
GROFF_TMAC_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/tmac CC=3D"cc "
CXX=3D"c++  "  CPP=3D"cpp "  AS=3D"as" AR=3D"ar" LD=3D"ld" NM=3Dnm
OBJDUMP=3Dobjdump OBJCOPY=3D"objcopy"  RANLIB=3Dranlib STRINGS=3D  SIZE=3D"=
size"
PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr=
/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj=
/usr/src/tmp/usr/bin:/tmp/install.bGPJCDUE
 LD_LIBRARY_PATH=3D/tmp/install.bGPJCDUE
PATH_LOCALE=3D/tmp/install.bGPJCDUE/locale make -f Makefile.inc1
__MAKE_SHELL=3D/tmp/install.bGPJCDUE/sh reinstall;
MAKEOBJDIRPREFIX=3D/usr/obj  MACHINE_ARCH=3Damd64  MACHINE=3Damd64  CPUTYPE=
=3D
GROFF_BIN_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/bin
GROFF_FONT_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/groff_font
GROFF_TMAC_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/tmac CC=3D"cc "
CXX=3D"c++  "  CPP=3D"cpp "  AS=3D"as" AR=3D"ar" LD=3D"ld" NM=3Dnm
OBJDUMP=3Dobjdump OBJCOPY=3D"objcopy"  RANLIB=3Dranlib STRINGS=3D  SIZE=3D"=
size"
PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr=
/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj=
/usr/src/tmp/usr/bin:/tmp/install.bGPJCDUE
 LD_LIBRARY_PATH=3D/tmp/install.bGPJCDUE
PATH_LOCALE=3D/tmp/install.bGPJCDUE/locale rm -rf /tmp/install.bGPJCDUE
sh: cc: not found
make[2]: "/usr/src/share/mk/bsd.compiler.mk" line 145: Unable to
determine compiler type for CC=3Dcc .  Consider setting COMPILER_TYPE.
*** Error code 1

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

Stop.
make: stopped in /usr/src

non riconosce il compilatore e visto che e' clang

root@jails:/usr/src # cc -v
FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on
LLVM 3.8.0)
Target: x86_64-unknown-freebsd11.0
Thread model: posix
InstalledDir: /usr/bin

ho rieseguito il comando impostando COMPILER_TYPE a clang

root@jails:/usr/src # make installworld DESTDIR=3D/home/j/mroot
COMPILER_TYPE=3Dclang
mkdir -p /tmp/install.dgztjDQu
progs=3D$(for prog in [ awk cap_mkdb cat chflags chmod chown cmp cp
date echo egrep find grep id install   ln make mkdir mtree mv pwd_mkdb
 rm sed services_mkdb sh strip sysctl test true uname wc zic tzsetup
makewhatis; do  if progpath=3D`which $prog`; then  echo $progpath;  else
 echo "Required tool $prog not found in PATH." >&2;  exit 1;  fi;
done);  libs=3D$(ldd -f "%o %p\n" -f "%o %p\n" $progs 2>/dev/null | sort
-u |  while read line; do  set -- $line;  if [ "$2 $3" !=3D "not found"
]; then  echo $2;  else  echo "Required library $1 not found." >&2;
exit 1;  fi;  done);  cp $libs $progs /tmp/install.dgztjDQu
cp -R ${PATH_LOCALE:-"/usr/share/locale"} /tmp/install.dgztjDQu/locale
cd /usr/src; MAKEOBJDIRPREFIX=3D/usr/obj  MACHINE_ARCH=3Damd64
MACHINE=3Damd64  CPUTYPE=3D
GROFF_BIN_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/bin
GROFF_FONT_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/groff_font
GROFF_TMAC_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/tmac CC=3D"cc "
CXX=3D"c++  "  CPP=3D"cpp "  AS=3D"as" AR=3D"ar" LD=3D"ld" NM=3Dnm
OBJDUMP=3Dobjdump OBJCOPY=3D"objcopy"  RANLIB=3Dranlib STRINGS=3D  SIZE=3D"=
size"
PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr=
/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj=
/usr/src/tmp/usr/bin:/tmp/install.dgztjDQu
 LD_LIBRARY_PATH=3D/tmp/install.dgztjDQu
PATH_LOCALE=3D/tmp/install.dgztjDQu/locale make -f Makefile.inc1
__MAKE_SHELL=3D/tmp/install.dgztjDQu/sh reinstall;
MAKEOBJDIRPREFIX=3D/usr/obj  MACHINE_ARCH=3Damd64  MACHINE=3Damd64  CPUTYPE=
=3D
GROFF_BIN_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/bin
GROFF_FONT_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/groff_font
GROFF_TMAC_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/tmac CC=3D"cc "
CXX=3D"c++  "  CPP=3D"cpp "  AS=3D"as" AR=3D"ar" LD=3D"ld" NM=3Dnm
OBJDUMP=3Dobjdump OBJCOPY=3D"objcopy"  RANLIB=3Dranlib STRINGS=3D  SIZE=3D"=
size"
PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr=
/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj=
/usr/src/tmp/usr/bin:/tmp/install.dgztjDQu
 LD_LIBRARY_PATH=3D/tmp/install.dgztjDQu
PATH_LOCALE=3D/tmp/install.dgztjDQu/locale rm -rf /tmp/install.dgztjDQu
sh: cc: not found
--------------------------------------------------------------
>>> Making hierarchy
--------------------------------------------------------------
cd /usr/src; make -f Makefile.inc1  LOCAL_MTREE=3D hierarchy
sh: cc: not found
cd /usr/src/etc;
PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr=
/bin:/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/legacy/usr/sbin:/usr/obj/usr/src/=
tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr=
/sbin:/usr/obj/usr/src/tmp/usr/bin:/tmp/install.dgztjDQu
make LOCAL_MTREE=3D distrib-dirs
sh: cc: not found
for file in /usr/share/doc/usd/10.exref /usr/share/doc/usd/11.edit
/usr/share/doc/usd/12.vi /usr/share/doc/usd/13.viref; do  if [ -f
/home/j/mroot/${file} ]; then  rm -f /home/j/mroot/${file};  fi;  done
mtree -deU -i -f /usr/src/etc/mtree/BSD.root.dist -p /home/j/mroot/
mtree -deU -i -f /usr/src/etc/mtree/BSD.var.dist -p /home/j/mroot/var
mtree -deU -i -f /usr/src/etc/mtree/BSD.usr.dist -p /home/j/mroot/usr
mtree -deU -i -f /usr/src/etc/mtree/BSD.include.dist -p
/home/j/mroot/usr/include
mtree -deU -i -f /usr/src/etc/mtree/BSD.debug.dist -p /home/j/mroot/usr/lib
mtree -deU -i -f /usr/src/etc/mtree/BSD.groff.dist -p /home/j/mroot/usr
mtree -deU -i -f /usr/src/etc/mtree/BSD.lib32.dist -p /home/j/mroot/usr
mtree -deU -i -f /usr/src/etc/mtree/BSD.lib32.dist -p
/home/j/mroot/usr/lib/debug/usr
mtree -deU -i -f /usr/src/etc/mtree/BSD.tests.dist -p /home/j/mroot/usr/tes=
ts
mtree -deU -i -f /usr/src/etc/mtree/BSD.tests.dist -p
/home/j/mroot/usr/lib/debug//usr/tests
mtree -deU -i -f /usr/src/etc/mtree/BSD.sendmail.dist -p /home/j/mroot/
install -l s usr/src/sys /home/j/mroot/sys
cd /home/j/mroot/usr/share/man;  for mandir in man*; do  install -l s
../$mandir  /home/j/mroot/usr/share/man/en.ISO8859-1/;  install -l s
../$mandir  /home/j/mroot/usr/share/man/en.UTF-8/;  done
cd /home/j/mroot/usr/share/openssl/man;  for mandir in man*; do
install -l s ../$mandir
/home/j/mroot/usr/share/openssl/man/en.ISO8859-1/;  done
set - `grep "^[a-zA-Z]" /usr/src/etc/man.alias`;  while [ $# -gt 0 ] ;
do  install -l s "$2" "/home/j/mroot/usr/share/man/$1";  if [ "yes" !=3D
"no" ]; then  install -l s "$2"
"/home/j/mroot/usr/share/openssl/man/$1";  fi;  shift; shift;  done
set - `grep "^[a-zA-Z]" /usr/src/etc/nls.alias`;  while [ $# -gt 0 ] ;
do  install -l s "$2" "/home/j/mroot/usr/share/nls/$1";  shift; shift;
 done

--------------------------------------------------------------
>>> Installing everything
--------------------------------------------------------------
cd /usr/src; make -f Makefile.inc1 install
sh: cc: not found
=3D=3D=3D> lib (install)
sh: cc: not found
=3D=3D=3D> lib/csu (install)
sh: cc: not found
=3D=3D=3D> lib/csu/amd64 (install)
sh: cc: not found
cc  -O2 -pipe -I/usr/src/lib/csu/amd64/../common
-I/usr/src/lib/csu/amd64/../../libc/include -fno-omit-frame-pointer
-std=3Dgnu99  -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
-Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes
-Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch
-Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline
-Wnested-externs -Wredundant-decls -Wold-style-definition
-Wno-pointer-sign -Wthread-safety -Wno-empty-body -Wno-string-plus-int
 -Qunused-arguments  ERROR-tried-to-rebuild-during-make-install -S -o
crt1.s /usr/src/lib/csu/amd64/crt1.c
/tmp/install.dgztjDQu/sh: cc: not found
*** Error code 127

Stop.
make[6]: stopped in /usr/src/lib/csu/amd64
*** Error code 1

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

Stop.
make[4]: stopped in /usr/src/lib
*** 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

ho bypassato l'errore sul COMPILER_TYPE ma adesso non riconosce cc

Sembrerebbe un baco corretto, da quello che ho capito, ma
evidentemente non e' cosi'?
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D212877#c3

Qualcuno ha qualche idea?

Grazie
Franco

_______________________________________________
Esperti mailing list
[email protected]
http://mailman.gufi.org/mailman/listinfo/esperti