mips misbehaving, not respecting make.conf
Warner Losh
imp at bsdimp.com
Mon Nov 17 10:52:43 UTC 2014
On Nov 16, 2014, at 7:58 PM, Sean Bruno <sbruno at ignoranthack.me> wrote:
> On Sun, 2014-11-16 at 17:15 -0700, Warner Losh wrote:
>> On Nov 16, 2014, at 5:10 PM, Sean Bruno <sbruno at ignoranthack.me> wrote:
>>
>>> On Sun, 2014-11-16 at 16:55 -0700, Warner Losh wrote:
>>>> On Nov 16, 2014, at 4:15 PM, Sean Bruno <sbruno at ignoranthack.me> wrote:
>>>>
>>>>> I have set make.conf to use AS=/nxb-bin/usr/bin/as and
>>>>> CC=/nxb-bin/usr/bin/cc
>>>>>
>>>>> Yet, while monitoring, I still see the ports build process
>>>>> using /usr/bin/as and /usr/bin/ld and /usr/libexec/cc1
>>>>>
>>>>> I don't see this on armv6 when building in a jail + qemu.
>>>>>
>>>>> I'm trying to understand what is missing from our gcc toolchain here
>>>>> that is causing the builds to ignore my directives.
>>>>
>>>> Let’s start with the first question: How are you seeing this?
>>>>
>>>> Warner
>>>>
>>>
>>>
>>> Setup a qemu-user enabled jail for mips based on head. Start poudriere
>>> building audio/speex (nice, short depend chain).
>>>
>>> While all this is running, I have a "ps auwxxx|grep qemu" running that
>>> catches some of the invocations of qemu that are happening. When
>>> running a mips jail I see the tool chain being invoked, partially,
>>> from /usr/bin instead of /nxb-bin/usr/bin.
>>>
>>> http://dpaste.com/12SD5TE
>>>
>>> This is just a primitive profile attempt on my part. This shows that
>>> qemu is being invoked *a lot* to get cc1 and as running via emulation.
>>
>> If you are building ports, chances are those settings won’t do what you think they will. Do you have build logs I could look at?
>>
>> Warner
>
>
> More verbose output, not super useful. Except that the configure output
> shows that /nxb-bin/usr/bin/cc wants to use /usr/bin/ld ... I think this
> means we're not setting up the build flags for gcc correctly?
>
> http://crack.ysv.freebsd.org/data/11-mips-test-default/2014-11-17_02h37m39s/logs/speex-1.2.r1_7,1.log
Perhaps. But when I wrote those targets, I assumed they’d replace the target-native binaries with host-native binaries, now that I think about it, rather than live in a side directory. You’d need to make CC be something more like CC=$PATH/usr/bin/cc -B$PATH/lib/exec or some such.
Is there a good reason to not replace the binaries? I noticed you keeping them separate, but wasn’t sure if that was just a “well, that’s what the target does” thing or a “I had to do it because X” thing.
Warner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 842 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20141117/d2fab4d4/attachment.sig>
More information about the freebsd-arch
mailing list