Skip to content
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

cross compiling isn't cross compiling on host=linux-x64, target=linux-arm64 #94

Closed
toshok opened this issue Dec 19, 2024 · 3 comments
Closed

Comments

@toshok
Copy link

toshok commented Dec 19, 2024

Filed this but they routed me here. As alluded to there, prebuildify is generating an x64 .so even with the --arch arm arg. Here's the line in their workflow:

run: npm x -- prebuildify --strip --arch arm64 --target 20.9.0 

I've also manually run prebuildify-cross using that command line but with -i linux-arm64 as well, and still ended up with an x64 .so. Hoping it's just me or something about the my setup locally. has anyone cross compiled linux-arm64 prebuilds?

If not, any idea where to look for the problem? I kinda expect the next place is node-gyp, but I'm hoping to avoid that if possible ;) I'm willing to find/fix the problem but a little help at identifying the layer to focus on would be super helpful.

@vweevers
Copy link
Member

Out of the box, prebuildify doesn't cross-compile, and you were right to look at prebuildify-cross.

has anyone cross compiled linux-arm64 prebuilds?

Yes, classic-level has 'em, serialport too I believe.

@toshok
Copy link
Author

toshok commented Dec 20, 2024

Yes, classic-level has 'em, serialport too I believe.

perfect. I'll see if I can figure out differences between them and tree-sitter 👍

@ObserverOfTime
Copy link

Turns out we just had to set CC & CXX for node-gyp because prebuildify doesn't do it automatically.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants