「設定 - リモートデバッグ」の版間の差分
(ページの作成:「== 概要 == ここでは、VMwareを使用してCentOS 7をゲストOSとして構築している。<br> Visual Studio 2017からデバッグが出来るようにゲス…」) |
編集の要約なし |
||
1行目: | 1行目: | ||
== 概要 == | == 概要 == | ||
ここでは、VMware WorkStation Proを使用してCentOS 7をゲストOSとして構築している。<br> | |||
Visual Studio 2017からデバッグが出来るようにゲストOS(CentOS 7) | <br><br> | ||
== ゲストOSを設定する == | |||
===== GDBとGDB Serverをインストールする ===== | |||
Visual Studio 2017からデバッグが出来るようにゲストOS(CentOS 7)にGDBとGDB Serverを以下のコマンドを入力してインストールする。<br> | |||
sudo yum install gdb | sudo yum install gdb | ||
sudo yum install gdb-gdbserver | sudo yum install gdb-gdbserver | ||
<br> | |||
===== SSHサーバを設定する ===== | |||
SSHサーバは、CentOS 7をMinimal Installした場合でも、標準でOpenSSHがインストールされるため、追加インストールする必要はない。<br> | |||
また、標準で自動起動設定になっているため、パスワード認証方式でのログインが可能となっている。<br> | |||
したがって、最低限必要な設定としては、セキュリティを考慮して、以下のようにrootアカウントの直接ログインの禁止設定を実施しておけばよい。<br> | |||
sudo gedit /etc/ssh/sshd_config | |||
PermitRootLogin no #38行目(rootログイン禁止) | |||
<br> | |||
設定を反映させるため、sshdを再起動する。<br> | |||
sudo systemctl restart sshd | |||
<br> | |||
Firewalldを有効にしている場合は、SSHサービスの許可が必要である。なお、このページでは、SSHは22/TCPを使用する。<br> | |||
sudo firewall-cmd --add-service=ssh --permanent | |||
sudo firewall-cmd --reload | |||
<br><br> | |||
== プロジェクトを新規作成する == | |||
[ファイル]メニュー - [新規作成] - [Visual C++] - [クロスプラットフォーム] - [Linux]を展開し、C++によるLinux開発を選択する。<br> | |||
<br><br> | <br><br> | ||
== | == リモートシステムの設定を行う == | ||
接続先のLinuxを指定するダイアログ(Connect to Remote System)が表示されるので次のように入力する。<br> | 接続先のLinuxを指定するダイアログ(Connect to Remote System)が表示されるので次のように入力する。<br> | ||
Host Name : ホスト名またはIPアドレス(例 : 192.168.111.5) | Host Name : ホスト名またはIPアドレス(例 : 192.168.111.5) | ||
14行目: | 36行目: | ||
<br> | <br> | ||
※次回からは入力しなくてもこの設定で自動的に接続される。<br> | ※次回からは入力しなくてもこの設定で自動的に接続される。<br> | ||
※上記の接続先の設定において、Visual Studio | ※上記の接続先の設定において、Visual Studio 2017の[ツール]メニュー - [オプション] - [クロスプラットフォーム]からコネクションマネージャーで再設定できる。<br> | ||
<br><br> | <br><br> | ||
2020年1月16日 (木) 13:49時点における版
概要
ここでは、VMware WorkStation Proを使用してCentOS 7をゲストOSとして構築している。
ゲストOSを設定する
GDBとGDB Serverをインストールする
Visual Studio 2017からデバッグが出来るようにゲストOS(CentOS 7)にGDBとGDB Serverを以下のコマンドを入力してインストールする。
sudo yum install gdb sudo yum install gdb-gdbserver
SSHサーバを設定する
SSHサーバは、CentOS 7をMinimal Installした場合でも、標準でOpenSSHがインストールされるため、追加インストールする必要はない。
また、標準で自動起動設定になっているため、パスワード認証方式でのログインが可能となっている。
したがって、最低限必要な設定としては、セキュリティを考慮して、以下のようにrootアカウントの直接ログインの禁止設定を実施しておけばよい。
sudo gedit /etc/ssh/sshd_config PermitRootLogin no #38行目(rootログイン禁止)
設定を反映させるため、sshdを再起動する。
sudo systemctl restart sshd
Firewalldを有効にしている場合は、SSHサービスの許可が必要である。なお、このページでは、SSHは22/TCPを使用する。
sudo firewall-cmd --add-service=ssh --permanent sudo firewall-cmd --reload
プロジェクトを新規作成する
[ファイル]メニュー - [新規作成] - [Visual C++] - [クロスプラットフォーム] - [Linux]を展開し、C++によるLinux開発を選択する。
リモートシステムの設定を行う
接続先のLinuxを指定するダイアログ(Connect to Remote System)が表示されるので次のように入力する。
Host Name : ホスト名またはIPアドレス(例 : 192.168.111.5) Port : 22(固定) User Name : CentOSで使用しているユーザ名(例 : centos) Password : CentOSで使用しているユーザ名のパスワード
※次回からは入力しなくてもこの設定で自動的に接続される。
※上記の接続先の設定において、Visual Studio 2017の[ツール]メニュー - [オプション] - [クロスプラットフォーム]からコネクションマネージャーで再設定できる。
実行
実行する前に[デバッグ]メニューからLinux Consoleウインドウを表示する。
リモートGDBデバッガーを実行すると実行結果がLinux Consoleウインドウに表示される。
備考
CentOS 7のホームディレクトリ下にprojectsディレクトリが作成されて、そこにプロジェクトが配置される。
日本語を使う時の問題点
ソースファイル(Visual Studio側もLinux側も)がShift JISで保存されるため文字化けが起きる。
外部エディタにてUTF-8で再保存して(Visual Studio側)、ビルドすると文字化けしない。