[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2chのread.cgiへ ] Update time : 02/16 10:56 / Filesize : 143 KB / Number-of Response : 665 [このスレッドの書き込みを削除する ] [+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧 ] [類似スレッド一覧 ] ↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました
Cygwin + MinGW + GCC 相談室 Part 6
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/
637 名前:631 [2012/05/18(金) 20:34:38.93 ] レスありがとうございます >そのsndfileはcygwinでコンパイルされているから使えない なるほど、そうなのですね、ありがとうございます。 >makeの-IオプションはMakefileファイル内のinclude文で使うパスを指定するもの これはgccではなくmakeのincludeなので、ここで-Iを指定しても意味がないということでしょうか。 >C:/cygwin/home/USER/repos/lmms.git/include/AudioFileWave.h:32:21: >error: sndfile.h: No such file or directory というエラーはコンパイル時のエラーのように見えるので、gccでincludeがうまくできていない ということだと思うのですが、 makeコマンドからgccにinclude_dir的なオプションを渡すにはどうすればよいのでしょうか?? 何か解決方法ありましたら教えていただけると幸いです。
638 名前:デフォルトの名無しさん [2012/05/18(金) 20:36:16.57 ] また、 >Cygwin入れといてDOSから使うとかすでに意味不明なんですが こちらの理由なのですが、 cygwinからmakeコマンドを打つと、なぜか -------------------------------------- Microsoft Windows [Version 6.1.7600] Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\cygwin\home\USER\repos\lmms.git\build> -------------------------------------- のような対話形式のコマンドラインが新しく立ち上がってしまい、ビルドができないのでで、 仕方なくdosからmingw32-makeを使っていたのです。 このmakeの挙動はどういった場合に起こるのでしょうか。 回避策を教えていただけますと嬉しいです。
639 名前:デフォルトの名無しさん mailto:sage [2012/05/18(金) 20:54:36.36 ] >>638 cygwin以外のmakeを参照しているとか cygwin上で"which make"を実行しろ よくあるのがbcc付属のmakeなど >>637 そんな基礎的なことを聞かれても… lmmsをビルドできるようになるまで一から手取り足取り教えろってことか? 本家のwindowsバイナリでだめな理由は何だ?
640 名前:デフォルトの名無しさん mailto:sage [2012/05/18(金) 20:59:58.70 ] そもそもmakeに頼らずにコンパイルすればいいだろ。
641 名前:デフォルトの名無しさん mailto:sage [2012/05/18(金) 21:53:24.21 ] おまいら優しいな
642 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 00:35:55.59 ] lmmsのソースダウンロードしてきてconfigure走らせたら cmakeを使うことが推奨だゾ! とかコンソールに出て腹たったので後は任せた 質問者には間違いがいっぱいある ・MinGWをなぜかcmdで動かしてる → minttyかrxvtにしろし ・CygwinとMinGW両方入れてパスに入れてる → せめてどっちかを環境変数から外せよ・・・ ・mingw32-makeとか打ってる → makeでいいから! それを踏まえた上で、cmakeをダウンロードしてきて試行錯誤したらいいと思う
643 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 01:46:38.33 ] たぶんQtも用意してないだろ
644 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 05:07:43.15 ] qt は cmake じゃなくて qmake だゾ! 回答者にも突っ込みたいことが幾つかある ・MinGWを使うシェルに mintty か rxvt を薦めてる → MinGWならmsysにするのが普通なんでは? ちなみに窓でgit入れるとき使う msysgit は名前のとおりシェルは msys使ってるからこれで代用してもいい。まずはシェルとビルドツールの 切り分けあたりから突いて行くとよろし golangとかで遊ぶと認識深まるとは思う ただしMinGW同士でも混ぜるな危険なので注意(QT付属のMinGWとGolang付属のMinGWなどなど
645 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 05:38:25.04 ] PATHさえ通してあれば別にcmdでも問題ねえよ >qt は cmake じゃなくて qmake だゾ! lmmsはフレームワークにQt使ってんだよハゲ qmake関係ない
646 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 11:22:47.38 ] ターミナルエミュレータはcmdよりminttyが圧倒的にいいと言いたかっただけなんだが あと、msysはターミナルの名前じゃねえパッケージ名だ
647 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 11:41:42.04 ] mintty って msys のことでしょう?
648 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 11:44:59.51 ] チガウヨゼンゼンチガウヨ
649 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 12:15:38.45 ] >>647 うん
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なんたらを実行だな
[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]
前100
次100
最新50
▲ [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ [+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧 ] ( ´∀`)<143KB
read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products. 担当:undef