• 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

Object Storage Arubacloud
0 głosów
278 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 (42,000 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 (42,000 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 (42,000 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 (42,000 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ź 432 wizyt
pytanie zadane 22 października 2017 w Inne języki przez jjanek Użytkownik (630 p.)
0 głosów
1 odpowiedź 252 wizyt
pytanie zadane 17 września 2020 w C i C++ przez KumberTwo Dyskutant (8,270 p.)
–1 głos
2 odpowiedzi 374 wizyt
pytanie zadane 11 listopada 2020 w PHP przez Anedroid Obywatel (1,530 p.)

92,555 zapytań

141,402 odpowiedzi

319,540 komentarzy

61,938 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...