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

Broken cross-compilation #87

Open
GodTamIt opened this issue Dec 31, 2024 · 3 comments · May be fixed by #89
Open

Broken cross-compilation #87

GodTamIt opened this issue Dec 31, 2024 · 3 comments · May be fixed by #89

Comments

@GodTamIt
Copy link
Contributor

GodTamIt commented Dec 31, 2024

Cross-compilation seems broken when trying to compile from ARM macOS to ARM Linux (after #84 is fixed). I'd imagine something similar would happen for a cross-architecture compile as well.

I suspect that uplink-sys's build.rs invokes make build directly, building for the host machine, which may not build for the right target(s) in a cross-compilation situation.

#19, by proxy, is another proposed solution to this problem.

This currently breaks my cargo lambda use-case.

Error messages:

ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member 'go.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000000.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000001.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000002.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000003.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000004.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000005.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000006.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000007.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000008.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000009.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000010.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000011.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000012.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000013.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000014.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000015.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000016.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000017.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000018.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000019.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000020.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000021.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000022.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000023.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000024.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000025.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000026.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000027.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000028.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000029.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000030.o' is neither ET_REL nor LLVM bitcode
ld.lld: warning: /var/folders/0k/2_4vx71d6ybbpvmqc8hldz980000gn/T/rustctxnMDL/libuplink_sys-6c771f52bd168377.rlib: archive member '000031.o' is neither ET_REL nor LLVM bitcode
ld.lld: error: undefined symbol: uplink_parse_access
>>> referenced by uplink.d81c4bc37c14f32a-cgu.0
>>>               /Some/path-aeed62b28ef96a87.uplink-84b04293efccdb03.uplink.d81c4bc37c14f32a-cgu.0.rcgu.o.rcgu.o:(uplink::access::Grant::new::hb21aa931de7d946b)

@ifraixedes
Copy link
Collaborator

All of the PRs that you sent are merged. I'm going to publish a new release

@ifraixedes
Copy link
Collaborator

ifraixedes commented Dec 31, 2024

New releases are published:
uplink-sys => v0.7.2
uplink => v0.10.1

Close the issue if the fixes you sent and present in those versions work.
Thank you for everything.

@GodTamIt
Copy link
Contributor Author

Despite those changes, cross-compilation is still broken. I'm testing out a local change that may fix the problem but not yet confirmed.

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

Successfully merging a pull request may close this issue.

2 participants