[swift-dev] [SR-40] Port Swift to Arm progress / question

Dmitri Gribenko gribozavr at gmail.com
Tue Dec 15 04:52:03 CST 2015


On Tue, Dec 15, 2015 at 2:39 AM, Nick Wellnhofer via swift-dev
<swift-dev at swift.org> wrote:
> On 10/12/2015 00:05, William Dillon via swift-dev wrote:
>>
>> At this point, the compiler and standard library are all built, and I
>> think I have one final issue.  In the testing suite, the binaries generated
>> by the swift compiler don’t run.  They’re emitting unexpected reloc type
>> errors.  It appears that reolc type 0x03 is R_ARM_REL32 which is not
>> permitted for use with shared libraries:
>>
>> CollectionOfOne.swift.tmp/a.out: error while loading shared libraries:
>> /home/wdillon/build/Ninja-ReleaseAssert/swift-linux-armv7/lib/swift/linux/libswiftCore.so:
>> unexpected reloc type 0x03
>
>
> Can you make sure you're compiling with the -fPIC flag? This is normally set
> by CMake depending on the platform, but it's possible that CMake doesn't
> know about Linux-ARM yet.

Good point.  Another possibility is that it could be that the Swift compiler
is not setting the PIC flag when setting up LLVM for Linux/arm.

This is one of the reasons why isolating the issue to specific symbols
would be very interesting, it would allow us to focus on a specific
object file.

Dmitri

-- 
main(i,j){for(i=2;;i++){for(j=2;j<i;j++){if(!(i%j)){j=0;break;}}if
(j){printf("%d\n",i);}}} /*Dmitri Gribenko <gribozavr at gmail.com>*/


More information about the swift-dev mailing list