If full support for Swift was added to CMake yes why not. But I’m not a CMake developer and considering current Swift support it’s a bit early I think. I mean Swift support should come as a global feature, not just this specific point.
> Le 6 mars 2018 à 11:02, Harry Mallon <[email protected]> a écrit : > > Hi Lucas, > > With Swift there is a required standard dylib that must be included (and > Xcode copies by default). So perhaps CMake should automatically add the rpath > option to the Xcode command line? > > Harry > > From: Lucas Šoltić <[email protected]> > Date: Friday, 2 March 2018 at 23:20 > To: Harry Mallon <[email protected]> > Cc: "[email protected]" <[email protected]> > Subject: Re: [CMake] Swift executables with MACOSX_BUNDLE fail to find > libswiftCore.dylib > > You miss a runtime search path when linking your executable. And this is what > you achieved with install_name_tool with an additional step. > > To avoid this additional step, see > https://developer.apple.com/library/content/documentation/DeveloperTools/Conceptual/DynamicLibraries/100-Articles/RunpathDependentLibraries.html > or > https://stackoverflow.com/questions/42613881/adding-run-time-shared-library-search-path-to-executable-at-compile-time-clang > > By the way this is not related to Swift at all. > > Lucas > > Le 2 mars 2018 à 20:12, Harry Mallon <[email protected]> a écrit : > > Hello all, > > When making a pure Swift bundle Xcode automatically copies > `libswiftCore.dylib` as follows. > > ``` > ./Tests/SwiftOnly/Debug/SwiftOnly.app > └── Contents > ├── Frameworks > │ └── libswiftCore.dylib > ├── Info.plist > ├── MacOS > │ └── SwiftOnly > ├── PkgInfo > └── Resources > └── libswiftRemoteMirror.dylib > ``` > When I try to run the output I get a dynamic linking error. I can reproduce > this by adding MACOSX_BUNDLE to `./Tests/SwiftOnly/CMakeLists.txt` (in the > CMake source tree) in `add_executable` and trying to run the result. > > ``` > % ./Tests/SwiftOnly/Debug/SwiftOnly.app/Contents/MacOS/SwiftOnly > dyld: Library not loaded: @rpath/libswiftCore.dylib > Referenced from: > .../Tests/SwiftOnly/Debug/SwiftOnly.app/Contents/MacOS/SwiftOnly > Reason: image not found > zsh: abort ./Tests/SwiftOnly/Debug/SwiftOnly.app/Contents/MacOS/SwiftOnly > ``` > > It seems that the rpath should be set to `@loader_path/../Frameworks`. I am > not a Swift maestro so not exactly sure on the details of how this works. > After running `install_name_tool -add_rpath "@loader_path/../Frameworks" > ./Tests/SwiftOnly/Debug/SwiftOnly.app/Contents/MacOS/SwiftOnly` it runs fine. > > Does anyone have any idea what to do? Is it a missing CMake Swift feature? We > are currently working around it by manually adding the rpath with a cmake > step. > > Harry > Harry Mallon > Senior Software Engineer > > > > T +44 203 7000 989 > 60 Poland Street | London | England | W1F 7NT > > > Three Billboards > Blade Runner 2049 > I, Tonya > > > -- > > Powered by www.kitware.com > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Kitware offers various services to support the CMake community. For more > information on each offering, please visit: > > CMake Support: http://cmake.org/cmake/help/support.html > CMake Consulting: http://cmake.org/cmake/help/consulting.html > CMake Training Courses: http://cmake.org/cmake/help/training.html > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Follow this link to subscribe/unsubscribe: > https://cmake.org/mailman/listinfo/cmake
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: https://cmake.org/mailman/listinfo/cmake
