-
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Boost framework not added correctly on visionOS #18
Comments
@skalarproduktraum First off, thanks for your interest in this project! I really appreciate you filling out an issue for this, as it helps iron out the development experience for everyone else who also finds this Swift package useful. I must say, this is quite odd behavior you're experiencing, I frequently run on visionOS simulator and have not yet run into this issue, but I mostly build, bundle, and run my visionOS simulator apps through my fork of @stackotter's SwiftBundler project. I will go ahead and try to build some of my apps with Xcode to see if I can reproduce the issue you're having on your end, but in the meantime, you should not experience this issue if you use SwiftBundler to run your app on visionOS (and iOS) simulator. Instructions on how to use SwiftBundlerInstall @stackotter's SwiftBundler, however; utilize my fork of the project which supports properly building and bundling iOS, visionOS, (and macOS) projects (until these changes are approved in a pending PR):
Ensure that your app has an executable target in its // ...
.executableTarget(
name: "MyAwesomeApp",
dependencies: [
.product(name: "Boost", package: "MetaverseKit")
],
swiftSettings: [
.interoperabilityMode(.Cxx)
]
) And create a file called format_version = 2
[apps.MyAwesomeApp]
identifier = 'foundation.wabi.MyAwesomeApp'
product = 'MyAwesomeApp'
version = '1.0.0'
category = 'public.app-category.graphics-design'
[apps.MyAwesomeApp.plist]
commit = '$(COMMIT_HASH)' Then run the following to build, bundle, and run it on a visionOS Simulator: # list available iOS and visionOS simulators.
swift bundler simulators
# boot a simulator from the list.
swift bundler simulators boot [id-of-device]
# this will then build and bundle your app and
# then proceed to run it on the simulator.
swift bundler run -p visionOSSimulator MyAwesomeApp |
Thanks for the quick reply @furby-tm! SwiftBundler indeed looks very interesting, I will give this a shot 👍 In the meantime, I had also tried renaming the Boost target that contains the downloaded framework, in case Xcode might confuse it with the boost directory in Sources (for whatever reason). That turned out not to be the case, though. |
@furby-tm I've tried your version of swift-bundler now, too. This seems to work fine, until the step of bundling the app. There, I run into:
This might be a bug in your PR, as the binary it wants to copy is in |
I've tried now hard-linking the binary to the directory where swift-bundler expects it, and it got me a little further, buuuuut:
|
@skalarproduktraum hmm, that's peculiar! When it ( I'm not sure why (
I will let you know as soon as I've made that fix in SwiftBundler, allow me an hour or so to fix it, thanks for finding this edge case!
As far as I'm aware - I believe the issue here was whichever method you used to "hard-link the binary", but the suggested fix I will make to SwiftBundler above, should fix the need for any sort of manual intervention anyway, however; if you keep running into this issue after my suggested fix, please feel free to reach out so I can get that corrected as well, thanks! |
@skalarproduktraum okay, I believe I have fixed the issue you were experiencing here! Go ahead and attempt to build again, remember to first update SwiftBundler with the following commands: git clone https://github.com/wabiverse/wabi-swift-bundler
cd wabi-swift-bundler
swift build -c release
sudo cp .build/release/swift-bundler /usr/local/bin/ |
Okay great, thank you @furby-tm - this worked and got me to the other error I've mentionered before - any ideas about that one? Also, for clarification - with hard-linking I meant doing |
👀 looking into this now, will update you as soon as I issue another fix to the bundler, thanks for your patience as we work through this together, I believe the fix for this should be quite simple as well... investigating... |
@skalarproduktraum alright! Go ahead and see if this fix gets things working for you, I imagine there may be the possibility of a few last remaining additional errors after this one, but I've never seen the bundle get generated in the |
@skalarproduktraum also, do you still have the |
Hey @furby-tm! Sorry for the late reply, I've been busy the last days. I have moved the Xcode project file out of the way, it seems this got picked up. For the moment it fails now to compile things correctly, but I'll investigate more tomorrow. Thanks for your help so far 👍 |
@skalarproduktraum I had just went ahead and built some of my own projects which depend on MetaverseKit and SwiftUSD in Xcode (v16.1) for macOS, iOS, and visionOS. Each of my projects built successfully across these different platforms and I could not reproduce the error you experienced. Some Troubleshooting StepsTry the following if you're still experiencing Xcode related issues when building your project.
I'm going to close out this issue, but please feel free to comment on it again or submit a new issue if you still continue to experience any problems. |
Description of Issue
When adding MetaverseKit to a visionOS project, the binary target for the boost framework is not added correctly. Instead of the one that should be downloaded, a basically empty one is used, with missing Info.plist. When running the application on the visionOS Simulator then, Xcode will fail with a message similar to:
Steps to Reproduce
System Information (OS, Hardware)
Xcode 16 RC, visionOS 2.0 Simulator.
Package Versions
1.8.3, 1.8.4
Build Flags
(none)
PS: Thanks for the great initiative. This library collection is extremely useful 👍
The text was updated successfully, but these errors were encountered: