月別アーカイブ: 2014年10月

sdl2.0をlinuxのcode::blocksで使うまでのメモ

まだ秋休みだ。

entireScreen141023

SDL2.0をlinux上で動かしてみたわけだ。しかし開発環境ばかりいじってる。
何か動くものをつくらねばなあ。

● synapticで

code::blocksをインストール。

codeblocksInSynapticWnd


libsdl2-devをインストール。

libsdl2InSynapticWnd

これが少し迷った。SDL〜って名前ではなかったのね。
なるほど。

● code::blocksで

settingCompilerOptions

「Settings」→「Compiler」で設定する。

まず「Search directories」の「Compiler」に下記:

settingHeaderFileFolder

/usr/include

次に「Linker Settings」の「Other Linker Options」に下記:

settingLinkerOption

ーlSDL2

windowsの時より設定が少なくて楽だ。

 

● ただし

debugの設定がないと、デバッグ実行時におこられる。
そこで下記もしておく。

settingDebugPath

上の赤いとこ。
実行形式ファイルを指定しとくといいみたい。

● あと、どうでもいいこと

なんだけど、「Shift+SPACE」で何か動くぞ Code::Blocks。
癖のようで、何かとShift押したままスペースキーを押してるのだ。「if★(flag★==★false)★{」とか。「★」の所ぜんぶ。

code::blocksだと、Shift+SPACEに何か割り当てられてるようで、止まる。
もしくは「これですか?」的な候補選択のウインドウがベロっと出る。

閉口。

これだけで嫌いになっちゃいそうだ。
まるで思春期だ。言い草だ。

で、調べると、下記:

(1) synapticで「codeblocks-contrib」をインストール

ありがとう、jensさん。
Where is Keyboard Shortcuts plugin ?」 in Code::Blocks Forum。

codeblocks-contribInSynaptic

(2) Code::Blocksでの「Settings」→「Editor…」の

左側が、何か増える。これがcontribなのか。
その中に「Keyboard shortcuts」があって、「Edit」の配下の「Complete Code」これだ。

locationOfKBshortcutOfShitSpaceOnCB

これを「Remove」する(上の画面はremove済み)。
これでShift-SPACEで何も起きなくなる。快適!!!

 

● んで

code::blocksの「File」→「New」→「Project…」で
Console application」を選択。

createAnewConsoleApp

ウィザードぽいのが出てくるので、基本はエンター連打。
下記のウインドウでプロジェクト名を入力する。

projectNameDialog

「Folder to create project in:」に、
「~/develop/samples」とかフォルダ掘っといて、その下にしてみた。

● サンプルコードを入力

初めこんな感じ。

consoleInitialCode

↓ を

consoleCodedCode

こんな感じに。
下のは前に「File」→「New」→「Project…」で「SDL project」という
魅惑的な選択肢があって、そこから始めたバージョン。

※なのでnamespaceが何か初期と違ったり、#ifdefとか入ってる・・・

ただ、SDL projectで自動生成されたコードの関数呼び出し先が
SDL 1.x のものになってたような気がする。

ので、とりあえず今回はConsole applicationから生成した。

● で

実際にbuild。で、下記ウィンドウが表示。

sdlSampleWnd

次こそは何か動くものをつくろう。

macにSDL2.0入れてxcodeで動かすまでのメモ

引き続き秋休みだ。
mac os x をyosemiteにした。

yosemited

で、SDL2.0をmacに入れたときのメモを残す。

—–
2016.05.18追記 その後
macでSDLでC++で何か実装中・・・

とりあえずこの辺まで
第1回:

第2回:

第3回:画像を表示する

第4回:クラス化(SDLEnv)

第5回:デストラクタの動作

—–

● SDLのダウンロード

SDLのダウンロードページで下記からダウンロード。
DLsdl2.0mac

あとはこちらのページ(SDL2.0のインストール for Mac)を参考にインストール。

ターミナルで実際やったこと:


$ ./configure
$ make
$ sudo make install


こうすると、下記にヘッダファイルとライブラリ(libSDL2.a)が入るみたい。

ヘッダファイル:/usr/local/include
ライブラリ:/usr/local/lib

● xcodeでプロジェクトの作成を

選んで、「Command Line Tool」を選択。
choosingCmdLnToolForSDLPrj

● 次に設定

「Build Settings」の「Search Paths」で下記:
settingPathsOnBuildSettingsTab

Header Search Paths:/usr/local/include
Library Search Paths:/usr/local/lib

Header Search Pathが正しければ、コード内で「#include」と打つと
SDL.hが候補で出てくる。

● ライブラリを無理やり追加

「Build Phases」の「Link Binary With Libraries (n Item)」で下記:
dragAndDroplibSDL2.a

Link Binary With Libraries:libSDL2.a

なんかうまく出来なかったので、Finderから無理やりドラッグアンドドロップ。
ファイル追加のダイアログから「/usr/local〜」へ行けなかった・・・。うーん。

まあドラッグアンドドロップで済んだからよしとして次へ。

● コードを書く

メニューの「ファイル」「新規追加」でmain.cppというのを作って、
サンプルコードを書く。

codingSDL2

サンプルコードは相変わらず、Lazy fooさんのページから借用。

動かすとこんな感じのウインドウが表示(色のRGB値は少し変えた)。

SDLsampleWnd

子供の世話しながらで半日ぐらいかかってしまった。

cocoa何とかで始めれば iOS用のがSDL+C++のみで作れたりしないのかなあとか。

そしたら勉強し始めてるObjective-Cとか無しで、
今までだけの知識だけで、息子に算数アプリ作ってあげられないかしらとか夢想。

彼が小学生になるまえに、足して10になる組み合わせが暗記できるアプリがつくりたい所。。

linuxbean+vmwareで起動時に解像度を自動設定するメモ

というわけで、秋休みだ。

IMG_0956_20

息子は新しい自分専用の布団に満足そう。
買ってよかった。

● で、久しぶりに

linuxbeanだ。
前から気になってた解像度。

とりあえず、


$ cvt 1920 1080
# 1920×1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline “1920x1080_60.00” 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync

$ xrandr –newmode “1920x1080_60.00” 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
$ xrandr –addmode Virtual1 1920x1080_60.00
$ xrandr –output Virtual1 –mode 1920x1080_60.00


とやれば、1920 x 1080の解像度にはなった。
これは前(linbuxbeanをvmware上で動かすときの解像度設定メモ on 2014.01.28)に書いた。

● しかし

これでは、毎回(ログインごと)に実行しなきゃならん。
まあ、


$ !17
$ !18
$ !19


とかやればいいわけだし、これまでもそうしてた。
んだが、ログイン時に自動で解像度が変わってくれないかなーという。

どうせ秋休みで時間もあるしということで。

● 調べると

あったわけだ。
忘れないうちに書き留める。

● まずシェルスクリプトを準備

下記。
leafpadか何かで編集し、ホームに保存。


#!/bin/sh
xrandr –newmode “1920x1080_60.00” 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr –addmode Virtual1 1920x1080_60.00
xrandr –output Virtual1 –mode 1920x1080_60.00


あとはchmodで実行権限をつけとく。


$ chmod +x x19201080.sh


● 「ランチャの追加と関連付け」

addingLauncherIcon

addingLauncher

起動したらここで、右クリックで「新規作成」→「shortcut」。

newLauncher

新しくできるので、
ランチャーを編集。

editLauncher

名前:解像度1920×1080
コメント:解像度1920×1080
コマンド:/home/ユーザー名/x19201080.sh
selectAppToBeLauchedさっき準備したシェルスクリプトを選択。

アイコン:適当に選択
selectIcon色々あってちょっと楽しい。

● 「自動で起動するアプリの追加」

addingAutorunAppsIcon

newAutostartFolder

ここへcut&paste。

autostartFolder02

これでログインのたびに解像度変更のxrandrが自動実行される。