[swift-dev] Build failure for Linux: "No such module: SwiftGlibc"

Jordan Rose jordan_rose at apple.com
Tue May 3 13:12:36 CDT 2016


> On May 3, 2016, at 10:40, Karl Wagner via swift-dev <swift-dev at swift.org> wrote:
> 
> 
>> On 2 May 2016, at 18:42, Joseph Bell <joe at iachieved.it <mailto:joe at iachieved.it>> wrote:
>> 
>> Karl,
>> 
>> A number of us are on Slack working with ARM support - would you like an invite?
>> 
>> Joe
>> 
> 
> Hi, 
> 
> yes that would nice.
> 
> The modulemap issue can be fixed by adding a -resource-dir flag. Going with a comment in AddSwift.cmake, I switched the include fag to the library output directory to "-resource-dir”, but then SwiftShims wouldn’t build. So I changed the flag back to a standard include and make it *also* specify “-resource-dir” on cross-compile (so the cross command has both -I and -resource-dir). Now the native host builds, but the cross-compiled stdlib won’t because of the same SwiftShims issue.
> 
> So I need to look at how the compiler uses -resource-dir what’s going on with SwiftShims.

-resource-dir covers everything in lib/swift/. I'm not sure we're properly set up to handle more than one architecture on Linux, though: we still link against the .so's in lib/swift/linux/ rather than lib/swift/linux/$ARCH, despite "fat" libraries not being sensible here. Maybe that's the way to go: reorganize lib/swift/linux/ so that there's nothing that's not in an architecture-specific subdirectory.

Meanwhile, you can probably get things off the ground by copying or symlinking everything in lib/swift/ that's not in lib/swift/linux/ into your custom resource directory. (I think that's just the shims/ folder right now.)

Jordan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-dev/attachments/20160503/2edf6bce/attachment.html>


More information about the swift-dev mailing list