本サイトでは、アフィリエイト広告およびGoogleアドセンスを利用しています。

VisualStudio で for Linux Development

以前に VisualStudio で Linux での開発に向けて色々とやってみましたが、今はまた新しい方法があるようだったので試してみました。今回は Linux 側として Fedora23 を使用してみます。特殊なことはしていないため他のLinux系のものでも適用可能だと思います。

vs_linux_8

これらの環境設定の手順などを説明していきます。

環境の準備

Linux 側と Windows 側とでそれぞれ準備が必要です。

Linux側でコンパイラ・デバッガの準備

まず Linux 側でgdbserver や ssh サーバーが使えるように準備します。

インストールは以下のコマンドを実行しています。

$ sudo dnf install openssh-server gcc-c++ gdb gdb-gdbserver

linux_setup_1
sshサーバーが起動していないようならば、これを起動しておきます。

$ sudo systemctl start sshd

Windows側で VisualStudio の準備

“Visual C++ for Linux Development” という拡張プラグインがあるのでこちらを使用します。これは Visual Studio 2015 用となっているようです(2016/05末現在)。今回試したバージョンは v1.0.2 となっていました。

vs_linux_1

vs_linux_2
インストールが完了して、VisualStudio 2015 の C++ 関連のプロジェクトを確認してみると以下のように項目が増えていました。

vs_linux_3

動作確認

早速どのような感じで動くのかを試してみたいと思います。
VisualStudio で Linux / Empty Project を選択して、プロジェクトを作成します。

何もない状態なので、main.cpp を追加して、hello,world を作成してみました。

vs_linux_4

ここでこのプロジェクトのビルドを行うと、以下のように新規のウィンドウが開きます。Linux環境の IPアドレスや、sshでのログインユーザー名を入力します。
vs_linux_5

そして、 “Connect” ボタンを押すと、ビルドの続きが始まります。

vs_linux_6

この状態で Linux 側を確認してみると、ユーザー名/projects の以下にプロジェクトがコピーされて、実行体も ./bin/x64/Debug/ の中に作られていました。
このコピー先の projects については、このVisualStudioでプロジェクトのプロパティを開いて変更することができるようです。

vs_linux_7

こうやってできた実行体を VisualStudio から実行してみます。以下のように GDB が動き出す様が確認できました。

vs_linux_8

しかし標準出力の結果は確認することができませんでした。ブレークポイントを以下のように設定して実行してみると、うまく停止することもできました。

vs_linux_9

他のプロジェクト設定など

今回は 64bit の Linux が対象だったのでそのままでしたが、32bit だったりする場合には、プロジェクト構成を x64 から x86 を選ぶようでよいようです。しかしながら、リモートは 64bit linux でアプリを 32bit(x86) という場合についてはこの切り替えができないようです。

今回は実行体でしたがライブラリを作ることも可能なようです。
staticライブラリとdynamicライブラリの2つも選択可能となっていました。

vs_linux_10

まとめと次回予告

以前に紹介した方法よりも手軽に Linux ターゲットとしたプログラムを Visual Studio で開発できることが確認できました。
デバッガが機能しそうな点も確認できたので、次回以降でどのくらいデキるのかを見ていきたいと思います。また実際にはスタティックライブラリの作成・利用なども必要になってくるのでこれらについても再確認していきたいと思います。=> 再確認しました

参考情報

これらの内容については “Visual C++ for Linux Development” を参考にしました。Microsoft の VC Blog はなかなか面白いですね。

linuxプログラミング
すらりんをフォローする
すらりん日記

コメント

タイトルとURLをコピーしました