Uh oh!
There was an error while loading. Please reload this page.
[NativeAOT] Fix iOS library build by linking standard C++ library by default - #92114
Conversation
ghost
commented
Sep 15, 2023
Tagging subscribers to this area: @agocke, @MichalStrehovsky, @jkotas Issue DetailsThis PR fixes building an iOS-like NativeAOT libraries by linking standard C++ library by default. Recently we started statically linking ICU libraries when targeting iOS-like platforms in: #90430 This is not visible when build iOS apps, as we use NativeAOT with iOS in library mode is not officially supported (this is tracked in: #88737), but this fix is a prerequisite of going in the right direction and unblocking customers who are using the experimental support. The official support for iOS library mode will come in a separate PR. Fixes: #91997
|
ivanpovazan
commented
Sep 15, 2023
/cc: @steveisok |
ivanpovazan
commented
Sep 15, 2023
/azp run runtime-ioslike |
|
Azure Pipelines successfully started running 1 pipeline(s). |
steveisok
left a comment
There was a problem hiding this comment.
@ivanpovazan@rolfbjarne this doesn't clash with anything in the iOS sdk, right?
ivanpovazan
commented
Sep 15, 2023
I do not think it should. I manually tested building/running a MAUI iOS sample app by explicitly passing |
rolfbjarne
commented
Sep 15, 2023
It shouldn't, at most we'd pass the same linker argument twice to the native linker. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
ivanpovazan
commented
Sep 15, 2023
/backport to release/8.0 |
Started backporting to release/8.0: https://github.com/dotnet/runtime/actions/runs/6201366248 |
ivanpovazan
commented
Sep 16, 2023
/azp run runtime-ioslike |
|
Azure Pipelines successfully started running 1 pipeline(s). |
ivanpovazan
commented
Sep 16, 2023
The failures are unrelated and are being tracked. |
This PR fixes building an iOS-like NativeAOT libraries by linking standard C++ library by default.
Recently we started statically linking ICU libraries when targeting iOS-like platforms in: #90430
However globalization and ICU support has a dependency on the standard C++ lib which is not included by NativeAOT build integration targets and produces a build error when trying to build NativeAOT iOS library:
This is not visible when build iOS apps, as we use
AppleAppBuilderandXamarinapplication bundlers that are taking care of native linking.NativeAOT with iOS in library mode is not officially supported (this is tracked in: #88737), but this fix is a prerequisite of going in the right direction and unblocking customers who are using the experimental support. The official support for iOS library mode will come in a separate PR.
Fixes: #91997