Не могу построить даже простую программу в Sublime Text 3 - PullRequest
0 голосов
/ 26 мая 2018

Я только что перешел с Python на C ++ для реализации структур данных и алгоритмов.Я обнаружил, что Sublime Text 3 был достаточно мощным.Я установил его, добавил мой путь к компилятору Mingw-64, а также добавил «систему сборки».Я надеялся, что будет достаточно собрать и запустить любую основную программу на C ++.Но когда я запускаю

#include <iostream>
using namespace std;

int main() {
   int n;
   cin>>n;
   cout<<n<<endl;
   return 0;
}

, я знаю, что возникает какая-то проблема либо в части сборки, либо в настройках компилятора.Я пробовал разные компиляторы, от блоков кода до независимого компилятора Mingw-64, но безуспешно.Раньше я использовал блоки кода, мне никогда не требовалось создавать исполняемый файл или ссылаться на него.Если я перезапущу программу, она покажет ошибку отказа в разрешении, и я знаю, почему она возникает.

Вот ошибка:

Системе не удается найти файл G: \ Programming \C ++ \ second.exe.[Завершено в 15.0 с кодом завершения 1]

[shell_cmd: g ++ "G: \ Programming \ C ++ \ second.cpp" -o "G: \ Programming \ C ++ / second" && "G: \ Programming\ C ++ / second "] [dir: G: \ Programming \ C ++] [путь: C: \ Program Files (x86) \ NVIDIA Corporation \ PhysX \ Common; C: \ ProgramData \ Oracle \ Java \ javapath; C: \ WINDOWS\ system32; C: \ WINDOWS; C: \ WINDOWS \ System32 \ Wbem; C: \ WINDOWS \ System32 \ WindowsPowerShell \ v1.0 \; C: \ Программные файлы (x86) \ ATI Technologies \ ATI.ACE \ Core-Static; C: \ Program Files \ Intel \ WiFi \ bin \; C: \ Program Files \ Common Files \ Intel \ WirelessCommon \; C: \ Program Files (x86) \ Windows Live \ Shared; C: \ Program Files \ MATLAB \Производственный сервер MATLAB \ R2015a \ runtime \ win64; C: \ Program Files \ MATLAB \ Производственный сервер MATLAB \ R2015a \ bin; C: \ Program Files \ MATLAB \ Производственный сервер MATLAB \ R2015a \ polyspace \ bin; C: \ Python27 \;C: \ Python27 \ Lib \ site-packages \ PyQt4; C: \ Program Files \ Git \ cmd; C: \ Program Files (x86) \ mingw-w64 \ i686-7.1.0-posix-dwarf-rt_v5-rev0 \mingw32 \ Bin; C: \ Users \ 80LM0141IH \ Anaconda3; C: \ Users \ 80LM0141IH \ Anaconda3 \ Library \ MinGW-ш64 \ Bin; C: \ Users \ 80LM0141IH \ Anaconda3 \ Library \ USR \ Bin; C: \ Users \ 80LM0141IH \ Anaconda3 \ Library \ Bin; C: \ Users \ 80LM0141IH \ Anaconda3 \ Scripts; C: \ Users \ 80LM0141IH \AppData \ Local \ Programs \ Python \ Python36 \ Scripts \; C: \ Users \ 80LM0141IH \ AppData \ Local \ Programs \ Python \ Python36 \; C: \ Users \ 80LM0141IH \ AppData \ Local \ Microsoft \ WindowsApps; G: \ MicrosoftКод VS \ bin; C: \ Users \ 80LM0141IH \ AppData \ Local \ GitHubDesktop \ bin; C: \ Users \ 80LM0141IH \ AppData \ Local \ Microsoft \ WindowsApps; "; C: \ Program Files (x86) \ Graphviz2.38 \bin "; C: \ Program Files (x86) \ Graphviz2.34 \ bin;]

1 Ответ

0 голосов
/ 26 мая 2018

Прежде чем мы начнем, вам нужно убедиться, что вы установили компилятор C ++ и правильно настроили его путь .Убедитесь, что вы можете вызвать команду g++ в командной строке.

Я вижу из вашего кода, что вам нужен ввод со стандартного ввода.Консоль Sublime Text не может принимать ввод.Так что, может быть, в этом проблема.Вам нужно запустить эту программу в терминале

Попробуйте заменить систему сборки следующими настройками:

{
    "shell_cmd": "g++ -std=c++11 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && \"${file_path}/${file_base_name}\"",
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "working_dir": "${file_path}",
    "selector": "source.c++, source.cpp, source.cc, source.cxx",

    "variants":
    [
        {
            "name": "Run in Terminal",

            "linux": {
                "shell_cmd": "g++ -std=c++11 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && xterm -e '${file_path}/${file_base_name} && echo && echo Press ENTER to continue && read line && exit'",
                // "shell_cmd": "g++ -std=c++11 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && gnome-terminal -e 'bash -c \"${file_path}/${file_base_name}&& echo && echo Press ENTER to continue && read line && exit\"'", // for gnome-terminal 
                // "shell_cmd": "g++ -std=c++11 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && xterm -e '${file_path}/${file_base_name}; bash'", // for xterm
                // "shell_cmd": "g++ -std=c++11 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && xterm -hold -e ${file_path}/${file_base_name}", // for xterm
                // "shell_cmd": "g++ -std=c++11 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && konsole --hold -e ${file_path}/./${file_base_name}", // for konsole

            },

            "windows":{
                "shell_cmd":   "g++ -std=c++11 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && start cmd /k  $file_base_name "
                // "shell_cmd":   "g++ -std=c++11 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && start \"$file_base_name\" call $file_base_name"
            },

            "osx":{
                "shell_cmd": "g++ -std=c++11 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && xterm -e '${file_path}/${file_base_name} && echo && echo Press ENTER to continue && read line && exit'",
            },

            "shell": true,
        },
    ]
}

Нажмите Ctrl + Shift + B и выберите C++ - Run in Terminal.Он скомпилирует и запустит программу в вашем cmd.enter image description here

Я могу правильно запустить ваш фрагмент кода в моей среде.Дайте мне знать, если у вас возникнут какие-либо проблемы.

enter image description here

...