7
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[メモ] Visual C++ for linux Development でOpenGL

Last updated at Posted at 2016-04-01

Visual C++ Team Blogの Visual C++ for Linux DevelopmentエントリのDesktop Applicationsのサンプルをやってみる。
VCLinuxOpenGL8_.png

VCLinuxOpenGL12.png

環境

  • Windows 10 (64bit)
  • Visual Studio 2015 Update 2 (Enterprise) 全部入りでインストール。
  • Linux: Lubuntu 14.04.4 LTS (64bit)
    くまさんISOからLubuntu-14.04.4-64bit-kuma0317.isoを利用し、VMWareの仮想マシンとしてインストール
  • Visual C++ for linux Development : インストールは、こちらの記事から

準備: Linux

  1. インストール後は、いつもの...

sudo apt-get update
sudo apt-get upgrade
sudo apt-get autoremove
sudo apt-get autoclean


2. Visual C++ for Linux developmentで必要なパッケージ<br>`sudo apt-get install -y openssh-server g++ gdb gdbserver`

3. OpenGL開発ライブラリ("> *Here are the apt packages we used: libgles1-mesa, libgles1-mesa-dev, freeglut3, freeglut3-dev.*")<br>`sudo apt-get install -y freeglut3-dev`

## VS2015: Getting Started
1. プロジェクト作成
    1. ファイル > 新規作成 > プロジェクト<br>で、新しいプロジェクト ダイアログから
    2. インストール済み>テンプレート>Visual C++>クロスプラットフォーム > Linux を選んで
    3. Empty Project (Linux) を選んで、<br>![VCLinuxOpenGL1.png](https://qiita-image-store.s3.amazonaws.com/0/75594/d98cfc57-a660-a6ce-914b-1fd3b4f2d8b1.png)
    4. (名前、場所、とか、かえたり、かえなかったりして)
    5. [OK]
2. main.cppをプロジェクトへ追加
    1. ソリューションエクスプローラのProject1で、右クリック
    2. 追加 > 新しい項目 <br>![VCLinuxOpenGL3_.png](https://qiita-image-store.s3.amazonaws.com/0/75594/15196334-9b56-a39b-7794-d27a83b79be1.png)
    3. C++ファイル(.cpp) を選んで、名前をmain.cppとして、追加<br>![VCLinuxOpenGL4.png](https://qiita-image-store.s3.amazonaws.com/0/75594/e1286ab0-a238-1b2b-82c0-f5daa03bf4de.png)
3. OpenGLコード
    1.  [Julien Guertault’s OpenGL tutorial](http://lousodrome.net/opengl/)から、[Spinning cube](http://lousodrome.net/opengl/#spinningcube)のソースを持ってくる。<br>
=> Download the spinning cube example. から spinningcube.tar.gzをダウンロード
    2. 解凍して取り出したmain.cファイルの内容を、main.cppへこぴぺして、CTRL+S
4. プロジェクト > Project1のプロパティ 設定
    1. Remote settings  : Target machine が接続先になってるか、確認<br>![VCLinuxOpenGL5.png](https://qiita-image-store.s3.amazonaws.com/0/75594/b2ffa146-ef6e-5c35-b748-c7035e3c2662.png)
    2. リンクするライブラリ追加 : Linker > Input : Library Dependenciesへ、`m;GL;GLU;glut` をいれる。<br>![VCLinuxOpenGL6.png](https://qiita-image-store.s3.amazonaws.com/0/75594/98c965d6-38b7-2f8a-1e03-42cf9a96596d.png)
    3. デバッグ > Pre-Launch Commandへ、`export DISPLAY=:0.0` をいれる。<br>![VCLinuxOpenGL7.png](https://qiita-image-store.s3.amazonaws.com/0/75594/79cd7c5d-3b15-f363-c975-66225062a39a.png)
  

## 実行・ブレイクポイント
1. [F5]: ビルド・デバッグ実行
2. 立方体がぐるぐる回る
<br>![VCLinuxOpenGL8_.png](https://qiita-image-store.s3.amazonaws.com/0/75594/b2f36e11-5cf3-f274-0186-20b379b0a637.png)
3. ブレークポイントを張ってみる (34行目にかーそるをもっていって [F9])<br>![VCLinuxOpenGL9.png](https://qiita-image-store.s3.amazonaws.com/0/75594/b3639b6d-c3c3-6da9-a250-0da7f01ed9be.png)
4. 立方体がとまる


## おまけ
 Ubuntu側の`/usr/include`をsambaで共有して、VCのインクルードパスに加えれば・・・

1. sambaインストール・簡単設定
2. インストール<br>`sudo apt-get install -y samba`
3. smb.conf編集

    ```shell-session
sudo mv /etc/samba/cmb.conf /etc/samba/smb.conf.org  #念のためオリジナル保存
sudo cp /etc/samba/cmb.conf.org /etc/samba/smb.conf
sudo vi /etc/samba/smb.conf  #編集
- viでは、'G'をおして最終行へジャンプ
- 以下をsmb.confの最後に追加 

```txt:/etc/samba/smb.conf(ゲストでリードオンリーで設定)

...

共有名

[usr_include]

共有フォルダ指定

path = /usr/include

読み出しのみ

writable = no

ゲストユーザーOK

guest ok = yes

全てゲストとして扱う

guest only = yes

4. samba再起動 <br> `sudo service smbd restart`
5. Windowsから、共有フォルダを見てみる<br>![VCLinuxOpenGL10.png](https://qiita-image-store.s3.amazonaws.com/0/75594/5e01ab0c-29dd-9a65-99f8-2922749f06e4.png)
6. プロジェクト> プロパティをひらいて、VC++ Directoriesで、`Include Directories`にusr_includeを追加。<br>![VCLinuxOpenGL11.png](https://qiita-image-store.s3.amazonaws.com/0/75594/9cf584c1-8309-0ef2-d40f-d629f10a6e28.png)
7. <font color='red'>赤い波線</font>も消えて、定義が見れますね。<br>![VCLinuxOpenGL12.png](https://qiita-image-store.s3.amazonaws.com/0/75594/4951830a-9402-30f7-bf4c-3361423da863.png)

## その他
リンクされてるっぽい
[(ぼくの技術日誌) VisualStudio2015とVisual C++ for Linux Developmentを使ってみる](http://engineernote.hatenablog.com/entry/2016/04/18/185414)

7
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?