「winecfg」コマンドで、wine64の初期設定を行なう。
「/usr/ports/sysutils/pacman」をインストールし、/usr/local/etc/pacman.confを編集してダウンロードサイト等を設定する。
「pacman -Syu]コマンドで、まずpacmanのパッケージ情報を更新する。
「pacman -S mingw-w64-x86_64-gtkmm3」コマンドで、gtkmm-3.0を導入する。
「pacman -S mingw-w64-x86_64-g++」コマンドなどで、コンパイラ(g++など)を導入する。
「env WINEPATH=/usr/local/pacman/mingw64/bin wine64 /usr/local/pacman/mingw64/bin/x86_64-w64-mingw32-g++.exe」コマンドなどでgtkmm-3.0アプリをビルドする。
DLLを見付けられるようにするためWINEPATHを設定する必要がある。しない場合はレジストリを追加編集すればいいらしいが、場所は忘れた。
「(/usr/local/pacman/mingw64/)lib/gdk-pixbuf-2.0/2.10.0/loaders/*.dll」をアプリケーションディレクトリに、ディレクトリ丸ごとコピーする。
「lib/gdk-pixbuf-2.0/2.10.0/loaders.conf」を、「gdk-pixbuf-query-loaders.exe」コマンドの結果を参考に、コピーしたdllを使うように編集する。
dllのディレクトリをアプリケーションディレクトリからの相対パスで書くのだけど、Windowsだと「lib\\gdk-pixbuf-2.0\\2.10.0\\loaders\\」になるので注意。
"lib\\gdk-pixbuf-2.0\\2.10.0\\loaders\\libpixbufloader-ani.dll" ... "lib\\gdk-pixbuf-2.0\\2.10.0\\loaders\\libpixbufloader-bmp.dll" ... |
(/usr/local/pacman/mingw64/)share/glib-2.0/schemas (/usr/local/pacman/mingw64/)share/icons/ |
「(cd /usr/local/pacman/mingw64/bin; cp `cat copydll.txt` <アプリケーションディレクトリの*フルパス*>/)」コマンドで、.DLLファイルをアプリケーションディレクトリにコピーする。
「wine64 <アプリケーション>.exe」で動作確認を行なう。
アプリケーションバイナリ(上位ディレクトリやbin/ディレクトリなど)と.DLLファイル、lib/、share/ディレクトリを配布物に含める。