ubuntu 12.04 64bitでWin32をクロスコンパイル3 のつづき
そこでつぎに Qtのmingw 64bit版を用意することにした。
http://www.robwork.dk/jrobwork/index.php?option=com_content&view=article&id=71:installation-of-qt&catid=44:installation&Itemid=67&limitstart=2
基本的にはこのサイトのとおりにすればできた。
LINUXでクロスコンパイルしてみてもいいけど面倒なのでWindows7 64bit で行った。
まずmingw-w64を sourceforgeからダウンロードする。
http://sourceforge.net/projects/mingw-w64/files/
一番上のダウンロードを選ぶとソースが落ちてくるがgccのソースビルドなんてやってられないのでバイナリを直接ダウンロード
http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/sezero_4.5_20111101/mingw-w64-bin_x86_64-mingw_20111101_sezero.zip/download
これを解凍して /mingw64/bin にパスを通す。
次にPerlを用意。これはAcitivePerlがいいらしいのでこれをインストール
http://www.activestate.com/activeperl/downloads/thank-you?dl=http://downloads.activestate.com/ActivePerl/releases/5.14.2.1402/ActivePerl-5.14.2.1402-MSWin32-x64-295342.msi
デフォルトでインストールするとパスが通ると思います。
で環境が整ったので次にQtのソース
まずhttp://qt.nokia.com/downloads から
http://releases.qt-project.org/qt4/source/qt-everywhere-opensource-src-4.8.2.tar.gz をダウンロードして展開
でコマンドラインを起動して展開した場所に移動し
configure -opensource -no-sql-sqlite -no-qt3support -no-webkit -no-scripttools -fast -platform win32-g++
を実行。
成功すると次に
mingw32-make
をするようにいわれるのでいわれるとおりに実行
うまく行けば完了して*.dll、*.exe、*.aができます。
Qtのプロジェクトをコンパイルすればできるはずです。QtCreatorとかないのがあれですが
これをそのまま圧縮してubuntuに持ってきます。
解凍後qt-everywhere-opensource-src-4.8.1/bin で
cp /usr/lib/gcc/x86_64-w64-mingw32/4.6/libgcc_s_sjlj-1.dll .
cp /usr/lib/gcc/x86_64-w64-mingw32/4.6/libstdc++-6.dll .
で2ファイル補うと
qtdemo.exe がwine 64bit で動きます。と行ってもプロジェクトがないので起動するだけですが。
とりあえず64bitのビルドが成功したのがわかります。
これと同じ事をmkspecをいじればUbuntuでもできるとおもうが、そこまでこだわる気力がない。
0 件のコメント:
コメントを投稿