Category: develop

  • docker-composeで既存のnetworkに接続する

    docker-composeを利用してコンテナを起動した場合、通常だとdocker-compose.yml(プロジェクト)単位で
    内部ネットワークが作成される。これを、例えば別のdocker-compose.ymlファイルから起動されたコンテナのnetworkの中でコンテナを作成するには、network設定をdocker-compose.yml内に記述する

    既存のネットワークの一覧

    $ docker network ls
    

    コマンドを実行すると、以下のようにネットワークの一覧が表示される。例ではexisting_nw_defaultに接続するとする。

    $ docker network ls
    NETWORK ID          NAME                DRIVER
    a36b706eb5a6        bridge              bridge              
    7ee0cd187fbd        host                host                
    39be267aeb70        existing_nw_default      bridge              
    bb39f75ad969        none                null
    

    既存のネットワークに接続するdocker-compose.ymlの例

    デフォルトでexisting_nw_default内にコンテナを作成するには、docker-compose.yml内に以下のようなnetworkの記述を追加すれば良い。

    networks:
      default:
        external:
          name: existing_nw_default
    

     参照:https://docs.docker.com/compose/networking/

  • Xcodeの要点だけ 古いバージョンのXcodeを手に入れる

    App StoreからXcodeを入れていると強制的にXcodeがアップデートされてしまって困る!というのも多いはず。Xcode 6系でビルドするとiOS8(iPhone 6?)での挙動が大きく変わったりするから余計悩ましい。

    developer centerからだと最新版のXcodeへのリンク(というかApp Storeへのリンク)しか見つからないけど、以下にアクセスすれば過去のバージョンのXcodeも入手できる。

    https://developer.apple.com/downloads/index.action

  • cocos2d-xの要点だけ Android NDK r10を使うべきではないという話

    前のポストでも触れたけど、Android NDK r10でcocos2d-xを使おうとすると色々と問題が多い模様。
    公式にも結論:r10は使わずr9を使えというのが出ていた。

    参考リンク http://www.cocos2d-x.org/news/307

    上記公式にも出ているAndroid NDK r9のDL先。
    linux: http://dl.google.com/android/ndk/android-ndk-r9-linux-x86.tar.bz2
    windows: http://dl.google.com/android/ndk/android-ndk-r9d-windows-x86_64.zip
    mac os x: https://dl.google.com/android/ndk/android-ndk-r9d-darwin-x86_64.tar.bz2

  • cocos2d-xの要点だけ プロジェクトの新規作成からビルド

    cocos2d-x 3.2 / OSX Mavericks。

    cocos2d-xで新規にプロジェクトを作成するにはターミナルから以下のようにする。

    $ cocos new MyFirstCocosApp -p jp.imho.myfirstcocosapp -l cpp -d ~/src
    -p パッケージ名
    -l 言語 cpp | lua | js のいずれか
    -d プロジェクトの親ディレクトリ。(この中にプロジェクト名のサブディレクトリが作成され、その中にソースなどが生成される)

    上記で~/src/MyFirstCocosAppが作成される。

    ビルドをするには

    $ cocos run -s ~/src/MyFirstCocosApp -p android
    -s プロジェクトのディレクトリ
    -p ターゲットのプラットフォーム。android | ios | mac のいずれか
    runコマンドはアプリのビルドからデバイス転送まで行う(androidの場合)
    アプリのビルドまででよければrunの代わりにcompileコマンド

    MyFirstCocosAppの中にはいくつかのサブディレクトリが作成されていて、それぞれ以下のような感じ。開発には当面ClassesとResourcesを気にしていればよさそう。
    Classes/ ソースコード
    Resources/ 画像など
    bin/ ビルドしたアプリパッケージ
    proj.*/ プラットフォームごとの設定ファイル(AndroidManifest.xmlなど)

  • cocos2d-xのテストプロジェクトがandroid-ndk-r10でビルドエラーになる問題の対処

    ビルドエラーに対処したメモ。

    cocos2d-xのdownloadからダウンロードしたcocos2d-xの3.2パッケージをダウンロードして
    ドキュメント(http://www.cocos2d-x.org/docs/manual/framework/native/v3/getting-started/how-to-run-cpp-tests-on-android/en)どおりにサンプルプロジェクトをビルドしようとするとエラーになる。

    2d-x/build [14-08-26 01:08:50]
    [2616]
    error: return type of out-of-line definition of ‘cocos2d::BundleReader::tell’ differs from that in the declaration
    ssize_t BundleReader::tell()

    …のような感じのエラーになってしまう。対処方法は
    https://github.com/cocos2d/cocos2d-x/pull/7526/files ここのパッチを当てれば良い。

    未確認だがandroid-ndk-r9では出ない模様。

  • pythonでnkfを使って文字コードの変換を行う要点だけ

    pythonでnkfを使って文字コードの変換を行う要点だけ

    環境依存文字を含むutf-8文字列をeuc_jpに変換したいときに、pythonのunicode.encode(‘euc_jp’)だとエラーになってしまうのでこれをnkfモジュールで解決するという内容。

    (more…)

  • ADTを23にアップデートしたらannotations.jarが見つからなくなった時の対応の要点だけ

    EclipseからAndroid SDK Toolsを23にアップデートしたときに、プロジェクト設定のannotations.jarがmissingとなってしまってビルドに失敗するようになってしまった。

    どうやらファイルが移動されていて(?)パスが壊れてしまってるようなので
    $ ln -s ANDROID_SDK/extras/android/support/annotations/android-support-annotations.jar ANDROID_SDK/tools/support/annotations.jar
    というふうにシンボリックリンクを張ってあげればうまくいく。これ単なるバグだと思うんだけど…応急処置として。
    参照:http://stackoverflow.com/questions/24438748/fail-to-find-annotations-jar-after-updating-to-adt-23
  • OSX MavericksでPillowのPNGサポートを有効にする方法の要点だけ(blockdiagのインストール)

    OSX Mavericks環境でblockdiagをインストールしようと思い、pipを使ってPillowをそのままインストールするとPNGサポートが無効なままの様である。これを解決したのでインストールメモ。

    (more…)

  • Gitでローカルで変更してしまった後から別のbranchにcommitしておきたいときの要点だけ

    これってどうやるのかと思ってたけど、git stashを使えば良さそう。

    (more…)

  • CakePHP 2.xでdatabase.phpの設定を切り替える要点だけ

    CakePHP2でDBの接続設定を切り替える(本番と開発環境とか)時にこういうのはどうかというメモ。

    (more…)