gpt4 book ai didi

c++ - 您可以在命令行上使用 visual-c++ 静态链接特定库吗?

转载 作者:行者123 更新时间:2023-11-28 06:31:25 27 4
gpt4 key购买 nike

更具体地说,我在 MingW 环境中使用 visual-c++。我有一个这样定义 LDFLAGS 的 makefile:

LDFLAGS="-MACHINE:X64 -OPT:REF,ICF -FORCE libtcmalloc_minimal.lib -INCLUDE:__tcmalloc"

如果我以这种方式构建我的程序,我需要随程序一起分发 libtcmalloc_minimal.dll。

我假设如果这是 GCC 或类似的我会使用 -static 但 visual-c++ 无法识别该标志。有没有办法强制静态实现这个库?

最佳答案

这里的问题是 .lib 可以是静态库或 DLL 的导入库。在第一种情况下,它在二进制文件中的链接方式与 .a 文件在 Linux 上的链接方式相同,解析地址,删除不需要的代码等。在第二种情况下,.lib 文件作为 DLL 的 stub ,没有它就无法运行。您需要为您的库获取正确的版本(如果存在),然后与之链接,您不能使导入库的行为像静态库一样。

关于c++ - 您可以在命令行上使用 visual-c++ 静态链接特定库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27458631/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com