Vscode编译cpp踩坑记录:launch:program‘ ...\.\test.exe‘ dose not exist(生成exe失败)并出现undefined reference to `fu

1、报错原因

          在vscode中运行自定义的一些函数头文件等文件windows下出现无法生成exe的现象,根目录下运行其它test.cpp文件能够正常运行,奇怪。报错如下。应该可能是.vscode文件配置问题

并出现一下一系列:.....     undefined reference to ’func()

在linux系统下进行了再次测试,c_cpp,launch,task配置基本没有太多改变,运行Run C/C++,出现如下错误:

 The preLaunchTask 'C/C++: g++ build active file' terminated with exit code 1

应该是task文件中的问题

2、解决办法

网上有很多解决办法似乎都不能解决我的问题,大致如下:

1、编译器路径问题

2、task文件的label与launch文件的preLaunchTask名字一致。

3、task文件的type值要改成shell

4、代码有误/没保存

       在经过一番苦找之后参考了这位博主https://www.cnblogs.com/xiaml/articles/17425759.html终于找到了相关的解决办法(C++多文件编译)

在我根目录下的src文件夹下一些cpp和头文件,只需要将相关的*.cpp文件进行关联(除main以外的)

在task.json的${file}下面添相关cpp文件即可,如下所示,成功在windows和linux下都成功运行。

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值