Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 May 2012 21:08:01 +0900
From:      =?ISO-2022-JP?B?GyRCOzNDKz9yO0sbKEI=?= <yamayan@casio.co.jp>
To:        Gabor Kovesdan <gabor@freebsd.org>
Cc:        freebsd-current@freebsd.org, Oleg Moskalenko <oleg.moskalenko@citrix.com>
Subject:   Re: CURRENT: buildworld fails
Message-ID:  <CAJdLC-hC7vFAEYd1fAuCw_jOVXNjY=cC1c8btXE3UrvjTR6YCQ@mail.gmail.com>
In-Reply-To: <4FC4A41D.2000509@FreeBSD.org>
References:  <CAJdLC-iVMOJEhNJw=i2sM20D9AmAbd=JhQac4S8VZ5F7r_XX1g@mail.gmail.com> <4FC4A41D.2000509@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
some log and file is overwritten.
sort is already BSD sort. (WITH_BSD_SORT= yes in /etc/src.conf)
cc is clang and c++ is clang++.(WITH_CLANG_IS_CC in /etc/src.conf)

script
make -j24 buildworld
(or)
make buildworld

buildworld log:
(snip)
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_ifstream<wchar_t, std::char_traits<wchar_t>
>::is_open() const'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> >::_Rep::_M_set_length_and_sharable(unsigned
long)'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> >::_M_check_length(unsigned long, unsigned
long, char c
onst*) const'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_fstream<char, std::char_traits<char>
>::is_open() const'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_istream<wchar_t, std::char_traits<wchar_t>
>::ignore()'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> >::_M_copy(wchar_t*, wchar_t const*, unsigned
long)'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::string::_M_assign(char*, unsigned long, char)'
/usr/obj/usr/src/tmp/usr/bin/ld: Warning: size of symbol
`_ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEv@GLIBCXX_3.4'
changed from 243 in /usr/obj/usr/src/tmp/usr/lib/libstdc++.so to 211
in /usr/obj/usr/src/t
mp/usr/lib/libstdc++.so
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_fstream<wchar_t, std::char_traits<wchar_t>
>::is_open() const'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> >::_M_move(wchar_t*, wchar_t const*, unsigned
long)'
/usr/obj/usr/src/tmp/usr/bin/ld: Warning: size of symbol
`_ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEm@GLIBCXX_3.4'
changed from 19 in /usr/obj/usr/src/tmp/usr/lib/libstdc++.so to 24 in
/usr
/obj/usr/src/tmp/usr/lib/libstdc++.so
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::string::_M_move(char*, char const*, unsigned
long)'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::istream::ignore()'
/usr/obj/usr/src/tmp/usr/bin/ld: Warning: size of symbol
`_ZNKSs15_M_check_lengthEmmPKc@GLIBCXX_3.4' changed from 39 in
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so to 36 in
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so

/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_ofstream<char, std::char_traits<char>
>::is_open() const'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> >::_M_assign(wchar_t*, unsigned long,
wchar_t)'
/usr/obj/usr/src/tmp/usr/bin/ld: Warning: size of symbol
`_ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEmmPKc@GLIBCXX_3.4'
changed from 39 in /usr/obj/usr/src/tmp/usr/lib/libstdc++.so to 36 in
/usr/obj/usr/sr
c/tmp/usr/lib/libstdc++.so
/usr/obj/usr/src/tmp/usr/bin/ld: Warning: size of symbol
`_ZNSi6ignoreEv@GLIBCXX_3.4' changed from 243 in
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so to 211 in
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_ifstream<char, std::char_traits<char>
>::is_open() const'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::string::_M_copy(char*, char const*, unsigned
long)'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::basic_ofstream<wchar_t, std::char_traits<wchar_t>
>::is_open() const'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::string::_M_check_length(unsigned long, unsigned
long, char const*) const'
/usr/obj/usr/src/tmp/usr/lib/libstdc++.so:(*IND*+0x0): multiple
definition of `std::string::_Rep::_M_set_length_and_sharable(unsigned
long)'
(snip)
c++: error: linker command failed with exit code 1 (use -v to see invocation)
(snip)
(end)

cd /usr/obj/usr/src/tmp/usr/lib
nm libstdc++.so.6 | lv
(file is overwritten)
Same symbols are found!!!

cd /usr/lib
nm libstdc++.a | lv
(file is overwritten)
Same symbols are not found.
Each symbols are unique.

recheck the buildworld log:
building static * library
sort: No such file or directory
sort: No such file or directory
ranlib *.a
(or)
building shared library *.so.#
sort: No such file or directory
sort: No such file or directory

I found many many error message above.
I think sort is broken.
I think sort is used to merge same symbols into unique.
but, because sort is broken, libraries have same(multiple) symbols.
So, linker command failed with multiple definition error.

/usr/bin/sort's timestamp was May 15.
svn log -v | lv
(search sort change log)
r235987 | gabor | 2012-05-25 18:30:16 +0900 (Fri, 25 May 2012) | 7 lines
r235546 | gabor | 2012-05-17 22:08:30 +0900 (Thu, 17 May 2012) | 4 lines
r235435 | gabor | 2012-05-14 19:06:49 +0900 (Mon, 14 May 2012) | 5 lines
r235434 | gabor | 2012-05-14 18:55:23 +0900 (Mon, 14 May 2012) | 2 lines
r235432 | gabor | 2012-05-14 18:53:54 +0900 (Mon, 14 May 2012) | 2 lines

I don't know when sort is broken and repaired.
but, I think r235435 is maybe broken.

Then, Update /usr/bin/sort latest version.
and run "make -j24 buildworld kernel".
It was done without error.
(overwrite some log)
so, reboot and installworld.
(overwrite files)


2012/5/29 Gabor Kovesdan <gabor@freebsd.org>:
> On 2012.05.29. 5:44, 山谷崇史 wrote:
>>
>> I had same problem, but I resolved it.
>>
>> Maybe, your sort (/usr/bin/sort) is broken.
>>
>> cd /usr/src
>> make update
>> cd usr.bin/sort
>> make obj depend all install
>>
>> Then, sort is changed.
>>
>> make cleandir cleandir
>> make buildworld
>
>
> Could you please elaborate it a bit? From your mail it is not clear where
> did things break and what kind of error did you see and how you actually
> solved it.
>
> Thanks,
> Gabor



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJdLC-hC7vFAEYd1fAuCw_jOVXNjY=cC1c8btXE3UrvjTR6YCQ>