mingw静态链接(libgcc_s_seh-1,libstdc++-6和 libwinpthread-1)

11 篇文章 0 订阅

1 概述

  在Windows用mingw编译的C/C++程序默认会依赖这三个动态库:

  • libgcc_s_seh-1.dll: 该库是 GCC 提供的一个运行时库,用于处理 C 和 C++ 程序中的一些基本运算。SEH 代表结构化异常处理,这是 Windows 系统上的一种异常处理机制。
  • libstdc+±6.dll: 该库是 GCC 提供的 C++ 标准库的动态链接库文件,它包含了 C++ 程序运行时需要的标准库实现。在 Windows 平台上,许多使用 C++ 编写的应用程序都依赖这个 DLL 文件。
  • libwinpthread-1.dll: 该库是 GnuWin 工具集中的一个 DLL 文件,它提供了 POSIX 线程库(pthreads)的 Windows 实现。

其实可以选择链接对应版本的静态库.

2 静态链接libgcc_s_seh-1.dll

链接时增加链接选项 -static-libgcc,如下所示:

gcc -o myprogram myprogram.c -static-libgcc

3 静态链接libstdc+±6

链接时增加链接选项 -static-libstdc++,如下所示:

g++ -o myprogram main.cpp -static-libstdc++

4 静态链接libwinpthread-1.dll

暂时没法发现静态链接libwinpthread-1.dll的专用链接选项,不过可以通过链接选项 -static来实现。不过链接选项-static相当于将libstdc+±6和libgcc_s_seh-1也静态链接了。

g++ -o myprogram main.cpp -static
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

flysnow010

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值