You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I looked into the Rust source code, they also call the linker as a command line program.
What we need to do is analyse properly the requirements of the program to be linked, such as dependencies and files to link together, and whether it is a shared, static library or a binary.
Things to analyse and pass to the linker cli:
Arch (x86_64, aarch64, etc)
On linux The crt (c runtime) which defines _start and proper exit. On macOS it looks like it's done automatically?.
On linux, the loader, i think for 64bit its always /lib64/ld-linux-x86-64.so.2. Used with the argument --dynamic-linker
Libraries / object files to link together
Optional:
Allow to specify the linker, such as ld, lld, mold
Good related read: https://fabiensanglard.net/dc/driver.php
I looked into the Rust source code, they also call the linker as a command line program.
What we need to do is analyse properly the requirements of the program to be linked, such as dependencies and files to link together, and whether it is a shared, static library or a binary.
Things to analyse and pass to the linker cli:
/lib64/ld-linux-x86-64.so.2
. Used with the argument--dynamic-linker
Optional:
https://github.com/lambdaclass/concrete/blob/main/crates/concrete_codegen_mlir/src/linker.rs
The text was updated successfully, but these errors were encountered: