1 名前:デフォルトの名無しさん [2011/05/06(金) 00:25:16.09 ] Windows上で動作するフリーの開発環境 CygwinとMinGWに関する相談スレッドです。 過去スレ: Cygwin + MinGW + GCC 相談室 Part 5 hibari.2ch.net/test/read.cgi/tech/1269400706/ Cygwin + MinGW + GCC 相談室 Part 4 pc12.2ch.net/test/read.cgi/tech/1221233882/ cygwin + mingwn + gcc 相談室 Part3 pc11.2ch.net/test/read.cgi/tech/1177944767/ cygwin + mingwn + gcc 相談室 Part2 pc11.2ch.net/test/read.cgi/tech/1126103347/ cygwin + mingwn + gcc 相談室 pc8.2ch.net/test/read.cgi/tech/1058134693/ 関連サイト: Cygwin www.cygwin.com/ MinGW www.mingw.org/ 関連スレッド: GCCについて part9 pc12.2ch.net/test/read.cgi/tech/1246059290/
650 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 12:26:29.07 ] msys って mintty のことでしょう?
651 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 12:47:15.86 ] >>650 せやで
652 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 13:10:53.95 ] やけに必死なのがいるな。msysが何を指しているのか知らんが、 minttyは最近のcygwinで実装された端末エミュレータだと言うことは知っている。
653 名前:デフォルトの名無しさん [2012/05/19(土) 15:36:44.90 ] 色々ありがとうございます。 事の経緯を書かせて頂きます・・ lmmsをgit cloneしてくる。cmakeが必要とのことだったのでダウンロード。 ダウンロードしたのはwindows xp のインストーラ版 ↓ cmake ../ しようとしてみると色々怒られる。pkg-configやらsdlやらlibsndfileやらが必要とのこと。 pkg-configはwindowsでビルドするのがめんどくさそうだったので 全部cygwin上でやることにしてみる ↓ cygwinインストール。apt-cygで必要なパッケージ色々インストール ↓ sdlのビルドにはMinGWが必要なのが判明。 (理由は忘れたが、cygwinにもmingw-gccを入れないと何かがうまくいかなかった) MinGWでSDLビルド。 ↓ パスは C:\cygwin\bin;C:\QtSDK\Desktop\Qt\4.7.4\mingw\bin;C:\QtSDK\mingw\bin;C:\Program Files\CMake 2.8\bin; な感じで cmake-G "MinGW Makefiles" がようやく成功。buildディレクトリにMakefileが出来た mingwのパスが2つあるのはqmakeが必要だったりQtCoreが必要だったりしたため(確か)
654 名前:デフォルトの名無しさん [2012/05/19(土) 15:37:42.88 ] build/ でmakeを実行すると上で書いたようになぜかもう一層新しいプロンプトが表示される状態に・・ 他のディレクトリでmakeすると普通に動くので、buildディレクトリにあるMakefileの何かがおかしい としか思えない。がMakefileよくわからない・・ makeはapt-cygでいれたもので、which make すると普通に /usr/bin/make の出力 ↓ 試しにcygwinやdosからmingw32-makeを使ったら途中まではビルドできたが、 includeディレクトリの件(sndfile.h: No such file or directory) で立ち止まる←いまここ もしかしてcmakeはcygwin上でapt-cygで入れたものを使った方がよかった・・? とか色々思うところがあるのですがぐちゃぐちゃやりすぎてわけわかめになっています。 どなたかwindows上でlmmsのビルド成功したという方がいればアドバイスいただけると嬉しいです。。
655 名前:642 mailto:sage [2012/05/19(土) 15:49:59.31 ] >>653-654 面白そうなのでちょっといじってみた 当方の環境はMinGWのみ 環境変数にcmake入れる ・PATHの中身閲覧 $ echo $PATH .:/usr/local/bin:/mingw/bin:/bin: …(省略)…:/c/Program Files (x86)/CMake 2.8/bin ・INSTALLの記述(以下の手順をこなす必要がある) Building LMMS got quite simple since 0.4.0 as everything is managed by cmake now. Therefore make sure you have CMake (>= 2.6.0 recommended) and then run mkdir build buildフォルダ作成 cd build 移動 cmake ../ 一段上を指定してcmake起動 make gnuのmakeを起動 sudo make install うまく行ったらインストール(linuxじゃないからsudoいらん) うちの環境ではQt4入ってないからできなかった。 コンパイルの仕方って大抵READMEかINSTALLって名前のファイルに書いてあるんだな、これが
656 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 15:59:54.86 ] cygwinインストールしちゃったみたいだが、 cygwinの影響を完全に排除したビルド環境を作るとこから始めんとダメなんじゃないか 上でも書いてる人がいるがMinGWとcygwinを混ぜるのは危険
657 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 20:48:59.88 ] 結構はまるぞ、 こういうファイルつくってから set(CMAKE_SYSTEM_NAME Windows) # specify the cross compiler set(CMAKE_C_COMPILER /usr/bin/i686-pc-mingw32-gcc.exe) set(CMAKE_CXX_COMPILER /usr/bin/i686-pc-mingw32-g++.exe) set(CMAKE_RC_COMPILER /usr/bin/i686-pc-mingw32-windres.exe) # set PKG_CONFIG_PATH for MinGW Cross Compile Environment set(CMAKE_EXE_LINKER_FLAGS -L/usr/bin/i686-pc-mingw32/sys-root/mingw/include) set(ENV{PKG_CONFIG_PATH} /usr/i686-pc-mingw32/sys-root/mingw/lib/pkgconfig) # where is the target environment set(CMAKE_FIND_ROOT_PATH /usr/i686-pc-mingw32/sys-root/mingw) cmake -DCMAKE_SYSTEM_NAME="Windows" -DCMAKE_TOOLCHAIN_FILE=上のファイル.cmake -DBUILD_SHARED_LIBS=OFF だったかな? いまビルドしてやんよ
658 名前:657 mailto:sage [2012/05/19(土) 21:10:26.61 ] シェルスクリプトbuild_mingwなんたらの中のディレクトリを書きかえたらできそうだな、あとはまかせたw
659 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 21:41:54.98 ] 言うだけ番長
660 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 22:00:59.60 ] 公式読め ttp://lmms.sourceforge.net/wiki/index.php/Compiling_LMMS で終了
661 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 22:20:10.09 ] いやそこにもlibsndfileで積む、って書いてある www.mail-archive.com/lmms-devel@lists.sourceforge.net/msg00940.html 公式バイナリはlinux上でクロスコンパイルしてるらしい
662 名前:642 mailto:sage [2012/05/19(土) 22:35:54.33 ] 依存関係がこうなってる lmms → libsndfile →( pkg-config → glib ) mingwのmakefileあるけど、大方fedoraからのクロスコンパイルだろう 素人にはムリダナ(俺もできてないけど)
663 名前:642 mailto:sage [2012/05/19(土) 22:45:23.02 ] libsndfile自体はmingwで容易にインストールできるけど それをpkg-configに認識させるのが難しい(というよりpkg-config入れるのがめんどい) mingwでpkg-configビルドする場合の参考(ビルドせずにバイナリだけ使えばいいか?) d.hatena.ne.jp/sa-y/20090109 libsndfileビルド&インストール $ wget www.mega-nerd.com/libsndfile/files/libsndfile-1.0.25.tar.gz $ tar xvf libsndfile-1.0.25.tar.gz $ cd libsndfile-1.0.25 $ ./configure --prefix=/mingw $ make && make install lmmsビルド&インストール $ cd lmms-0.4.13/ $ mkdir build $ cd build $ cmake -G "MSYS Makefiles" ../ $ make && make install こんな感じ?
664 名前:657 mailto:sage [2012/05/19(土) 23:17:02.76 ] cmake/modulesにある MinGWCrossCompile.cmake Win32Toolchain.cmake Win64Toolchain.cmake のディレクトリ設定を弄るかシェルスクリプトを書いてこの設定どおりにリンクを張ってからbuild_mingwなんたらを実行だな