Mac-VScode-C++环境配置
mac上自带了clang所以不是必须下载Homebrew
下面是配置文件(注释记得删一下)
package.json
{"name": "git-base","displayName": "%displayName%","description": "%description%","version": "1.0.0","publisher": "vscode","license": "MIT","engines": {"vscode": "0.10.x"},"categories": ["Other"],"main": "./dist/extension.js","browser": "./dist/browser/extension.js","icon": "resources/icons/git.png","capabilities": {"virtualWorkspaces": true,"untrustedWorkspaces": {"supported": true}},"contributes": {"commands": [{"command": "git-base.api.getRemoteSources","title": "%command.api.getRemoteSources%","category": "Git Base API"}],"menus": {"commandPalette": [{"command": "git-base.api.getRemoteSources","when": "false"}]},"languages": [{"id": "git-commit","aliases": ["Git Commit Message", "git-commit"],"filenames": ["COMMIT_EDITMSG", "MERGE_MSG"],"configuration": "./languages/git-commit.language-configuration.json"},{"id": "git-rebase","aliases": ["Git Rebase Message", "git-rebase"],"filenames": ["git-rebase-todo"],"filenamePatterns": ["**/rebase-merge/done"],"configuration": "./languages/git-rebase.language-configuration.json"},{"id": "ignore","aliases": ["Ignore", "ignore"],"extensions": [".gitignore_global", ".gitignore", ".git-blame-ignore-revs"],"configuration": "./languages/ignore.language-configuration.json"}],"grammars": [{"language": "git-commit","scopeName": "text.git-commit","path": "./syntaxes/git-commit.tmLanguage.json"},{"language": "git-rebase","scopeName": "text.git-rebase","path": "./syntaxes/git-rebase.tmLanguage.json"},{"language": "ignore","scopeName": "source.ignore","path": "./syntaxes/ignore.tmLanguage.json"}]},"repository": {"type": "git","url": "https://github.com/microsoft/vscode.git"}
}
c_cpp_propreties.json
{"configurations": [{"name": "Mac","includePath": ["${workspaceFolder}/**","/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1" // 指定 libc++ 路径],"defines": [],"compilerPath": "/usr/bin/clang++", // 使用 clang++ 编译器"cStandard": "c17","cppStandard": "c++17","intelliSenseMode": "macos-clang-arm64"}],"version": 4
}
settings.json
{"code-runner.executorMap": {"cpp": "cd $dir && clang++ -std=c++17 -stdlib=libc++ -Wall $fileName -o a.out && ./a.out" // 使用 clang++ 编译器},"code-runner.runInTerminal": true,"files.autoSave": "afterDelay","terminal.integrated.defaultProfile.osx": "zsh","terminal.integrated.defaultEncoding": "utf-8","locale": "zh-cn","enable-crash-reporter": true,"crash-reporter-id": "3205589b-8611-4466-8315-38f465957f48"
}
其中 code-runner.runInTerminal设置为true解决了mac默认在输出跑无法输入的问题
tasks.json
{"version": "2.0.0","tasks": [{"label": "C/C++: clang++ 生成活动文件","type": "shell","command": "/usr/bin/clang++", // 使用 clang++ 编译器"args": ["-g","${file}","-o","${fileDirname}/${fileBasenameNoExtension}"],"group": "build","problemMatcher": ["$gcc" // 使用 $gcc 而不是 $clang],"detail": "生成 C++ 程序"},{"type": "cppbuild","label": "C/C++: clang++ 生成活动文件","command": "/usr/bin/clang++", // 使用 clang++ 编译器"args": ["-fdiagnostics-color=always","-g","${file}","-o","${fileDirname}/${fileBasenameNoExtension}"],"options": {"cwd": "${fileDirname}"},"problemMatcher": ["$gcc" // 使用 $gcc 而不是 $clang],"group": {"kind": "build","isDefault": true},"detail": "调试器生成的任务。"}]
}
C/C++编辑配置(UI)
command+shift+p,输入C/C++编辑配置(UI)
编辑器路径:/usr/bin/clang++
IntelliSense 模式根据你的芯片选择是arm还是intell
c标准的话一般为17