Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 Feb 2016 14:58:21 -0800
From:      Russell Haley <russ.haley@gmail.com>
To:        Mark Millard <markmi@dsl-only.net>
Cc:        Ian Lepore <ian@freebsd.org>, freebsd-arm <freebsd-arm@freebsd.org>
Subject:   Re: I've submitted 207324 for lang/lua52 needing to use -fPIC (kyua build blocked, clang380-import context)
Message-ID:  <CABx9NuQqipCnuJPYooXiGe8k30VmDnkVjGL0aJtnFiq8w570jQ@mail.gmail.com>
In-Reply-To: <9B10FB3B-257C-4282-932D-E53376678FB5@dsl-only.net>
References:  <F783EBCE-80EA-499C-A760-3E6F3EEBD404@dsl-only.net> <CABx9NuSdJR8aHVyT=tDjVf0wRKACBfVsJYtbN4KHZ-zBKYC%2BVQ@mail.gmail.com> <CABx9NuQgdVwrSoBe_rMFYzSW6MHhWdfeQd6N_HmuMnM%2BDE4cwg@mail.gmail.com> <CABx9NuSRW_0aWazUEkJgOtYSxjpfaEgGNBzXde=40_h=kJin5Q@mail.gmail.com> <1455917714.1294.25.camel@freebsd.org> <C61CFA00-B6E1-43AB-9332-50527195A99D@dsl-only.net> <9B10FB3B-257C-4282-932D-E53376678FB5@dsl-only.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Duplicate top post for brevity: Just for the record I'm not having
issues, I was just pointing out that adding -fPIC to the Makefile
cleared an issue I was experiencing on a different platform.


On Fri, Feb 19, 2016 at 2:26 PM, Mark Millard <markmi@dsl-only.net> wrote:
> On 2016-Feb-19, at 2:18 PM, Mark Millard <markmi@dsl-only.net> wrote:
>>
>> On 2016-Feb-19, at 1:35 PM, Ian Lepore <ian@freebsd.org> wrote:
>>>
>>> On Fri, 2016-02-19 at 12:42 -0800, Russell Haley wrote:
>>>> On Fri, Feb 19, 2016 at 12:38 PM, Russell Haley <russ.haley@gmail.com
>>>>> wrote:
>>>>> On Fri, Feb 19, 2016 at 12:34 PM, Russell Haley <
>>>>> russ.haley@gmail.com> wrote:
>>>>>> On Fri, Feb 19, 2016 at 11:43 AM, Mark Millard <
>>>>>> markmi@dsl-only.net> wrote:
>>>>>>> When attempting to build devel/kyua on a rpi2b under
>>>>>>> projects/clang380-import -r295601 via portmaster -DK devel/kyua
>>>>>>> the attempt failed in lang/lua52 with:
>>>>>>>
>>>>>>> --- lapi.o ---
>>>>>>> /usr/bin/clang -target armv6--freebsd11.0-gnueabi -march=armv7
>>>>>>> -a -mcpu=cortex-a7 -mfloat-abi=softfp -mno-unaligned-access
>>>>>>> -B/usr/local/arm-gnueabi-freebsd/bin/ -Wall -DLUA_COMPAT_ALL
>>>>>>> -pipe -mfloat-abi=softfp  -isystem /usr/local/include -g -fno
>>>>>>> -strict-aliasing -I/usr/local/include -isystem
>>>>>>> /usr/local/include -DLUA_USE_LINUX -c lapi.c -o lapi.o
>>>>>>> . . .
>>>>>>> --- liblua-5.2.so ---
>>>>>>> /usr/local/arm-gnueabi-freebsd/bin/ld: lapi.o: relocation
>>>>>>> R_ARM_MOVW_ABS_NC against `a local symbol' can not be used when
>>>>>>> making a shared object; recompile with -fPIC
>>>>>>> lapi.o: error adding symbols: Bad value
>>>>>>> clang: error: linker command failed with exit code 1 (use -v to
>>>>>>> see invocation)
>>>>>>> *** [liblua-5.2.so] Error code 1
>>>>>>>
>>>>>> I'm not sure about the kyua stuff, but I was getting a "similar
>>>>>> error"
>>>>>> when I built lua5.3 using clang on x64. From memory, I recall
>>>>>> adding
>>>>>> the -fPIC option to the lua5.3 Makefile (as the error indicates)
>>>>>> and
>>>>>> also having to remove a -luab (or something like that) and then
>>>>>> it
>>>>>> worked. Potentially you could just install lua from ports first?
>>>>>
>>>>>> http://www.freshports.org/lang/lua52/
>>>>>
>>>>> Sorry, I meant pkg. But it looks like it's not being built for
>>>>> armv6?
>>>>> http://portsmon.freebsd.org/portoverview.py?category=lang&portname=
>>>>> lua52
>>>>>
>>>>> Russ
>>>>
>>>> Okay, if you look at the Makefile for Lau52 at line 60 there are
>>>> -fPIC
>>>> cflags for other platforms but armv6 and i386 are missing.
>>>>
>>>> https://svnweb.freebsd.org/ports/head/lang/lua52/Makefile?view=markup
>>>>
>>>
>>> Are you guys setting CPUTYPE in your make.conf?  I've been building
>>> lua52 and lua53 for a while without any problems, as crossbuilds or
>>> native on a wandboard, but I'm not setting cpu type or arch.
>>>
>>> Also, why are you using lua52 rather than lua53? (Just curious.)
>>>
>>> I'm about to commit an unrelated fix for lua53.  I'll look into this
>>> problem too, if I can figure out how to recreate it.
>>>
>>> -- Ian

Just for the record I'm not having issues, I was just pointing out
that adding -fPIC to the Makefile cleared an issue I was experiencing
on a different platform.

>> I tried to build devel/kyua via portmaster and lang/lua52 got involved in the process by default. Apparently this is indirectly via devel/lutok being used.
>>
>> As for one of the example make.conf's that I'm using that results in the behavior:
>> (it does target -march=armv7-a -mcpu=cortex-a7 very explicitly)
>>
>>> # more /etc/make.conf
>>> DEFAULT_VERSIONS+=perl5=5.22
>>> WRKDIRPREFIX=/usr/obj/portswork
>>> WITH_DEBUG=
>>> WITH_DEBUG_FILES=
>>> MALLOC_PRODUCTION=
>>> #
>>> TO_TYPE=armv6
>>> VERSION_CONTEXT=11.0
>>> CFLAGS+=-target ${TO_TYPE}--freebsd${VERSION_CONTEXT}-gnueabi -march=armv7-a -mcpu=cortex-a7 -mfloat-abi=softfp -mno-unaligned-access
>>
>> Note: the projects/clang380-import -r295601 buildworld/buildkernel context installed on the rpi2 also has those CFLAGS entries.
>>
>> Other context:
>>
>>> # svnlite info /usr/ports
>>> Path: /usr/ports
>>> Working Copy Root Path: /usr/ports
>>> URL: https://svn0.us-west.freebsd.org/ports/head
>>> Relative URL: ^/head
>>> Repository Root: https://svn0.us-west.freebsd.org/ports
>>> Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
>>> Revision: 408706
>>> Node Kind: directory
>>> Schedule: normal
>>> Last Changed Author: danilo
>>> Last Changed Rev: 408706
>>> Last Changed Date: 2016-02-11 23:50:55 +0000 (Thu, 11 Feb 2016)
>>
>>> # freebsd-version -ku; uname -aKU
>>> 11.0-CURRENT
>>> 11.0-CURRENT
>>> FreeBSD rpi2 11.0-CURRENT FreeBSD 11.0-CURRENT #16 r295601M: Sun Feb 14 01:28:43 PST 2016     markmi@FreeBSDx64:/usr/obj/clang/arm.armv6/usr/src/sys/RPI2-NODBG  arm 1100097 1100097
>
> I should have noted that without forcing use of /usr/local/arm-gnueabi-freebsd/bin/ld the message is not as explicit about -fPIC:
>
> --- liblua-5.2.so ---
> /usr/bin/ld: lauxlib.o(.text+0x1a50): unresolvable R_ARM_MOVW_ABS_NC relocation against symbol `__stdinp@@FBSD_1.0'
> /usr/bin/ld: final link failed: Nonrepresentable section on output
> cc: error: linker command failed with exit code 1 (use -v to see invocation)
> *** [liblua-5.2.so] Error code 1
>
> I choose to submit based on a make.conf that forced use of /usr/local/arm-gnueabi-freebsd/bin/ tools in order to get the more explicit error message into the submittal.
>
> ===
> Mark Millard
> markmi at dsl-only.net
>
>
>



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