試しに Linux 64-bit でつくってみる
テスト画面が出たので、試し、Ubuntu 13.10 (Linux 64bit) で作ってみることにしました。
まず、VMware上のLinux 64-bit 仮想マシンにソースコードを転送します。
Windows(Cygwin x64)で使っているホームディレクトリをアーカイブして、仮想マシンにftpします。
共有できるようにしているので、基本同期をとるだけでO.K.なんですが…
ここからLinuxでの作業になります。
Windows版のQtでは、qmakeコマンドで以下の3つのファイルができます。
Makefile
Makefile.Debug
Makefile.Release
ですが、Linuxだと Makefile の1ファイルとなります。(まだあまり試せてないのですが、デフォルトではそうです)
で、普通に make とすると、
#error "Not support 64 bit compiler!!"
と出ました。自分で、そう出るように記述していたのですが、それを忘れてました(^_^;
構造体の宣言がおもいっきり、32 bit に依存してました…
googleさんで調べると…g++コンパイラ (64bit)はlongが8バイトであることとアライン条件が異なることが分かりました。(昔sparcとかに依存していてハマることはありましたが)
brynhildrサーバーさんが送ってくるデータなので、勝手なことはできません。JPEG,PCMデータはO.K.ですが、コントロール(キー入力、マウス入力など)は残念ながら、x86(32bit)依存ですね。
昔読んだ本を引っ張り出してきます。「Write Protable Code」 2006年初版です。386BSD(PC98)やLinux(PC98)でも有名な鵜飼さん(他一名の方)が監訳されてます。BitKeeperの話は出ていますが、gitの話はまだ載ってません(^_^;
どうやら、バイトオーダー、アライン条件など吸収するライブラリを作るか、地味に調整するしかなさそうです。
サーバ側もいじれたら、Qtの機能で解決できそうですが、サーバ側はすでにあるという前提なので…
んー、iPhoneとかAndroidとかに展開する時はやはりarmとかに適合させる必要があると思うと少しガックリ(´・ω・`)
ちょっと要検討…です。先にLinux (x86)で試してみようかな…、32bitなので、すぐウィンドウは出てくれるはず。
同様に移植、コーディングの参考になる本としては、以下の2冊を見つけました。
「Code Quality」
「Code Craft」
いずれも毎日コミュニケーションズ刊です。他にもありますが、載せきれません。
« 進捗記録 2014.3.10 | トップページ | Qt Brynhildr on Linux x86 »
コメント