我想与-lm
链接。现在,我正在这样做:
let _link_lm = f64::sin(3.0);
我尝试将其放入.cargo/config
:
[build]
rustflags = ["-C", "link-args=-lm"]
这不会动态链接库。
另外,在构建脚本中使用cargo:rustc-link-lib=m
与调用cargo rustc -- -lm
相同,两者也不起作用。
我检查该库是否未与ldd
链接。
链接库很重要,因为这是针对JIT编译器的,它可以通过使用dlsym
获取这些函数来调用这些函数。
如何在不调用其中一个函数的情况下链接到该库?
答案 0 :(得分:1)
事实证明,rustc
用-Wl,--as-needed
调用链接器,所以对我来说解决方案是禁用此选项:
[build]
rustflags = ["-C", "link-arg=-Wl,--no-as-needed", "-C", "link-arg=-lm"]