• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

VisualCode debugowanie (Windows 10, konsola bash) - error 127

Aruba Cloud PRO i VPS, Openstack, VMWare, MS Hyper-V
0 głosów
180 wizyt
pytanie zadane 10 czerwca 2020 w C i C++ przez remoh Początkujący (390 p.)
edycja 10 czerwca 2020 przez remoh

Witam,

mam problem z debugowaniem kodu w VSCode, kiedy korzystam z terminala bash. Gdy korzystam z powershella to wszystko działa dobrze. Mogę kompilować, debugować. Niestety jak tylko zmieniam konsolę na bash to podczas próby kompilacji lub debugowania wyskakuje mi błąd:

> Executing task: C:\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin\g++.exe -g C:\Users\Adam\Projekty\Moje\helloworld\main.cpp -o C:\Users\Adam\Projekty\Moje\helloworld\main.exe <


/usr/bin/bash: C:mingw-w64x86_64-8.1.0-posix-seh-rt_v6-rev0mingw64bing++.exe: command not found
The terminal process terminated with exit code: 127

 

Dodam jeszcze, że w bashu kompilacja za pomocą komendy g++ main.cpp lub z pomocą makefile działa poprawnie.

Nie działa jedynie korzystanie z funkcjonalności rozszerzenia C/C++ for Visual Studio Code. Czyli kompilowanie za pomocą Tasks: Run Tasks lub Ctrl+Shift+B oraz Debugowanie

 

 

Poniżej macie mój filmik obrazujący ten problem oraz zawartość moich plików konfiguracyjnych:

https://www.youtube.com/watch?v=lElH2V57MpE

 

tasks.json

{
	"version": "2.0.0",
	"tasks": [
	  {
		"type": "shell",
		"label": "g++.exe build active file",
		"command": "C:\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin\\g++.exe",
		"args": ["-g", "${workspaceFolder}\\main.cpp", "-o", "${workspaceFolder}\\main.exe"],
		"options": {
		  "cwd": "C:\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin"
		},
		"problemMatcher": ["$gcc"],
		"group": {
		  "kind": "build",
		  "isDefault": true
		}
	  }
	]
  }

 

launch.json

{
    "version": "0.2.0",
    "configurations": [
      {
        "name": "g++.exe build and debug active file",
        "type": "cppdbg",
        "request": "launch",
        "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
        "args": [],
        "stopAtEntry": false,
        "cwd": "${workspaceFolder}",
        "environment": [],
        "externalConsole": true,
        "MIMode": "gdb",
        "miDebuggerPath": "C:\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin\\gdb.exe",
        "setupCommands": [
          {
            "description": "Enable pretty-printing for gdb",
            "text": "-enable-pretty-printing",
            "ignoreFailures": true
          }
        ],
        "preLaunchTask": "g++.exe build active file"
      }
    ]
  }

c_cpp_properties.json

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "cStandard": "c11",
            "cppStandard": "gnu++17",
            "intelliSenseMode": "gcc-x64",
            "compilerPath": "C:\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin\\g++.exe"
        }
    ],
    "version": 4
}

 

komentarz 10 czerwca 2020 przez tkz Nałogowiec (41,960 p.)

/usr/bin/bash: C:mingw-w64x86_64-8.1.0-posix-seh-rt_v6-rev0mingw64bing++.exe: command not found
 

To jest niepoprawna ścieżka.

komentarz 10 czerwca 2020 przez remoh Początkujący (390 p.)
edycja 10 czerwca 2020 przez remoh
Domyśliłem się, że niepoprawna ścieżka. Ale w ustawieniach wszystko wydaje się być poprawne. W konsoli powershell kompilacja i debugowanie działa dobrze. Nie mam pojęcia co muszę zmienić/dopisać do plików konfiguracyjnych by zadziałało.

Może jest tu jakaś osoba, która programuje C++ w VSCode z konsolą Bash i wie jak ten problem rozwiązać.
komentarz 10 czerwca 2020 przez tkz Nałogowiec (41,960 p.)
Masz subsystem na windowsie? U mnie ścieżka wygląda następująco /mnt/c/msys64/mingw64. Spróbuj w ten sposób, bo C:\\ na pewno nie zadziała.
komentarz 10 czerwca 2020 przez remoh Początkujący (390 p.)
edycja 10 czerwca 2020 przez remoh
Nie mam. Korzystam z GIT'owego basha.
komentarz 10 czerwca 2020 przez tkz Nałogowiec (41,960 p.)
komentarz 10 czerwca 2020 przez remoh Początkujący (390 p.)

@tkz, Zmieniłem w pliku tasks.json:

"command": "C:\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin\\g++.exe",

na:
 "command": "C:/mingw-w64/x86_64-8.1.0-posix-seh-rt_v6-rev0/mingw64/bin/g++.exe",

 

w rezultacie teraz mi wywala takie błedy:

g++.exe: error: C:UsersAdamProjektyMojehelloworldmain.cpp: No such file or directory
g++.exe: fatal error: no input files
compilation terminated.
The terminal process terminated with exit code: 1

 

komentarz 10 czerwca 2020 przez tkz Nałogowiec (41,960 p.)
Backslash, nie slash bo bash ich nie interpretuje w "poprawny" sposób. Dlaczego chcesz używać gitowego terminala?
komentarz 10 czerwca 2020 przez remoh Początkujący (390 p.)

@tkz Przez chwilę korzystałem z basha linuxowego na subsystemie ale miałem z nim jakieś problemy (już nie pamiętam jakie). GIT'owy zadziałał mi od razu.

Ja jestem na początkowym etapie drogi nauki programowania i zaliczyłem niedawno ciężką przesiadkę z CodeBlocksa na VS Code.

Już wystarczająco dużo miałem rzeczy do ogarnięcia by dokładać sobie jeszcze subsystem i rozwiązywanie problemów z nim związanych:D.

1 odpowiedź

0 głosów
odpowiedź 10 czerwca 2020 przez remoh Początkujący (390 p.)
edycja 11 czerwca 2020 przez remoh

Problem rozwiązany.

Dziękuje wszystkim za naprowadzenie mnie do rozwiązania problemu.

 

wystarczyło przebudować tasks.json w ten sposób:

{
	"version": "2.0.0",
	"tasks": [
	  {
		"type": "shell",
		"label": "g++.exe build active file",
		"command": "C:/mingw-w64/x86_64-8.1.0-posix-seh-rt_v6-rev0/mingw64/bin/g++.exe",
		"args": [
			"-g",
			"${workspaceFolder}/main.cpp",
			"-o",
 			"${workspaceFolder}/main.exe"],
		"options": {
		  "cwd": "C:\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin"
		},
		"problemMatcher": ["$gcc"],
		"group": {
		  "kind": "build",
		  "isDefault": true
		}
	  }
	]
  }

 

Do projektów z większą ilością plików cpp:

{
	"version": "2.0.0",
	"tasks": [
	  {
		"type": "shell",
		"label": "g++.exe build active file",
		"command": "C:/mingw-w64/x86_64-8.1.0-posix-seh-rt_v6-rev0/mingw64/bin/g++.exe",
		"args": [
			"-g",
			"${workspaceFolder}/main.cpp",
			"${workspaceFolder}/class1.cpp",
			"${workspaceFolder}/class2.cpp",
			"-o",
			"${workspaceFolder}/main.exe"],
 		"options": {
		  "cwd": "C:\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin"
		},
		"problemMatcher": ["$gcc"],
		"group": {
		  "kind": "build",
		  "isDefault": true
		}
	  }
	]
  }

 

Podobne pytania

0 głosów
1 odpowiedź 237 wizyt
pytanie zadane 22 października 2017 w Inne języki przez jjanek Użytkownik (630 p.)
0 głosów
1 odpowiedź 151 wizyt
pytanie zadane 17 września 2020 w C i C++ przez KumberTwo Dyskutant (8,270 p.)
–1 głos
2 odpowiedzi 118 wizyt
pytanie zadane 11 listopada 2020 w PHP przez Anedroid Obywatel (1,530 p.)

90,900 zapytań

139,572 odpowiedzi

313,905 komentarzy

60,373 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Sklep oferujący ćwiczenia JavaScript, PHP, rozmowy rekrutacyjne dla programistów i inne materiały

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...