VSCode 中的 Cpp - 如何编译到其他文件夹
Cpp in VSCode - How to compile to other folder
我正在使用 VSCode 用 C++ 编程。
当我 运行 代码(使用“Code Runner”扩展)时,.exe
文件存储在同一个文件夹中。
我在许多项目中看到他们将其存储在 /bin
文件夹中。
是否可以自动将其存储在那里? (如果 /bin
文件夹不存在,也创建它)。
谢谢!
我想出了 2 种方法来完成您的任务:
在这种情况下,您必须手动创建 bin 文件夹
那么让我们配置您的 VScode 扩展程序
从扩展程序页面按照此步骤打开设置
从扩展程序页面按照此步骤打开设置
在设置选项卡中打开“在 settings.json 中编辑”
在您的 Json 中找到“code-runner.executorMap”::cpp 并插入以下命令而不是现有命令
cd $dir/bin && g++ ../$fileName -o $fileNameWithoutExt && $fileNameWithoutExt
所以它看起来像这样
P。 S. 此命令适用于 Windows,但可能不适用于 linux。我猜如果前面的命令在 linux 中不起作用,那么尝试下一个
cd $dir/bin && g++ ../$fileName -o $fileNameWithoutExt && ./$fileNameWithoutExt
而且我认为,如果您是 linux 用户,您可以使用命令自动执行所有操作(但不幸的是我无法测试它)
cd $dir && mkdir -p bin && cd bin && g++ ../$fileName -o $fileNameWithoutExt && ./$fileNameWithoutExt
在这种情况下,您必须通过添加到 json 下面的行
来将执行切换到集成终端(因此输出会稍微改变)
"code-runner.runInTerminal": true
并将您的 cpp 命令更改为:
对于windows
cd $dir && mkdir -Force bin > $null && cd bin && g++ ../$fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt
我猜 linux
cd $dir && mkdir -p bin && cd bin && g++ ../$fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt
所以它看起来像这样
添加 Deumaudit 对 Linux 用户的回答,
在您的工作目录中手动创建一个 bin
文件夹。
现在,在 "code-runner.executorMap"::cpp
下的 settings.json
文件中插入以下命令,而不是现有命令:
cd $dir && g++ $fileName -o $dir/bin/$fileNameWithoutExt && $dir/bin/$fileNameWithoutExt
对于那些单独使用 /src 和 /bin 的人,这是我的解决方案:
将“cpp”:在“代码-runner.executorMap”下更改为
"cpp": "cd $dir && g++ $fileName -o ..\bin\$fileNameWithoutExt && ..\bin\$fileNameWithoutExt",
这会从父文件夹中的 bin 文件夹创建并运行 .exe。
如果有人对将可执行文件分离到 \bin 目录和 运行 具有外部 cmd.exe 的代码感兴趣,请使用此 (code-runner.executorMap):
"c": "cd $dir && gcc $fileName -o .\bin\$fileNameWithoutExt && start cmd \"/k ; .\bin\$fileNameWithoutExt\""
这是针对 C 的,但很容易针对 C++ 进行修改。
我正在使用 VSCode 用 C++ 编程。
当我 运行 代码(使用“Code Runner”扩展)时,.exe
文件存储在同一个文件夹中。
我在许多项目中看到他们将其存储在 /bin
文件夹中。
是否可以自动将其存储在那里? (如果 /bin
文件夹不存在,也创建它)。
谢谢!
我想出了 2 种方法来完成您的任务:
在这种情况下,您必须手动创建 bin 文件夹
那么让我们配置您的 VScode 扩展程序
从扩展程序页面按照此步骤打开设置
从扩展程序页面按照此步骤打开设置
在设置选项卡中打开“在 settings.json 中编辑”
在您的 Json 中找到“code-runner.executorMap”::cpp 并插入以下命令而不是现有命令
cd $dir/bin && g++ ../$fileName -o $fileNameWithoutExt && $fileNameWithoutExt
所以它看起来像这样
P。 S. 此命令适用于 Windows,但可能不适用于 linux。我猜如果前面的命令在 linux 中不起作用,那么尝试下一个
cd $dir/bin && g++ ../$fileName -o $fileNameWithoutExt && ./$fileNameWithoutExt
而且我认为,如果您是 linux 用户,您可以使用命令自动执行所有操作(但不幸的是我无法测试它)
cd $dir && mkdir -p bin && cd bin && g++ ../$fileName -o $fileNameWithoutExt && ./$fileNameWithoutExt
在这种情况下,您必须通过添加到 json 下面的行
来将执行切换到集成终端(因此输出会稍微改变)"code-runner.runInTerminal": true
并将您的 cpp 命令更改为:
对于windows
cd $dir && mkdir -Force bin > $null && cd bin && g++ ../$fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt
我猜 linux
cd $dir && mkdir -p bin && cd bin && g++ ../$fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt
所以它看起来像这样
添加 Deumaudit 对 Linux 用户的回答,
在您的工作目录中手动创建一个 bin
文件夹。
现在,在 "code-runner.executorMap"::cpp
下的 settings.json
文件中插入以下命令,而不是现有命令:
cd $dir && g++ $fileName -o $dir/bin/$fileNameWithoutExt && $dir/bin/$fileNameWithoutExt
对于那些单独使用 /src 和 /bin 的人,这是我的解决方案:
将“cpp”:在“代码-runner.executorMap”下更改为
"cpp": "cd $dir && g++ $fileName -o ..\bin\$fileNameWithoutExt && ..\bin\$fileNameWithoutExt",
这会从父文件夹中的 bin 文件夹创建并运行 .exe。
如果有人对将可执行文件分离到 \bin 目录和 运行 具有外部 cmd.exe 的代码感兴趣,请使用此 (code-runner.executorMap):
"c": "cd $dir && gcc $fileName -o .\bin\$fileNameWithoutExt && start cmd \"/k ; .\bin\$fileNameWithoutExt\""
这是针对 C 的,但很容易针对 C++ 进行修改。