2017-08-16 124 views
1

我已经完成以下操作,尝试在macOS上为C++设置开发环境,但徒劳无功。无法在新安装的Visual Studio代码上运行C++代码

  1. 我从微软网站下载了Visual Studio代码并正确安装。

  2. 我安装了ms-vscode.cpptools和mitaki28.vscode-clang。

  3. 我安装了gdb。

以下是我得到了警告:

LD:警告:忽略文件/用户/安迪/文档/ VS代码C++ /世界您好/ .vscode/tasks.json,文件是为不受支持的文件格式(0x7B 0x0A 0x20 0x20 0x20 0x20 0x22 0x76 0x65 0x72 0x73 0x69 0x6F 0x6E 0x22 0x3A)而不是被链接的体系结构(x86_64):/ Users/andy/Documents/VS代码C++/Hello World/.vscode /tasks.json

Undefined symbols for architecture x86_64: 
    "_main", referenced from: 
    implicit entry/start for main executable 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

编辑1:我的平台是macOS。

编辑2:我试图建立最简单的Hello World项目时出现问题,因此问题不能成为我的C++代码。但我几乎是新手,所以我不知道.json的东西是什么。

编辑3:我认为这个问题可能在于launch.json文件,所以这是我的文件:

{ 
"version": "0.2.0", 
"configurations": [ 
    { 
     "name": "C++ Launch (GDB)", 
     "type": "cppdbg", 
     "request": "launch", 
     "targetArchitecture": "x64", 
     "program": "${file}.out", 
     "args": [], 
     "stopAtEntry": false, 
     "cwd": "${workspaceRoot}", 
     "environment": [], 
     "externalConsole": true, 
     "preLaunchTask": "g++", 
     "miDebuggerPath": "/usr/local/bin/gdb" 
    } 
] 

}

+0

0x7B 0x0A 0x20 0x20 0x20 0x20 0x22 0x76 0x65 0x72 0x73 0x6 0x6E 0x6E 0x22 0x3A - > something something'version':''?那很奇怪,为什么它把JSON文件当作一些二进制对象/可执行文件? – paxdiablo

+0

什么操作系统/平台? – Ben

+1

Ref @paxdiablo看起来像指定了Json文件作为要链接的目标文件。看看构建文件。 – Ben

回答

0

看来,你只是没有{somefile}.cpp文件您含有

int main() { 
    ... 
    return 0; 
} 

项目(或文件不被编译)

功能。

您可以放心地忽略tasks.json警告 - 它被错误地传递给链接器输入,链接器忽略该文件。

+0

我有一个名为HelloWorld.cpp的文件,并有一个int main()来打印Hello World。 –

+0

然后它只是没有被编译出于某种原因。请发布完整的建设过程。 –

+0

上面显示的警告是VS代码OUTPUT窗口中的完整输出。在其他窗口中,根本没有。 –

相关问题