-
-
Notifications
You must be signed in to change notification settings - Fork 45
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
use llvm-readelf
to figure out dynamic libraries to include
#47
Comments
@dvc94ch It seems there's https://stackoverflow.com/questions/23697641/what-is-the-clang-analogue-of-ldd As such |
linux:
macos:
windows:
|
Perfect, I already started working this into a copy-pasted implementation from Still getting to grips with the project structure and layout, seems some things are "all over the place" or crammed together in a single Seeing some flutter deps in there, can we also automate that bit instead of the current hardcoded lib inclusion? |
I guess the question is which libraries to include? Instead of auto including stuff using readelf, why don't we make it configurable? |
Also there was some previous work done here: 034b536 which I removed because I wasn't sure if it's really the way to go. |
For Android I guess we can use the NDK to list available libraries (minus |
That seems to only pass additional libs to the linker? In addition we also need the libs to be copied to the APK, which is my main concern (for |
well, the behaviour should be consistent accross platforms. I know we have a heuristic that works for android, not sure if/how that will work on other platforms
yes, that's why I removed it, because it wasn't hooked up anyway |
Obviously, but since I only develop on Android now and have no experience with iOS apps this is the only thing I can get started with. Once I have something I bet you'll have to test/improve it for the other target :)
Might be useful later when we allow users to bundle custom libs again, but afaik their build scripts should generally cover that. I think we might even be able to parse those |
llvm-readelf
to figure out dynamic libraries to include
Still getting to grips with the codebase but I got this working and made our application fully compileable and runnable through Progress at master...MarijnS95:readelf, will clean this up, finish the TODOs, and open a PR soon :) |
@dvc94ch I also need to add libraries that are dynamically loaded at runtime to an APK (ie. Vulkan validation layers) just like rust-mobile/ndk@fb52590, is that something you've planned? Where should we add it in the manifest, somewhere Android-specific or generic? |
not planned yet, no. thinking about it a bit I think it's quite a complicated feature to work cross platforms, architectures etc. maybe we could do something like:
from build.rs scripts? |
Doing it from Besides, we'll already have to add support for scanning regular |
In addition, |
well, it's not quite the same. In build.rs there can be logic deciding for which platform and Cargo.toml supports target specific dependencies. to put it in the manifest we'd have to recreate that. |
Fair enough, in |
No description provided.
The text was updated successfully, but these errors were encountered: