Jenkins build is still unstable: FreeBSD_HEAD #564

Bryan Drewery bdrewery at FreeBSD.org
Mon Aug 29 17:54:09 UTC 2016


On 8/29/2016 10:52 AM, Li-Wen Hsu wrote:
> I guess the quickest way is boot that VM, cd to
> /usr/tests/lib/atf/libatf-c++ and run `kyua test atf_c++_test`
> However I am not sure this provides enough information because stuff
> under /usr/tests/lib/atf/libatf-c++ are all binary files.
> 
> FWIW, I would like to know, should these -target, --sysroot and -B flages be
> given when compiling a normal program in a normal time?  In this test
> case, kyua just wanted to compile test.cpp which includes sstream, it's
> not during buildworld/buildkernel time, so files under /usr/obj
> should not be used.

The flags are only passed in buildworld which uses a sysroot.  A direct
cd dir && make, will not use them.

> 
> On Mon, Aug 29, 2016 at 10:31:26 -0700, Bryan Drewery wrote:
>> This thread is hard to follow. The changes I made shouldn't break
>> anything since it's just now acting like an external compiler.
>>
>> Where is the error so I can debug it?
>>
>> On 8/29/2016 9:50 AM, Dimitry Andric wrote:
>>> Yes, I've also seen the --sysroot options being added recently.  I'm reasonably sure that this is the cause of the error.  Bryan did most of the restructuring for external toolchains, which also adds the --sysroot option.
>>>
>>> Is there an usr/include/c++/v1 under the --sysroot?
>>>
>>> -Dimitry
>>>
>>>> On 29 Aug 2016, at 18:39, Li-Wen Hsu <lwhsu at FreeBSD.org> wrote:
>>>>
>>>> Dimitry, are you talking about case lib.atf.libatf-c++.atf_c++_test.include ?
>>>>
>>>> I happen to have a r304986 VM here:
>>>>
>>>> https://people.freebsd.org/~lwhsu/tmp/disk-test.img.xz
>>>>
>>>> (it starts kyua test in /etc/rc.local, just use ctrl-c to interrupt it)
>>>>
>>>> And there is a /usr/include/c++/v1 directory with sstream in it.
>>>>
>>>>
>>>> BTW, I am not sure removing -I/usr/include is the right solution,  I
>>>> think this case is checking for "normal" compiling would work, not
>>>> during buildworld.  When this case was passing, it uses following
>>>> command:
>>>>
>>>> c++ -O2 -pipe -DHAVE_CONFIG_H -I/usr/include -Wall -Werror -o test.o -c test.cpp
>>>>
>>>> and now it uses:
>>>>
>>>> c++ -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin -O2 -pipe -DHAVE_CONFIG_H -I/usr/include -Wall -Werror -o test.o -c test.cpp
>>>>
>>>> This changed between r304555 and r304698.
>>>>
>>>>
>>>> Also, does anyone know where is "-I/usr/include" coming from?  Is this
>>>> one?
>>>> https://svnweb.freebsd.org/base/head/contrib/atf/atf-c%2B%2B/detail/test_helpers.cpp?view=markup#l56
>>>>
>>>>
>>>> Li-Wen
>>>>
>>>> On Mon, Aug 29, 2016 at 16:02:42 +0200, Dimitry Andric wrote:
>>>>> Do you have an /usr/include/c++/v1 directory?  And is there a file called "sstream" in it?
>>>>>
>>>>> If it is there, I think the problem is due to the -I/usr/include option in the command line for the test program.  If you remove that, I think the compilation will work correctly.
>>>>>
>>>>> -Dimitry
>>>>>
>>>>>> On 29 Aug 2016, at 14:55, Craig Rodrigues <rodrigc at freebsd.org> wrote:
>>>>>>
>>>>>> Dimitry,
>>>>>>
>>>>>> During the Jenkins job, I use installworld/installkernel to build a fully bootable bhyve virtual machine.
>>>>>> After the virtual machine boots, ssh into it, and do:
>>>>>>
>>>>>> cd /usr/tests
>>>>>> kyua test
>>>>>> kyua report --verbose
>>>>>>
>>>>>>
>>>>>> So I am suspecting that maybe something didn't get installed properly?
>>>>>> --
>>>>>> Craig
>>>>>>
>>>>>>
>>>>>> On Mon, Aug 29, 2016 at 4:13 AM, Dimitry Andric <dim at freebsd.org> wrote:
>>>>>> I just found the separate "test results" link in Jenkins.  As far as I can see, one of those failing tests is run as:
>>>>>>
>>>>>> c++ -target x86_64-unknown-freebsd12.0 --sysroot=/builds/workspace/FreeBSD_HEAD/obj/builds/workspace/FreeBSD_HEAD/src/tmp -B/builds/workspace/FreeBSD_HEAD/obj/builds/workspace/FreeBSD_HEAD/src/tmp/usr/bin -O2 -pipe -DHAVE_CONFIG_H -I/usr/include -Wall -Werror -o test.o -c test.cpp
>>>>>>
>>>>>> So are the libc++ headers installed in the /builds/workspace/FreeBSD_HEAD/obj/builds/workspace/FreeBSD_HEAD/src/tmp sysroot?  The compiler error message appears to indicate it is getting its headers from /usr/include instead.
>>>>>>
>>>>>> I can't look on the actual test system, but my guess would be that either the --sysroot flag is incorrect, or the libc++ headers are not correctly installed on the target system.
>>>>>>
>>>>>> -Dimitry
>>>>>>
>>>>>>> On 29 Aug 2016, at 12:56, Dimitry Andric <dim at FreeBSD.org> wrote:
>>>>>>>
>>>>>>> Hi Craig,
>>>>>>>
>>>>>>> I find it very hard to parse these extremely verbose logs.  Can you point out the location and contents of the exact error you are seeing?
>>>>>>>
>>>>>>> -Dimitry
>>>>>>>
>>>>>>>> On 29 Aug 2016, at 08:59, Craig Rodrigues <rodrigc at FreeBSD.org> wrote:
>>>>>>>>
>>>>>>>> Dimitry,
>>>>>>>>
>>>>>>>> Can you take a look at this?
>>>>>>>> I'm not sure why, but after recent changes, one of the tests is
>>>>>>>> complaining that the C++ header <sstream> is missing.
>>>>>>>>
>>>>>>>> --
>>>>>>>> Craig
>>>>>>>>
>>>>>>>>
>>>>>>>> On Sun, Aug 28, 2016 at 11:11 PM, <jenkins-admin at freebsd.org> wrote:
>>>>>>>> See <https://jenkins.FreeBSD.org/job/FreeBSD_HEAD/564/>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Li-Wen Hsu <lwhsu at FreeBSD.org>
>>>> https://lwhsu.org
>>>
>>
>>
>> -- 
>> Regards,
>> Bryan Drewery
>>
> 
> 
> 
> 


-- 
Regards,
Bryan Drewery

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-testing/attachments/20160829/2ddb1360/attachment.sig>


More information about the freebsd-testing mailing list