-
Notifications
You must be signed in to change notification settings - Fork 2
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
Build issue on Ubuntu #2
Comments
thanks! i've updated the Cargo.toml to point at the aa_wasmtime on git, so hopefully it should address that issue. sorry about that. I've not tried to build on WSL. Generally, I work on Mac OS, but will dust of bootcamp/WSL tomorrow and take a look at finding a revision that works. |
I found that nix 0.15 is needed due to a different crate needing that. This all worked fine and once I'd got XServer and so on installed the standalone app ran, however, sadly there is another issue. The problem is that currently portaudio requires an ALSA driver, but it seems that WSL only uses PulseAudio! Do you have this working? |
TBH, I was in the "try to get it to build, worry about running it later" stage. WSL is usually fine for building stuff, but running with actual hardware works better in a "real" VM. It seems ALSA is still not supported on WSL 2 (microsoft/WSL#5816) and the only efforts I found to get pulseaudio into portaudio are very dead (https://github.com/bkgood/portaudio-pulseaudio, https://github.com/illuusio/portaudio-pulseaudio). |
I think WSL is going to be a pain, for now at least, but would native Windows be OK? I'm resolving an issue with it working fully on WIndows 10, but it seems mostly to be there and so hopefully have a working build in the next day or so. |
W.r.t. running definitely, but building should be identical to other Linux systems. Windows 10 build worked for me, but didn't run either (crash), but not sure yet if it was a user error or not |
One of the issues on Windows 10 is that Portaudio wrapper panics when it fails, which is really a pain, and I hit it when I did not have an ASIO driver for my default Mac sound card. Once I'd worked around that issue, then it runs without crashing, but some of the interfaces require Edge for handing the JS and so it fails with that. The webview crate can be compiled to use Edge and that is where I got to last night. There is still an issue with some of the interfaces and I'll get to that in the next day. (Sorry, I know that Windows is a bit of 2nd class case for me, as I don't generally use it.) As for Linux/WSL, the build should now be fine and assuing Portaudio works no the partucular Linux platform it should work fine, of course, that does not address the WSL 2 lack of audio support beyond Pulseaudio, which is a real pain. |
Tried a pull & build and I am still getting the same error. Did you fix it on a branch or forget to push? W.r.t. Audio, I hope Microsoft will fix this at some point (they are working on full GUI support, and GPU support with NVIDIA, so it may just be a matter of time) |
Hmm that is strange, looking at https://github.com/bgaster/midir/blob/master/Cargo.toml, it references nix = 0.15, which was required for it to build. |
I have the audio side of things all working on windows now, but still issues with Edge and rendering certain canvas objects with web-view. |
I tried deleting my local |
ahh... try now. |
While this (currently) works (my errors were just a massive number of missing dependencies) binaries really should have their Cargo.lock in version control: https://doc.rust-lang.org/cargo/faq.html#why-do-binaries-have-cargolock-in-version-control-but-not-libraries |
Yes, this is a very good point. I've really only just started to get this whole thing working and so I've been a bit behind on that. Once managed to sort out this Edge issue, and happy(ish) that it works on Windows, then I'll add a Cargo.lock and go from there. |
With the merge I'll consider this closed for now. Windows is a separate issue. |
First off, thank you for a great project! I have been meaning to try something similar too. However, I have run into several issues with the build process on Ubuntu (WSL, actually):
Building
aa_standalone
fails withSince
midir
(and all other git-dependencies for that matter) are included without a commit andaa_wasmtime
is referenced by relative path instead of a repository, these dependencies may have gotten out of sync. As a solution, I would suggest adding a specific revision like so:As you probably have a combination that works, it would be great if you could tag the specific revisions that work for you, thanks!
The text was updated successfully, but these errors were encountered: