You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode中C++ <filesystem>编译成功但无法运行求助

解决MinGW下C++ 运行报错0xc0000139的问题

你的问题核心是编译成功但运行时缺少动态链接库,错误码0xc0000139表示程序找不到依赖的DLL文件,针对MinGW环境下的<std::filesystem>,给出以下解决方案:

方案1:静态链接依赖库(推荐)

编译时直接把依赖的库打包到可执行文件里,避免运行时找DLL的问题。修改编译命令为:

g++ -std=c++20 main.cpp -o main -static-libstdc++ -static-libgcc -lstdc++fs

参数说明:

  • -static-libstdc++:静态链接标准C++库
  • -static-libgcc:静态链接GCC运行库
  • -lstdc++fs:链接filesystem库

这样生成的exe可以直接运行,不需要额外的DLL文件。

方案2:复制缺失的DLL到程序目录

如果不想静态链接,找到你的MinGW安装目录(比如C:\MinGW-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\bin),找到libstdc++fs-6.dll文件,复制到你的main.exe所在的文件夹,再运行程序即可。

方案3:检查MinGW版本与环境配置

  • 确认MinGW是MinGW-w64版本(传统MinGW对C++17的filesystem支持不好),且版本不低于8.0
  • 检查系统PATH里的MinGW路径是否正确,确保是你正在使用的MinGW的bin目录,没有和其他版本的MinGW/TDM-GCC冲突
  • 如果是64位系统,确保使用的是64位MinGW,避免32/64位架构不匹配导致的DLL找不到

方案4:VSCode调试配置修正

如果在VSCode里调试报错,修改.vscode/launch.json,确保环境变量包含MinGW的bin目录:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "g++.exe - Build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [{"name": "PATH", "value": "${env:PATH};C:/你的MinGW路径/bin"}],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "C:/你的MinGW路径/bin/gdb.exe",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: g++.exe build active file"
        }
    ]
}

你的代码本身没有问题,只要解决依赖问题就能正常运行,执行后会创建test目录并输出hello world!。

内容的提问来源于stack exchange,提问作者gianluur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 01:29:52