Re: CLANG buildworld failure: lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory
On 03/05/12 08:45, Dimitry Andric wrote: > On 2012-03-05 00:40, O. Hartmann wrote: > ... >> All right, my /etc/src.conf looks like this now (as it does before): >> >> WITH_CLANG= YES >> WITH_CLANG_EXTRAS= YES >> # >> WITH_BIND_LIBS= YES >> WITH_BIND_SIGCHASE= YES >> WITH_BIND_LARGE_FILE= YES >> # >> WITH_IDEA= YES >> WITH_HESIOD=YES >> # >> #WITH_ICONV=YES >> #WITH_BSD_GREP= YES >> # >> WITH_LIBCPLUSPLUS= YES >> # >> #WITH_OFED= YES >> >> When cc is now clang, c++ is now clang++, what effect do have >> CFLAGS.cc="blablabla" and CFLAGS.clang="blabla"? > > None. These variables are not part of the build system. They are just > a suggestion posted by people on the mailing list. You must still use a > statement somewhere that adds one of the variables to the "real" CFLAGS, > and that statement will need knowledge about what "cc" is. > > Note, I would suggest using the names CFLAGS.gcc and CFLAGS.clang > instead. Ah, I see. Sorry for the noise. I picked up the thread and thought this might be a fact by now. NAd yes, I'd rather follow your suggestion, it makes things more clear. > > >> If the binary "cc" after this treatment is in reality "clang", then >> logic implies that equality exists: >> CFLAGS.cc = CFLAGS.clang = "blabla" > > See above. > > >> What should /etc/make.conf contain not to confuse settings in >> /etc/src.conf? > > I'm not sure what you mean with "confuse"? The settings in make.conf > are read earlier than those in src.conf, so the latter can override the > former. > > Also, the settings in make.conf are *always* read, even if you are using > a non-BSD Makefile (one that doesn't contain .include or > similar at the end). > > > ... clang: warning: argument unused during compilation: '-std=gnu99' strfile.o: In function `main': /usr/src/games/fortune/strfile/strfile.c:(.text+0x2e0): undefined reference to `_ThreadRuneLocale' >>> >>> This is unrelated to the 'cc' problem, but I suggest deleting /usr/obj/* >>> and starting the build from scratch. >>> >> >> >> Before I start "make buildworld", I always delete the content of >> /usr/obj/*, so there are never remains aof anything left behinf from >> earlier compiles. >> >> You're right, this is at the first sight unrelated to the cc issue and >> should be treated separetely. > > I have compiled multiple worlds now from the latest trunk, with both gcc > and clang, but I have not been able to reproduce your errors yet. Since yesterday/today's night, I'm also able to compile again the system. The solution is obscure and a kind of "hoodovoodo" (at least for me). I "updated" backwards the sources via "svn -r 232496 update", then again a simple "make update" in /usr/src. After this procedure the problem vanished. I have no idea what's wrong. Since I thought I might have destroyed my OS by accidentaly interrupting the installation of libc once, were a similar error occured but in another context, I think I'm rather better deleting the /usr/src and doing again an checkout. Something seems very fishy ... Regards, Oliver signature.asc Description: OpenPGP digital signature
Re: CLANG buildworld failure: lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory
On 2012-03-05 00:40, O. Hartmann wrote: ... > All right, my /etc/src.conf looks like this now (as it does before): > > WITH_CLANG= YES > WITH_CLANG_EXTRAS= YES > # > WITH_BIND_LIBS= YES > WITH_BIND_SIGCHASE= YES > WITH_BIND_LARGE_FILE= YES > # > WITH_IDEA= YES > WITH_HESIOD=YES > # > #WITH_ICONV=YES > #WITH_BSD_GREP= YES > # > WITH_LIBCPLUSPLUS= YES > # > #WITH_OFED= YES > > When cc is now clang, c++ is now clang++, what effect do have > CFLAGS.cc="blablabla" and CFLAGS.clang="blabla"? None. These variables are not part of the build system. They are just a suggestion posted by people on the mailing list. You must still use a statement somewhere that adds one of the variables to the "real" CFLAGS, and that statement will need knowledge about what "cc" is. Note, I would suggest using the names CFLAGS.gcc and CFLAGS.clang instead. > If the binary "cc" after this treatment is in reality "clang", then > logic implies that equality exists: > CFLAGS.cc = CFLAGS.clang = "blabla" See above. > What should /etc/make.conf contain not to confuse settings in > /etc/src.conf? I'm not sure what you mean with "confuse"? The settings in make.conf are read earlier than those in src.conf, so the latter can override the former. Also, the settings in make.conf are *always* read, even if you are using a non-BSD Makefile (one that doesn't contain .include or similar at the end). ... >>> clang: warning: argument unused during compilation: '-std=gnu99' >>> strfile.o: In function `main': >>> /usr/src/games/fortune/strfile/strfile.c:(.text+0x2e0): undefined >>> reference to `_ThreadRuneLocale' >> >> This is unrelated to the 'cc' problem, but I suggest deleting /usr/obj/* >> and starting the build from scratch. >> > > > Before I start "make buildworld", I always delete the content of > /usr/obj/*, so there are never remains aof anything left behinf from > earlier compiles. > > You're right, this is at the first sight unrelated to the cc issue and > should be treated separetely. I have compiled multiple worlds now from the latest trunk, with both gcc and clang, but I have not been able to reproduce your errors yet. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: CLANG buildworld failure: lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory
On 03/04/12 22:46, Dimitry Andric wrote: > On 2012-03-04 21:34, O. Hartmann wrote: > ... >> Where are those new "WITH_CLANG_" tags documented? > > In src.conf(5), where all the WITH_ and WITHOUT_ settings are > documented. > > I should probably have sent a heads up to this list, to announce this > new setting, which installs clang as /usr/bin/cc, /usr/bin/c++ and > /usr/bin/cpp, effectively making it the "default compiler". > > That said, I made a mistake in r232322, which introduced the setting, > causing gcc not to be built at all if you had all default settings, > except CC=clang, CXX=clang++ and CPP=clang-cpp. > > This caused no 'cc', 'c++' and 'cpp' executables to be installed under > the temporary object tree. It should theoretically work, but some tools > like lint still have 'cc' hardcoded, and thus they fail. > > I have worked around this in r232522. Please update to that revision, > and try again. All right, my /etc/src.conf looks like this now (as it does before): WITH_CLANG= YES WITH_CLANG_EXTRAS= YES # WITH_BIND_LIBS= YES WITH_BIND_SIGCHASE= YES WITH_BIND_LARGE_FILE= YES # WITH_IDEA= YES WITH_HESIOD=YES # #WITH_ICONV=YES #WITH_BSD_GREP= YES # WITH_LIBCPLUSPLUS= YES # #WITH_OFED= YES When cc is now clang, c++ is now clang++, what effect do have CFLAGS.cc="blablabla" and CFLAGS.clang="blabla"? If the binary "cc" after this treatment is in reality "clang", then logic implies that equality exists: CFLAGS.cc = CFLAGS.clang = "blabla" What should /etc/make.conf contain not to confuse settings in /etc/src.conf? I commented for now out everything that was recommended to be set when one wants to use CLANG as the default compiler. My binary /usr/bin/cc reports itself still to be gcc 4.2.1, so cc = gcc-4.2.1. My system is at 10.0-CURRENT #0 r232497. My sources, which are impossible to build now, are at Revision: 232526. > > >> In my case things developed even worse. After the last "make update" in >> /usr/src (SVN based), I can't even build a kernel (make buildworld fails >> very early): >> >> ===> games/fortune/strfile (obj,depend,all,install) >> /usr/obj/usr/src/tmp/usr/src/games/fortune/strfile created for >> /usr/src/games/fortune/strfile >> rm -f .depend >> CC='clang' mkdep -f .depend -a >> -I/usr/obj/usr/src/tmp/legacy/usr/include -std=gnu99 >> /usr/src/games/fortune/strfile/strfile.c >> echo strfile: /usr/lib/libc.a >> /usr/obj/usr/src/tmp/legacy/usr/lib/libegacy.a >> .depend >> clang -O2 -pipe -O2 -fno-strict-aliasing -pipe -std=gnu99 >> -I/usr/obj/usr/src/tmp/legacy/usr/include -c >> /usr/src/games/fortune/strfile/strfile.c >> clang -O2 -pipe -O2 -fno-strict-aliasing -pipe -std=gnu99 >> -I/usr/obj/usr/src/tmp/legacy/usr/include -static >> -L/usr/obj/usr/src/tmp/legacy/usr/lib -o strfile strfile.o -legacy >> clang: warning: argument unused during compilation: '-std=gnu99' >> strfile.o: In function `main': >> /usr/src/games/fortune/strfile/strfile.c:(.text+0x2e0): undefined >> reference to `_ThreadRuneLocale' > > This is unrelated to the 'cc' problem, but I suggest deleting /usr/obj/* > and starting the build from scratch. > Before I start "make buildworld", I always delete the content of /usr/obj/*, so there are never remains aof anything left behinf from earlier compiles. You're right, this is at the first sight unrelated to the cc issue and should be treated separetely. Regards, Oliver signature.asc Description: OpenPGP digital signature
Re: CLANG buildworld failure: lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory
On 2012-03-04 21:34, O. Hartmann wrote: ... > Where are those new "WITH_CLANG_" tags documented? In src.conf(5), where all the WITH_ and WITHOUT_ settings are documented. I should probably have sent a heads up to this list, to announce this new setting, which installs clang as /usr/bin/cc, /usr/bin/c++ and /usr/bin/cpp, effectively making it the "default compiler". That said, I made a mistake in r232322, which introduced the setting, causing gcc not to be built at all if you had all default settings, except CC=clang, CXX=clang++ and CPP=clang-cpp. This caused no 'cc', 'c++' and 'cpp' executables to be installed under the temporary object tree. It should theoretically work, but some tools like lint still have 'cc' hardcoded, and thus they fail. I have worked around this in r232522. Please update to that revision, and try again. > In my case things developed even worse. After the last "make update" in > /usr/src (SVN based), I can't even build a kernel (make buildworld fails > very early): > > ===> games/fortune/strfile (obj,depend,all,install) > /usr/obj/usr/src/tmp/usr/src/games/fortune/strfile created for > /usr/src/games/fortune/strfile > rm -f .depend > CC='clang' mkdep -f .depend -a > -I/usr/obj/usr/src/tmp/legacy/usr/include -std=gnu99 > /usr/src/games/fortune/strfile/strfile.c > echo strfile: /usr/lib/libc.a > /usr/obj/usr/src/tmp/legacy/usr/lib/libegacy.a >> .depend > clang -O2 -pipe -O2 -fno-strict-aliasing -pipe -std=gnu99 > -I/usr/obj/usr/src/tmp/legacy/usr/include -c > /usr/src/games/fortune/strfile/strfile.c > clang -O2 -pipe -O2 -fno-strict-aliasing -pipe -std=gnu99 > -I/usr/obj/usr/src/tmp/legacy/usr/include -static > -L/usr/obj/usr/src/tmp/legacy/usr/lib -o strfile strfile.o -legacy > clang: warning: argument unused during compilation: '-std=gnu99' > strfile.o: In function `main': > /usr/src/games/fortune/strfile/strfile.c:(.text+0x2e0): undefined > reference to `_ThreadRuneLocale' This is unrelated to the 'cc' problem, but I suggest deleting /usr/obj/* and starting the build from scratch. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: CLANG buildworld failure: lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory
On 03/04/12 18:51, Pegasus Mc Cleaft wrote: > On Sunday 04 March 2012 16:27:56 Manfred Antar wrote: >> At 05:25 AM 3/4/2012, O. Hartmann wrote: >>> Buildworld of FBSD 10.o-CUR/amd64 fails with the below shown error >>> messages since this weekend: >>> >>> >>> clang -O2 -pipe -O2 -fno-strict-aliasing -pipe -pipe -O3 >>> -fno-strict-aliasing -march=native >>> -I/usr/src/usr.bin/xlint/xlint/../lint1 -DPREFIX=\"\" >>> -I/usr/src/usr.bin/xlint/xlint/../arch/amd64 >>> -I/usr/src/usr.bin/xlint/xlint/../common -std=gnu99 -fstack-protector >>> -Wsystem-headers -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 -o xlint >>> xlint.o mem.o >>> clang: warning: argument unused during compilation: '-std=gnu99' >>> gzip -cn /usr/src/usr.bin/xlint/xlint/lint.1 > lint.1.gz >>> ===> usr.bin/xlint/llib (all) >>> lint -cghapbx -Cposix /usr/src/usr.bin/xlint/llib/llib-lposix >>> llib-lposix: >>> lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or >>> directory *** [llib-lposix.ln] Error code 1 >>> >>> Stop in /usr/src/usr.bin/xlint/llib. >>> *** [all] Error code 1 >>> >>> Stop in /usr/src/usr.bin/xlint. >>> *** [all] Error code 1 >>> >>> Stop in /usr/src/usr.bin. >>> *** [usr.bin.all__D] Error code 1 >>> >>> Stop in /usr/src. >>> *** [everything] Error code 1 >>> >>> Stop in /usr/src. >>> *** [buildworld] Error code 1 >>> >>> Stop in /usr/src. >>> >>> >>> Regards, >>> Oliver >> >> I got the same error 1 day ago on i386 platform. > > I got the same error, but got around it by putting: > > WITH_CLANG_IS_CC=no > > in /etc/src.conf > > ta, > Peg > Where are those new "WITH_CLANG_" tags documented? In my case things developed even worse. After the last "make update" in /usr/src (SVN based), I can't even build a kernel (make buildworld fails very early): ===> games/fortune/strfile (obj,depend,all,install) /usr/obj/usr/src/tmp/usr/src/games/fortune/strfile created for /usr/src/games/fortune/strfile rm -f .depend CC='clang' mkdep -f .depend -a -I/usr/obj/usr/src/tmp/legacy/usr/include -std=gnu99 /usr/src/games/fortune/strfile/strfile.c echo strfile: /usr/lib/libc.a /usr/obj/usr/src/tmp/legacy/usr/lib/libegacy.a >> .depend clang -O2 -pipe -O2 -fno-strict-aliasing -pipe -std=gnu99 -I/usr/obj/usr/src/tmp/legacy/usr/include -c /usr/src/games/fortune/strfile/strfile.c clang -O2 -pipe -O2 -fno-strict-aliasing -pipe -std=gnu99 -I/usr/obj/usr/src/tmp/legacy/usr/include -static -L/usr/obj/usr/src/tmp/legacy/usr/lib -o strfile strfile.o -legacy clang: warning: argument unused during compilation: '-std=gnu99' strfile.o: In function `main': /usr/src/games/fortune/strfile/strfile.c:(.text+0x2e0): undefined reference to `_ThreadRuneLocale' /usr/src/games/fortune/strfile/strfile.c:(.text+0x382): undefined reference to `_ThreadRuneLocale' strfile.o: In function `cmp_str': /usr/src/games/fortune/strfile/strfile.c:(.text+0x860): undefined reference to `_ThreadRuneLocale' /usr/src/games/fortune/strfile/strfile.c:(.text+0x8bb): undefined reference to `_ThreadRuneLocale' /usr/src/games/fortune/strfile/strfile.c:(.text+0x9b4): undefined reference to `_ThreadRuneLocale' strfile.o:/usr/src/games/fortune/strfile/strfile.c:(.text+0xa0e): more undefined references to `_ThreadRuneLocale' follow clang: error: linker command failed with exit code 1 (use -v to see invocation) *** [strfile] Error code 1 1 error *** [bootstrap-tools] Error code 2 1 error *** [_bootstrap-tools] Error code 2 1 error *** [buildworld] Error code 2 1 error signature.asc Description: OpenPGP digital signature
Re: CLANG buildworld failure: lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory
On Sunday 04 March 2012 16:27:56 Manfred Antar wrote: > At 05:25 AM 3/4/2012, O. Hartmann wrote: > >Buildworld of FBSD 10.o-CUR/amd64 fails with the below shown error > >messages since this weekend: > > > > > >clang -O2 -pipe -O2 -fno-strict-aliasing -pipe -pipe -O3 > >-fno-strict-aliasing -march=native > >-I/usr/src/usr.bin/xlint/xlint/../lint1 -DPREFIX=\"\" > >-I/usr/src/usr.bin/xlint/xlint/../arch/amd64 > >-I/usr/src/usr.bin/xlint/xlint/../common -std=gnu99 -fstack-protector > >-Wsystem-headers -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 -o xlint > >xlint.o mem.o > >clang: warning: argument unused during compilation: '-std=gnu99' > >gzip -cn /usr/src/usr.bin/xlint/xlint/lint.1 > lint.1.gz > >===> usr.bin/xlint/llib (all) > >lint -cghapbx -Cposix /usr/src/usr.bin/xlint/llib/llib-lposix > >llib-lposix: > >lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or > >directory *** [llib-lposix.ln] Error code 1 > > > >Stop in /usr/src/usr.bin/xlint/llib. > >*** [all] Error code 1 > > > >Stop in /usr/src/usr.bin/xlint. > >*** [all] Error code 1 > > > >Stop in /usr/src/usr.bin. > >*** [usr.bin.all__D] Error code 1 > > > >Stop in /usr/src. > >*** [everything] Error code 1 > > > >Stop in /usr/src. > >*** [buildworld] Error code 1 > > > >Stop in /usr/src. > > > > > >Regards, > >Oliver > > I got the same error 1 day ago on i386 platform. I got the same error, but got around it by putting: WITH_CLANG_IS_CC=no in /etc/src.conf ta, Peg ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: CLANG buildworld failure: lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory
At 05:25 AM 3/4/2012, O. Hartmann wrote: >Buildworld of FBSD 10.o-CUR/amd64 fails with the below shown error >messages since this weekend: > > >clang -O2 -pipe -O2 -fno-strict-aliasing -pipe -pipe -O3 >-fno-strict-aliasing -march=native >-I/usr/src/usr.bin/xlint/xlint/../lint1 -DPREFIX=\"\" >-I/usr/src/usr.bin/xlint/xlint/../arch/amd64 >-I/usr/src/usr.bin/xlint/xlint/../common -std=gnu99 -fstack-protector >-Wsystem-headers -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 -o xlint >xlint.o mem.o >clang: warning: argument unused during compilation: '-std=gnu99' >gzip -cn /usr/src/usr.bin/xlint/xlint/lint.1 > lint.1.gz >===> usr.bin/xlint/llib (all) >lint -cghapbx -Cposix /usr/src/usr.bin/xlint/llib/llib-lposix >llib-lposix: >lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory >*** [llib-lposix.ln] Error code 1 > >Stop in /usr/src/usr.bin/xlint/llib. >*** [all] Error code 1 > >Stop in /usr/src/usr.bin/xlint. >*** [all] Error code 1 > >Stop in /usr/src/usr.bin. >*** [usr.bin.all__D] Error code 1 > >Stop in /usr/src. >*** [everything] Error code 1 > >Stop in /usr/src. >*** [buildworld] Error code 1 > >Stop in /usr/src. > > >Regards, >Oliver > > I got the same error 1 day ago on i386 platform. || n...@pozo.com || || Ph. (415) 681-6235 || -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
CLANG buildworld failure: lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory
Buildworld of FBSD 10.o-CUR/amd64 fails with the below shown error messages since this weekend: clang -O2 -pipe -O2 -fno-strict-aliasing -pipe -pipe -O3 -fno-strict-aliasing -march=native -I/usr/src/usr.bin/xlint/xlint/../lint1 -DPREFIX=\"\" -I/usr/src/usr.bin/xlint/xlint/../arch/amd64 -I/usr/src/usr.bin/xlint/xlint/../common -std=gnu99 -fstack-protector -Wsystem-headers -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 -o xlint xlint.o mem.o clang: warning: argument unused during compilation: '-std=gnu99' gzip -cn /usr/src/usr.bin/xlint/xlint/lint.1 > lint.1.gz ===> usr.bin/xlint/llib (all) lint -cghapbx -Cposix /usr/src/usr.bin/xlint/llib/llib-lposix llib-lposix: lint: cannot exec /usr/obj/usr/src/tmp/usr/bin/cc: No such file or directory *** [llib-lposix.ln] Error code 1 Stop in /usr/src/usr.bin/xlint/llib. *** [all] Error code 1 Stop in /usr/src/usr.bin/xlint. *** [all] Error code 1 Stop in /usr/src/usr.bin. *** [usr.bin.all__D] Error code 1 Stop in /usr/src. *** [everything] Error code 1 Stop in /usr/src. *** [buildworld] Error code 1 Stop in /usr/src. Regards, Oliver signature.asc Description: OpenPGP digital signature