Hemen başlayalım.

  • Albert Launcher yüklü ise gdb ile çakışmaya sebep oluyor sanırım. Kaldırmanız gerekecek.
    • sudo su
    • apt-get remove albert -y

Derleyicilerin kurulumu;
  • sudo apt-get update
  • sudo apt-get install build-essential gdb g++
  • Kontrol etmek için g++ --version
  • Kontrol etmek için gdb --version
    • Sürüm bilgisi ve telif hakkı içeren yazılar gelirse tamamdır.


Visual Studio Code yükleme;

  • Bu adresten size uygun sürümü indirin: Visual Studio Code - Code Editing. Redefined
  • İnen dosyanın adını vscode yapın ve aynı klasörde terminali açın.
  • Uzantısı ile yazın;
    • sudo dpkg -i vscode.deb
  • Yüklenmiş olmalı. :)


Eklenti eklemek ve harici terminali kullanmak;

  • Solda eklenti paketlerinden Microsoft'un sunduğu C++ eklentisini yükleyin.
  • Test etmek için basit bir kodu derlemeyi deneyin;
    • C++:
      #include<iostream>
      
      int main(){
      
          std::cout<<"Get over here!\n";
          std::cin.get();
      }


  • F5'e basıp derleyebilirsiniz.
f5-gdb.png


  • Şimdi g++'ı seçin

g++.png



  • Çıktı ekranı böyle oluyor;

ilk-cikti.png



  • Şimdi launch.json dosyasından externalConsole değerini true yapın.

external-true.png



  • Kaydedin ve tekrar F5 ile derlemeyi başlatın.
  • Gördüğünüz gibi kodumuz artık harici terminalde çalışıyor.

son-cikti.png


Yeni başlayanlara anlatır gibi anlatmak istemedim çünkü Linux kullanan kişiler az da olsa ne yapacağını biliyordur. :)

Guncelleme:

Artik launch.json dosyasi kendiliginden olusmuyor. Elle .vscode klasorunde launch.json adinda dosya olusturup, alttaki kodlari yapistirip kaydederek harici terminalde calisabilirsiniz. Farkli bir yolu varsa belirtebilirsiniz.

1663086683375.png


Kod:
{

    "version": "0.2.0",
    "configurations": [
    {
    "name": "g++ - Build and debug active file",
    "type": "cppdbg",
    "request": "launch",
    "program": "${fileDirname}/${fileBasenameNoExtension}",
    "args": [],
    "stopAtEntry": false,
    "cwd": "${workspaceFolder}",
    "environment": [],
    "externalConsole": true,
    "MIMode": "gdb",
    "setupCommands": [
    {
    "description": "Enable pretty-printing for gdb",
    "text": "-enable-pretty-printing",
    "ignoreFailures": true
    }
    ],
    "preLaunchTask": "C/C++: g++ build active file",
    "miDebuggerPath": "/usr/bin/gdb"
    }
    ]
    }
 
Son düzenleyen: Moderatör:
Derleyiciler yüklü. CodeRunner kullanmıyorum.
Yeni klasörde deneyin. Olmazsa launch.json dosyasını bununla değiştirin;

[CODE title="launch.json"]{

"version": "0.2.0",
"configurations": [
{
"name": "g++ - Build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}/${fileBasenameNoExtension}",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: g++ build active file",
"miDebuggerPath": "/usr/bin/gdb"
}
]
}[/CODE]



Task.json'u da değiştirin. :D

[CODE title="tasks.json"]{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++ build active file",
"command": "/usr/bin/g++",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "Task generated by Debugger."
}
],
"version": "2.0.0"
}[/CODE]
 
Elinize sağlık. Bir ara ben de kurmayı düşünüyorum. Daha çok C# için arayıştayım. Derslerim gereği çoğunlukla C# kullanıyorum. Lanet Windows 10'dan kurtulamadığım için çok üzülüyorum :(. Bir de masaüstü olduğundan stabil Linux'da çalıştıramıyorum.
 
Yeni klasörde deneyin. Olmazsa launch.json dosyasını bununla değiştirin;

[CODE title="launch.json"]{

"version": "0.2.0",
"configurations": [
{
"name": "g++ - Build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}/${fileBasenameNoExtension}",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: g++ build active file",
"miDebuggerPath": "/usr/bin/gdb"
}
]
}[/CODE]



Task.json'u da değiştirin. :D

[CODE title="tasks.json"]{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++ build active file",
"command": "/usr/bin/g++",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "Task generated by Debugger."
}
],
"version": "2.0.0"
}[/CODE]
Aynı. Alttaki çubuk mavi kalıyor.
Ekran görüntüsü_2021-04-30_18-59-57.png
 
Abi bunun bir de Windows'unu yapsana.
Dün yapacaktım aslında. Akşama doğru paylaşırım.

Abi bunun bir de Windows'unu yapsana.

Guncelleme:

Artik launch.json dosyasi kendiliginden olusmuyor. Elle .vscode klasorunde launch.json adinda dosya olusturup, alttaki kodlari yapistirip kaydederek harici terminalde calisabilirsiniz. Farkli bir yolu varsa belirtebilirsiniz.

1663086683375.png


Kod:
{

    "version": "0.2.0",
    "configurations": [
    {
    "name": "g++ - Build and debug active file",
    "type": "cppdbg",
    "request": "launch",
    "program": "${fileDirname}/${fileBasenameNoExtension}",
    "args": [],
    "stopAtEntry": false,
    "cwd": "${workspaceFolder}",
    "environment": [],
    "externalConsole": true,
    "MIMode": "gdb",
    "setupCommands": [
    {
    "description": "Enable pretty-printing for gdb",
    "text": "-enable-pretty-printing",
    "ignoreFailures": true
    }
    ],
    "preLaunchTask": "C/C++: g++ build active file",
    "miDebuggerPath": "/usr/bin/gdb"
    }
    ]
    }
 
Son düzenleme:
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Yeni konular

Geri
Yukarı