gpt4 book ai didi

c++ - 如何在mingw中进行libwinpthread-1.dll的静态链接?

转载 作者:IT老高 更新时间:2023-10-28 13:57:55 24 4
gpt4 key购买 nike

我从这里使用 mingw:http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.7.2/32-bit/threads-posix/sjlj/x32-4.7。 2-release-posix-sjlj-rev2.7z/下载

我已经成功地使用 -static-libgcc -static-libstdc++ 静态链接 libstdc++-6.dlllibgcc_s_sjlj-1.dll 参数,但我找不到对 libwinpthread-1.dll 执行相同操作的命令。

最佳答案

如果您的工具链包含静态 winpthreads,请添加选项

-static

将拉入所有库的静态版本。

或者,您可以从工具链目录中删除 libwinpthread.dll.a 和 DLL 本身。这可能会弄乱与 libstdc++ 和 libgcc DLL 链接的程序,所以要小心。

第三个选项是使用 -Wl,-Bdynamic-Wl,-Bstatic 来选择你想要链接的版本(这就是 - static 在调用 ld 时在内部执行)。一个例子:

gcc -o someexec someobject.o -Wl,-Bdynamic -lsomelibIwantshared -Wl,-Bstatic -lsomelibIwantstatic

如果您在添加 -v 的情况下运行链接命令,当您使用 -static-libgcc 时,您应该会看到这些选项出现在 ld/collect2 调用中>-static-libstdc++.

关于c++ - 如何在mingw中进行libwinpthread-1.dll的静态链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13768515/

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