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/
369 名前:デフォルトの名無しさん mailto:sage [2011/11/03(木) 18:45:35.91 ] Komisar Mingwキタ Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒(。A。)!!!
370 名前:デフォルトの名無しさん [2011/11/05(土) 18:10:05.74 ] Y⌒(。A。)!!!
371 名前:デフォルトの名無しさん [2011/11/05(土) 19:16:34.97 ] >>369 サイクロイド曲線かw
372 名前:デフォルトの名無しさん [2011/11/05(土) 22:09:27.12 ] うん
373 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 15:20:35.17 ] ソフトウェア増やす度にPATHに登録するのが怠くなってきたのだけど、 ふと、ハードリンクを作ってそれをPATHの通っているディレクトリに置けばそれでPATHを通したことになって コマンドラインから実行できるようになるんじゃないかと思った。 この考え方は合ってる?
374 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 15:39:31.70 ] 必要とするdllがexeと同じ固有のディレクトリに入ってる場合がめんどう
375 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 15:44:08.03 ] データを実行ファイルからの相対パスでアクセスしてる場合も破綻するね
376 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 16:09:47.93 ] と最近相対ディレクトリという言葉を覚えたての餓鬼がほざいております
377 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 16:38:08.28 ] >>373 私はめんどくさいからシンボリックリンクでそれをやっているよ。
378 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 16:46:00.19 ] cygwinでインストールする場合、テキストブラウザはw3m links lynxどれがおすすめ?
379 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 16:58:14.36 ] >>373 pacoを薦めておこう >>378 それプログラミングと関係ある?端末にもよるし、Unix板かWin板のCygwinスレで聞くべき
380 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 17:10:18.18 ] おっとpacoはCygwinでは動かないかも。試すならsetupからも入れられるstowの方がいいか
381 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 19:18:17.34 ] (´・ω・`)いいかね
382 名前:デフォルトの名無しさん [2011/11/09(水) 09:59:33.46 ] うん
383 名前:デフォルトの名無しさん mailto:sage [2011/11/10(木) 01:02:58.43 ] (´・ω・`)・・・
384 名前:デフォルトの名無しさん mailto:sage [2011/11/10(木) 16:23:51.38 ] mingw更新したらlibgcc_s_dw2-1.dllが必要になったようなのだけど これはどのバージョンからなのですか? -static-libgccで直るみたいだけど
385 名前:デフォルトの名無しさん mailto:sage [2011/11/10(木) 19:07:48.54 ] -staticでもいけた なんで仕様が変わったのか
386 名前:デフォルトの名無しさん [2011/11/10(木) 22:20:23.44 ] え?
387 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 01:43:29.85 ] GCC3.4.5は要らなかった
388 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 14:46:28.34 ] 4.4から SjLjやめてDW(ARF)2になったから www.mingw.org/wiki/GCCStatus
389 名前:デフォルトの名無しさん [2011/11/15(火) 10:29:02.48 ] へえ
390 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 11:04:25.27 ] gccは3.3.6が一番安定してた
391 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 22:39:08.95 ] gcc2.6.3 は?
392 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 23:07:06.89 ] 2.95.3より以前のgccは知らない
393 名前:デフォルトの名無しさん mailto:sage [2011/11/16(水) 00:22:04.38 ] 1.38か39を使った事あるぜ
394 名前:デフォルトの名無しさん [2011/11/17(木) 09:23:28.64 ] ふーん
395 名前:デフォルトの名無しさん mailto:sage [2011/11/18(金) 14:48:54.80 ] ICUのstaticライブラリをビルドしようと、MSYS上でconfigure→make installしたら、 toolutil.cpp: In function 'void uprv_mkdir(const char*, UErrorCode*)': toolutil.cpp:170:29: error: '_mkdir' was not declared in this scope make[2]: *** [toolutil.ao] Error 1 make[2]: Leaving directory `/t/icu/source/tools/toolutil' make[1]: *** [install-recursive] Error 2 make[1]: Leaving directory `/t/icu/source/tools' make: *** [install-recursive] Error 2 なエラーを吐いて途中で終了してしまいました。 gcc 4.6.1 (tdm64-1), msys 1.0, Windows 7 64bitでconfigureオプションは、 ./configure --prefix=/p/usr/lib --enable-release --enable-strict --enable-64bit-libs --disable-shared --enable-static --disable-renaming --disable-dyload --enable-threads --enable-extras --enable-icuio --enable-layout --enable-tests --enable-samples です。どこか修正しないといかんのでしょうか。
396 名前:デフォルトの名無しさん mailto:sage [2011/11/18(金) 19:48:22.11 ] ::_mkdir
397 名前:デフォルトの名無しさん [2011/11/19(土) 16:23:03.03 ] え?
398 名前:デフォルトの名無しさん [2011/11/20(日) 01:40:03.27 ] >>396 「::_mkdirが宣言されていない」のエラーに変わりました(名前空間への言及がない) で、仕方が無いので toolsutil.cpp を見てみると _mkdir を使うために io.h がincludeされていたので、コンパイラの io.h を覗いてみたのですが、どうも _mkdir の宣言は無いようです。
399 名前:デフォルトの名無しさん mailto:sage [2011/11/20(日) 09:16:00.11 ] windows上のmingwの端末のユーザー名@ホスト名、カレントディレクトリの表示色を 変更したいのですが方法がわかりません。 プロパティを表示すると画面の文字の色や背景色の設定項目はあるのですが 上記ユーザー名などの表示色を変更することはできませんでした。 どうすれば変更できますか?
400 名前:デフォルトの名無しさん mailto:sage [2011/11/20(日) 10:07:02.30 ] >>399 環境変数。unix系の初心者本に解説があると思う。
401 名前:デフォルトの名無しさん mailto:sage [2011/11/20(日) 10:08:45.82 ] >>399 ちなみにDOSプロンプトのプロパティは、エスケープシーケンスの色名に色を割り当てるもの。 例えば、"blue"に赤を割り当てるとエスケープシーケンスで青を指定したときに赤く見えるようになる。
402 名前:デフォルトの名無しさん mailto:sage [2011/11/20(日) 11:09:00.26 ] >>400-401 ありがとうございます。 profileの環境変数の記述を変更することで解決できました。
403 名前:デフォルトの名無しさん mailto:sage [2011/11/20(日) 12:19:51.32 ] >>398 <direct.h>
404 名前:デフォルトの名無しさん mailto:sage [2011/11/20(日) 16:04:28.34 ] みんぐぅ
405 名前:デフォルトの名無しさん mailto:sage [2011/11/20(日) 16:26:35.45 ] みんじぃ
406 名前:デフォルトの名無しさん mailto:sage [2011/11/23(水) 19:16:05.55 ] 最新のパッケージ(20111118)をインストールしようとしたら AVIRAでスパイウェアが検出されました。(TR/SPY.591915とやら) 心配なので一個古いバージョンをインストールしましたが、気にしすぎですかね。
407 名前:デフォルトの名無しさん mailto:sage [2011/11/23(水) 20:10:53.16 ] 警告画面キャプ画像うぷ、プリーズ
408 名前:デフォルトの名無しさん mailto:sage [2011/11/23(水) 20:37:37.90 ] どこで入手したなんのパッケージだよ。 そしてVirus Totalで検出がそのエンジンだけとか数日たってからパターンファイル更新して再検査したら反応ないとかなら多分誤検出。
409 名前:デフォルトの名無しさん mailto:sage [2011/11/23(水) 22:41:50.48 ] >>407 キャプチャのupはめんどくさいのでレポートのテキストコピペで勘弁して下さい。 Beginning disinfection: mingw-get-inst-20111118.exe [DETECTION] Is the TR/Spy.591915 Trojan [WARNING] The file was ignored! End of the scan: 2011年11月23日 18:53 >>408 sourceforge.jp/projects/sfnet_mingw/downloads/Installer/mingw-get-inst/mingw-get-inst-20111118/mingw-get-inst-20111118.exe/ だったと思います。 Virus Totalですか。ちょっと調べてみます。ファイル削除しちゃったんでやり直さないと。 AVIRAは過分にセンシティブなところがあるので確かに誤検出の可能性は高いと思います。
410 名前:デフォルトの名無しさん mailto:sage [2011/11/23(水) 22:46:39.71 ] Avira使ってたときconftestとかを誤検知しまくってブチ切れてアンインスコした
411 名前:デフォルトの名無しさん mailto:sage [2011/11/23(水) 23:05:47.24 ] >>408 今やってみたら jaist.dl.sourceforge.net のミラーにリダイレクトされました。 今回のバイナリからはマルウェアが検出されませんでした。 先にやったときどこのミラーに飛ばされたか覚えてません。 お騒がせで終わってしまいそうです。
412 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 09:03:51.31 ] cygwinについて質問です. xwindowの起動とともに実行できるbatファイルのようなものって 作成できますか?
413 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 14:16:00.55 ] >>412 はい。xwindowを起動するバッチファイルを作ればできるかと。
414 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 16:14:37.94 ] .xinitrc
415 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 17:56:49.35 ] >>413 有難うございます. 実際にbatファイルでstartxwin.exeを呼び出すことで xwindowは立ち上がったのですが,コマンドを与えることができませんでした. batファイルでどのように指定したらいいのでしょうか.
416 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 17:58:45.81 ] .xinitrc
417 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 18:04:23.55 ] >>415 lmgtfy.com/?q=cygwin+.xinitrc
418 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 18:47:48.87 ] 自演 Uzeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
419 名前:デフォルトの名無しさん mailto:sage [2011/11/26(土) 23:48:31.72 ] .xsession
420 名前:デフォルトの名無しさん [2011/11/29(火) 16:58:59.67 ] 今のCygwinって64bitでも使えるみたいなんですけど,メモリ16GBとか使うことは可能でしょうか?
421 名前:デフォルトの名無しさん mailto:sage [2011/11/29(火) 17:30:25.00 ] 64bitネイティブで動いていて使えない理由を教えてくれないか? 一応OS側で制限はあるようだけど、それはCygwinのせいじゃない
422 名前:デフォルトの名無しさん mailto:sage [2011/11/29(火) 23:07:15.41 ] >>420 不可能
423 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 06:21:28.63 ] 64bit版のcygwinじゃなくて32bit版が64bitWindows7の上で動いてる
424 名前:デフォルトの名無しさん [2011/12/01(木) 00:02:11.68 ] へえ
425 名前:デフォルトの名無しさん mailto:sage [2011/12/01(木) 23:06:26.54 ] そこは WoW!! だろ(64)
426 名前:デフォルトの名無しさん [2011/12/04(日) 13:20:45.91 ] cygwin gccでコンソールの対話形式のプログラム作りたいんだけど どうすればいいの? 入力全部しないと出力してくれないです(行番号関係なしに出力の前に入力が来てしまいます)
427 名前:デフォルトの名無しさん mailto:sage [2011/12/04(日) 13:22:22.15 ] ncurses
428 名前:デフォルトの名無しさん mailto:sage [2011/12/04(日) 13:22:46.98 ] >>426 fflush(stdout);
429 名前:デフォルトの名無しさん [2011/12/04(日) 13:27:18.08 ] ありがとうございます!
430 名前:デフォルトの名無しさん mailto:sage [2011/12/04(日) 22:21:36.83 ] |....,,__ |_::;; ~"'ヽ | //^''ヽ,,) | i⌒" | ∀`) < 誰もいない きのこるならいまのうち |⊂ | ノ _,,,......,,__ /_~ ,,...:::_::;; ~"'ヽ (,, '"ヾヽ i|i //^''ヽ,,) ^ :'⌒i i⌒" |( ´∀`) < きのこ のこーのこ げんきのこ ♪ |(ノ |つ | | ⊂ _ ノ ""U _,,,......,,__ /_~ ,,...:::_::;; ~"'ヽ (,, '"ヾヽ i|i //^''ヽ,,) ^ :'⌒i i⌒" (´∀` )| < エリンギ まいたけ ブナシメジ ♪ ⊂| (ノ | | | ヽ _ ⊃ .U"" | | ミ | ミ サッ! | ミ |
431 名前:デフォルトの名無しさん [2011/12/07(水) 22:40:37.50 ] ちょっとスレ違いかもだけど、MinGW/g++でDLL作ってるんだけど、dllの難読化/ 暗号化みたいなツールあったら教えてほしい。できればフリーで。
432 名前:デフォルトの名無しさん mailto:sage [2011/12/07(水) 22:47:30.68 ] 激しくスレ違い
433 名前:デフォルトの名無しさん mailto:sage [2011/12/07(水) 22:54:07.03 ] DLLになってる時点でバイナリだから暗号みたいなもんじゃないのか・・・
434 名前:デフォルトの名無しさん mailto:sage [2011/12/07(水) 23:01:34.64 ] 質問スレいってきま。
435 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 11:37:13.20 ] UPX
436 名前:デフォルトの名無しさん [2011/12/08(木) 11:59:42.38 ] upx -d で元に戻るので無意味...
437 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 12:04:28.97 ] なら自分で作れよ この板はツール探す場じゃなくて 自分でプログラム書くひとの板
438 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 12:07:11.45 ] 自治厨乙。
439 名前:片山博文MZ ◆0lBZNi.Q7evd mailto:sage [2011/12/08(木) 12:24:21.68 ] >>431 .netshrink www.pelock.com/
440 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 12:35:37.70 ] 鍵なしで実行するなら どうせ実行時に展開されるから無意味だろ
441 名前:片山博文MZ ◆0lBZNi.Q7evd mailto:sage [2011/12/08(木) 12:38:06.44 ] >>439 .netshrinkは.net専用。 telockもダメ。burneyeもダメ。shivaもダメ。 全部解読されている。自分で改造するのが一番。 UPXはソース公開。
442 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 12:53:18.04 ] >>440 鍵ありでもおk。 >>441 UPXは弄るとGPL感染しちゃうんじゃない?
443 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 18:31:20.65 ] GPL広めろよ
444 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 19:30:24.13 ] >>443 おまかせします。
445 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 23:28:50.76 ] 任せとけい!
446 名前:デフォルトの名無しさん mailto:sage [2011/12/09(金) 02:15:31.46 ] ここまでおれのじえん
447 名前:デフォルトの名無しさん mailto:sage [2011/12/10(土) 00:21:02.15 ] MinGW/g++でDLLを作って配布したいのだけど、素のWindowsで動くように するにはどうすればいいの? % g++ hoge.cpp -shared -static -o hoge.dll じゃだめ?
448 名前:片山博文MZ ◆0lBZNi.Q7evd [2011/12/12(月) 11:10:31.61 ] >>447 dlltoolを使え。
449 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 11:15:41.81 ] >>448 すまん、聞きたいのはライセンス関係の話。 -staticしてlibstdc++とかリンクされると配布NGになったりしない?
450 名前:片山博文MZ ◆0lBZNi.Q7evd [2011/12/12(月) 11:25:24.44 ] >>449 www.wdic.org/w/TECH/libstdc%2B%2B
451 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 11:25:49.08 ] で、もしそうならMinGWで必要なDLLはどうやって入手してもらうのがいいのかと。 (素人さんに)
452 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 11:28:05.34 ] >>450 その類の記述は少しだけみつけたんだけど、staticリンクでまったく全部 リンクされた状態でOKてことでいいの? .dllを使うための.aだけがセーフってことではなく。
453 名前:デフォルトの名無しさん [2011/12/12(月) 12:34:37.39 ] gcc.gnu.org/onlinedocs/libstdc++/manual/license.html#manual.intro.status.license.gpl GPLv3 + GCC RUNTIME LIBRARY EXCEPTION.
454 名前:デフォルトの名無しさん [2011/12/12(月) 12:40:03.74 ] www.wdic.org/w/TECH/libc%2B%2B GCC(G++)のライブラリはlibstdc++だが、これはGPLv3であり、GPL離れが加速する中、もはや採用することができない。 GPLv2ライセンスで提供されるものはGCC 4.2.1のlibstdc++までだが、いつまでもこれを採用し続けることも難しいのが現実である。
455 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 12:59:24.63 ] んー、MinGW/g++で-sharedで確認すると、 LIBSTDC++-6.DLL LIBGCC_S_DW2-1.DLL の2つに依存してるようなんだけど、どう配布するのがいいのか教えてくれw (GPLにしたくない、利用者は素人さん)
456 名前:714@C++相談室 part92 mailto:sage [2011/12/12(月) 15:35:18.23 ] 誘導されました。 ttp://hibari.2ch.net/test/read.cgi/tech/1320339482/714 について、MinGWの規則の範囲内でわかれば教えてください。 iconvについても確認してみたところ、 bin/iconv.dll lib/iconv.lib lib/iconv_a.lib となっており、libxmlと似ていました。「_a_dll.lib」はありませんでしたが…。 よろしくお願いします。
457 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 15:39:14.42 ] 何故VC++の話をここに持ってくるんだ
458 名前:片山博文MZ ◆0lBZNi.Q7evd mailto:sage [2011/12/12(月) 15:43:40.84 ] *_a.libは、staticライブラリ。 tinyxmlの方が小さくて使いやすいかもしれない。
459 名前:デフォルトの名無しさん [2011/12/12(月) 15:59:20.57 ] Windowsで使うのは骨だと思うけどなあ。 何かをするたびにエンコーディングの変換をするより、読むとき一度だけ 変換した方が効率がいいし、手間も少ないし。 BAD_CASTってあったと思ったけど、ほんとにBAD CASTだからね。 使えると思わないほうがいい。 つかたらいいなって思うのはよくわかるんだけど。
460 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 16:03:43.46 ] >>456 libxml2.libはlibxml2.dllのインポートライブラリ 実行時にlibxml2.dllが必要になる libxml2_a.libはstaticライブラリ 実行時にlibxml2.dllは不要 libxml2_a_dll.libもstaticライブラリ 実行時にlibxml2.dllは不要 libxml2_a.libとの違いはxmlDllMain(ビルド環境の際を吸収するための薄い皮)というものが含まれている dllを作成するときにはこちらを使うのが望ましい 大したことやらないならrapidxmlがオススメ
461 名前:456 mailto:sage [2011/12/12(月) 16:45:06.56 ] >>457 すみません。vc++依存の話だとすら知りませんでした。 >>459 他に使えるライブラリを探すことに疲れてしまいました。 >>458 >>460 rapidxmlは確かに使いやすかったです。tinyxmlは記憶があるので調べたか試したと思います。 どうしても、属性の値をxpathで取得する必要があって、最初に使えるようになったのがlibxmlでした。 現在は、dllを使って動いているのですが、静的リンクにしたくて調べていました。 こちらについても方法をご存知であれば教えていただきたいです。 調査に疲れてlibxmlをつかうことにしたときと同じように挫折しそうです。
462 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 17:27:10.13 ] >>461 xpathかぁ それならpugixmlがオススメ
463 名前:456=461 mailto:sage [2011/12/12(月) 18:57:05.07 ] >dllを作成するときにはこちらを使うのが望ましい ありがとうございます。 こちらも静的リンクだったとは…。 差分をとってみるとかなり似ていたので、最適化が面倒だったのかな? と見当違いな妄想をしていました。 逆に、「_a.lib」が必要になる場合ってどのような場合なのでしょう? >>462 「pugixml」しらべてみます。 なるべく、実行ファイルのみでアプリの形にしたいので、静的リンクを使いたいのですが、 「_a」付きの「iconv_a.lib」「libxml2_a.lib」を使うにはどうすればいいのでしょうか? リンクするライブラリを「libxml2_a.lib」→「libxml2_a.lib」と変えてみて動かなかったのは、>>456 に書いたとおりです。 と書き込もうと思って、もう一度ビルドして出力を眺めていると、 「MSVCRT.lib」と「LIBCMTD.lib」とが競合している、とのこと。D…?→ぐぐる。 リリースとデバッグが混じってる?いいのか?→Releaseビルド→正常終了 ( Д ) ゚ ゚ 「pugixml」の後に調べてみます。
464 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 18:57:49.45 ] ×リンクするライブラリを「libxml2_a.lib」→「libxml2_a.lib」 ○リンクするライブラリを「libxml2.lib」→「libxml2_a.lib」
465 名前:463=464 mailto:sage [2011/12/12(月) 19:02:37.52 ] あ、うそでした、スレ汚し申し訳ありません。 リリースビルドのリンクが「libxml2.lib」になっていただけでした。
466 名前:デフォルトの名無しさん [2011/12/12(月) 19:07:25.38 ] だけだったね
467 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 19:11:14.38 ] いつまでVC++限定の話続けてるんだよ
468 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 19:35:19.90 ] ↑の話ってVC++の話なの? Eclipseでc++書いてるのだけど、boostを落としてきてビルドして使う際に、 〜.a 〜.dll.a ってのを 〜.lib 〜.dll.lib にしないとならないのって何で? 気にしたこともなかった。
469 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 19:43:33.73 ] > visual c++でXMLを使いたかったため、windows用のlibxmlというライブラリを落として
470 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 19:53:40.13 ] VC++でも #pragma comment(lib, "〜.a")とかつけとけば実行は出来るんじゃあねーかな ていうか質問者の人は\win32フォルダ配下のMakefile.msvcを使ったのだろうか?使ってないに100ペリカ
471 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 19:56:57.99 ] あー、わかった。msvc用のライブラリのバイナリじゃなくて、他のコンパイラでビルドしたバイナリを使ってんだな そりゃー動かねーわ
472 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 20:01:54.62 ] ハズレ
473 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 20:14:27.02 ] てかよく見たらもう質問終わってたのね
474 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 20:18:37.13 ] そんなことより>>455 教えてくれよー static linkして配布すると問題?
475 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 21:01:15.37 ] 馬鹿には無理
476 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 21:23:40.68 ] >>455 答えがあるとは限らないけど、 Licensing Terms | MinGW www.mingw.org/license MinGW-users - Conflicting libstdc++-6.dll requirements, and licensing mingw-users.1079350.n2.nabble.com/Conflicting-libstdc-6-dll-requirements-and-licensing-td6160814.html
477 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 21:40:58.70 ] >>475 そんな、自己紹介しなくとも。
478 名前:デフォルトの名無しさん mailto:sage [2011/12/12(月) 22:03:54.93 ] >>455 libstdc++とlibgccにはGCCのランタイムライブラリに関する例外規定が適用される。 www.gnu.org/licenses/gcc-exception.html www.gnu.org/licenses/gcc-exception-3.1-faq.html でも英語だからよくわかんね。
479 名前:デフォルトの名無しさん [2011/12/13(火) 06:57:24.94 ] 英語でもよくわからないよ。 一応、ヘッダーのリンクオーケー、商用オーケーって書いてはあるんだけど、 何がオーケーなんだかいまいち説明がはっきりしない。 これ書いた本人もまだ決めてないんじゃないの? 細かい部分は、訴訟起こす時に決めますみたいな。
480 名前:デフォルトの名無しさん [2011/12/13(火) 10:57:37.41 ] dllwrap について教えてください。 windows7 64bit環境で使用したいのですが、ヘルプを見ると --target に指定できるのは、i386-cygwin or i386-mingw32 しかないようなのですが、64bitの場合でも i386-mingw32 とすれば問題ないのでしょうか? それとも 64bit用の dllwrapがどこかにあるのでしょうか? OS : windows7 64bit MinGW :mingw-w64-bin_x86_64-mingw_20101002_4.5_sezero.zip MSYS :MSYS-1.0.11.exe
481 名前:デフォルトの名無しさん mailto:sage [2011/12/13(火) 11:08:12.33 ] >>480 projectzero-swb.blogspot.com/2009/08/windows-7-x64mingw-x64.html
482 名前:デフォルトの名無しさん mailto:sage [2011/12/13(火) 19:33:11.78 ] testes
483 名前:デフォルトの名無しさん mailto:sage [2011/12/14(水) 14:25:34.43 ] >何がオーケー コードの配布以外何がある?
484 名前:デフォルトの名無しさん [2011/12/14(水) 15:28:23.77 ] >>483 うん
485 名前:デフォルトの名無しさん mailto:sage [2011/12/15(木) 05:00:32.59 ] MinGW32でextern "C"で定義してある構造体を返す関数が gendefでdefを作ると@4と関数のあとについていて(他の関数には付いていない) それからlibを作るとその関数だけVC++からリンクできないのですが なにかありますか
486 名前:デフォルトの名無しさん mailto:sage [2011/12/15(木) 08:26:23.55 ] struct の値返しは mingw と msvc で互換性がない。
487 名前:デフォルトの名無しさん mailto:sage [2011/12/15(木) 14:23:52.12 ] >>485 //test.h #pragma once #ifdef __cplusplus extern "C" { #endif struct Data{ int a,b; }; struct Data getData(); #ifdef __cplusplus } #endif //test.cpp #include "test.h" struct Data getData() { struct Data d = {123, 456}; return d; } //use.cpp #include <stdio.h> #include "test.h" int main() { struct Data d = getData(); printf("d.a=%d d.b=%d\n", d.a, d.b); return 0; }
488 名前:デフォルトの名無しさん mailto:sage [2011/12/15(木) 14:26:26.14 ] gcc -shared -o test.dll test.cpp gcc -o usegcc.exe use.cpp -L. -ltest gendef test.dll lib /def:test.def /machine:x86 /out:test.lib cl /Fe"usevc.exe" use.cpp test.lib usegcc.exe usevc.exe うちの環境では問題ないなぁ
489 名前:485 mailto:sage [2011/12/15(木) 15:35:19.51 ] >>488 こうするとダメでした。 $ cat test.h #pragma once #ifdef __cplusplus extern "C" { #endif typedef struct { float v[4]; } data_t; data_t getData(int a, int b, int c); #ifdef __cplusplus } #endif $ cat test.cpp #include "test.h" data_t getData(int a, int b, int c) { data_t d; d.v[0] = (float)a; d.v[1] = (float)b; d.v[2] = (float)c; d.v[3] = (float)0; return d; } $ cat use.cpp #include <stdio.h> #include "test.h" int main() { data_t d = getData(1, 2, 3); printf("d.a=%f d.b=%f\n", d.v[0], d.v[1]); return 0; }
490 名前:デフォルトの名無しさん mailto:sage [2011/12/15(木) 16:11:55.94 ] >>489 gcc -shared -o test.dll test.cpp -Wl,--output-def,test1.def gcc -o usegcc.exe use.cpp -L. -ltest lib /def:test.def /machine:x86 /out:test.lib cl /Fe"usevc.exe" use.cpp test.lib や gcc -shared -o test.dll test.cpp gcc -o usegcc.exe use.cpp -L. -ltest impdef test.def test.dll lib /def:test.def /machine:x86 /out:test.lib cl /Fe"usevc.exe" use.cpp test.lib ならいけるのでgendefの問題かもね
491 名前:デフォルトの名無しさん [2011/12/16(金) 22:18:26.50 ] かもね
492 名前:デフォルトの名無しさん [2011/12/18(日) 23:15:42.83 ] だね
493 名前:デフォルトの名無しさん mailto:sage [2011/12/23(金) 20:11:37.95 ] /mingw32/bin/ld.exe: cannot find -lstdc++ このエラーはどうやったら直りますか?
494 名前:デフォルトの名無しさん mailto:sage [2011/12/23(金) 21:47:09.64 ] g++じゃなくてgcc使ってないか?
495 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 09:03:27.32 ] うん
496 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 10:12:02.61 ] こ
497 名前:デフォルトの名無しさん [2012/01/05(木) 19:31:41.76 ] ふう
498 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 16:31:23.43 ] うんこしたいんですけど。便所どこですか
499 名前:デフォルトの名無しさん mailto:sage [2012/01/28(土) 17:04:42.88 ] cygwin 1.7.xってDOSモード無いの?
500 名前:デフォルトの名無しさん mailto:sage [2012/01/28(土) 17:18:47.05 ] DOSモード?
501 名前:デフォルトの名無しさん mailto:sage [2012/01/28(土) 17:44:11.08 ] >>500 よく見たら、書いてありました。すいません。 toro.2ch.net/test/read.cgi/unix/1268282846/14
502 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 10:41:28.34 ] MinGW側でmallocしたポインタをVC++側でfreeしたり FILE*を受け渡したりできるんでしょうか? できないと思うんだけど、msvcrtを使っているというのはできるという意味でしょうか?
503 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 11:14:22.99 ] ためだろ 解放用の関数なり自作スマポなりで対応しろ クラスならコンストラクタデストラクタをprivateにしてstaticメソッドかfriendしてる関数からしか生成、破棄できないようにするのもあり
504 名前:502 mailto:sage [2012/02/01(水) 11:27:47.34 ] どうもmsvcrtでも71や80など違いがあるらしく、そのあたりの問題らしい。 mallocしたポインタを返すからそっちでfreeしろって設計のライブラリを撲滅したい。
505 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 11:29:19.63 ] >>503 mingwfreeというmingw側の関数でfreeするだけの関数が入ったDLLを作って対応していたんだけど 本当にこれ必要なのかなって疑問でした。
506 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 11:41:07.39 ] >>502 例えばMinGWのgccでコンパイルしたobjをMSVCのclでコンパイルしたobjにリンク した場合は、可能だよ (ただし、コンパイラサポート用の特殊なobjやlibを別途リンクする必要が しばしば生じるし、C++の場合は両者のABIにそもそも互換性がないのでダメだ) そうではなくて、MinGWで作ったDLLをMSVCで作ったexeから利用するシナリオを 考えているのなら、ダメ MSVCに閉じた世界であっても、msvcrt.dll, msvcr70.dll, .... msvcr100.dllや そのデバグ変種はすべて互換性がなく、exeとDLLが同じランタイムDLLを 利用しているのでない限り、そういうことは出来ない(それぞれ別のCランタイムを ロードしてメモリに保持する形になる) 今のMSVCはデフォではmsvcrt.dllとリンクするようになっていないので 自動的にダメということになるよ
507 名前:506 mailto:sage [2012/02/01(水) 11:43:03.46 ] ちなみにC++が不要なら、MSVCでmsvcrt.dllとリンクするようにすることは一応可能 WDKを入れて、そちらのincludeとlibを使うといい ただ色々落とし穴もあるし、事実上(少なくともモダンな)C++は使えない ネットで検索すると色々情報が得られるはず
508 名前:502 mailto:sage [2012/02/01(水) 12:13:51.23 ] >>506 objも互換性があるのか。 DLLにしないとVC++側から使えないと思っていました。 ちなみにC++は不要でCだけでいいです。 >>507 逆にMinGW側でmsvcrt80などにリンクするようにビルドすることもできるらしいのですが MSVC側のCRTのバージョンが上がっていきそうなので、 mallocしたポインタを返してこっちでfreeすることを要求してくるMinGW側のライブラリ(DLL)があって 僕が作っているわけではないオープンソースのライブラリなのでできればコードには触りたくないけど MSVCから使いたい場合は、 MinGWのDLLをビルドしたのと同じバージョンのfreeを単体のDLLにしてその関数でfreeするのがいい方法でしょうか。
509 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 13:17:19.87 ] たぶんそれで大丈夫だけど、試したことはないな そのオープンソースのライブラリが一応Windowsをサポートしているんなら DLL boundaryを超えた場合の問題について開発者に説明して libfoo_free()のような関数を入れてもらうのが本来は望ましいんじゃないの objは互換性あるよ、少なくとも32bitでは gccもwin32ターゲットの場合はCOFFを吐くし、fopenやmallocみたいな関数への 参照はどっちでコンパイルしたとしても最終的にリンク時に解決されるので そのタイミングでリンクされるCランタイムが使われることになるわけだ x64だとどうだったかな……x64のABIは確か結構ややこしいことになってるんだよな
510 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 16:32:47.61 ] >>509 今そうしているので動いてはいるんだけど もっと普通の方法がないのかなと思ったのです。 どうもです。
511 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 16:49:08.70 ] LoadLibraryしてGetProcAddress(msvcrtdll, "free")では?
512 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:37:53.09 ] msvcrt.dllが(mingwによって)間接的にプロセスのメモリ空間にマップされているなら LoadLibrary()の代わりにGetModuleHandle()でもいいね
513 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:54:09.97 ] >>511 そっちのほうが簡単ですね MinGWがmsvcrt.dllを使っているというのは期待してていいんでしょうか
514 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:56:55.89 ] DLLが使っているfreeのアドレスをなんらか判定して取れれば一番いい気がしますけど
515 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:58:28.73 ] この手の解決策はハックなので、ライブラリの実装を直してもらえるなら 直してもらったほうがいいのは間違いないわな ライブラリがリソース解放用の関数を提供していれば、それがMinGWでビルド されていようが、MSVCでビルドされていようが、問題ないわけで
516 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:59:49.32 ] >>514 そのDLLのインポートセクションを見れば一応わかるはず APIフックなどでは使われる手法だけど、ハックだな
517 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 18:02:10.74 ] msvcrt.dll使ってるとは限らないしなぁ
518 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 18:39:45.66 ] 個別に直してもらえれば一番いいのはそうですけど いろいろあるのと今後もまたあるかもしれないので 相手の対応に依存せず自分側だけで対応できる汎用的な方法も持っておきたいというのがあるんですよね。 FILE*の受け渡しなんかはインターフェースの定義だから多分変えてもらえないので 同じバージョンのfopenが使いたいとかもあるし。 DLLと関数を指定して、それがインポートされているDLL名を取得して>>511 ってのを試そうと思います。
519 名前:デフォルトの名無しさん mailto:sage [2012/02/07(火) 01:56:10.50 ] bugs.ruby-lang.org/issues/3296 これとかまさに>>516 なコードだよな iconvとかどこでも使われてるのに、エラー通知がerrnoなために DLL-safeでないってのが終わってる POSIXだから今更インタフェース変えられるわけもねーし
520 名前:デフォルトの名無しさん mailto:sage [2012/02/12(日) 00:42:21.69 ] この手の問題ってメモリの処理はどうなってんだろ? 一つのプログラムが二つ以上の標準ライブラリとリンクしてしまった場合ヒープは適切に管理されるのかな
521 名前:デフォルトの名無しさん mailto:sage [2012/02/12(日) 01:32:29.29 ] 少なくとも今のCRTだとmalloc()は大して自分じゃ仕事してねーというか HeapAlloc()に丸投げなので、CRTのバージョンが違ってもOSの側が 矛盾のないように仕事をしてくれるはず ただし、それぞれがHeapCreate()で自分専用のプールみたいなもんをこしらえて、 そっからHeapAlloc()していく OSの同じAPIに仕事させてる以上、それらは衝突はしないんだけれども プールAから確保したメモリをプールBのものとして開放することはもちろんできない HeapFree()の関数インタフェース見ればわかると思うけど malloc()やfree()という関数インタフェースからはプールが見えないんだけど裏では それぞれ専用のプールが使われるわけで、そこが要注意なわけだ
522 名前:デフォルトの名無しさん mailto:sage [2012/02/12(日) 01:58:28.91 ] なるほど。低レベルではHeapAllocを使っているならきっと拡張可能で作っていると思うんだが 2つヒープができてしまった場合効率的に使えるのかな?変に制限されるんじゃないかと思ったので
523 名前:デフォルトの名無しさん mailto:sage [2012/02/12(日) 03:45:52.29 ] 標準ライブラリの数だけallocatorがあれば ひとつより効率的ではないだろけど、まあそう気にするほどでもないのでは。 C++でもdeleteやdelete[]があって違うんじゃない。
524 名前:デフォルトの名無しさん mailto:sage [2012/02/14(火) 12:21:53.07 ] mingwのgprofはlinuxのとくらべて制限とかありますか?
525 名前:デフォルトの名無しさん mailto:sage [2012/02/14(火) 12:36:18.05 ] ありがとうございます。 あるとわかってよかったです。
526 名前:デフォルトの名無しさん mailto:sage [2012/02/14(火) 23:42:58.64 ] gprofって、凄いの?
527 名前:デフォルトの名無しさん mailto:sage [2012/02/15(水) 12:49:16.99 ] gcc -pg で作って実行したらgmon.outができたけどgprof test.exe gmon.outとかやってもヘッダみたいなのしか出ない。なにか間違ってるのか?
528 名前:デフォルトの名無しさん mailto:sage [2012/02/15(水) 13:35:45.56 ] ttp://blog.majide.com/2009/03/usage-of-gprof/ ttp://d.hatena.ne.jp/ousttrue/20091017/1255754733
529 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 15:29:10.20 ] tdm64-gcc-4.6.1をインストールして gcc -o a.exe a.cpp ってやると undefined reference to 'operator new(unsigned long long)' みたいなエラーがでるので解決策教えてください。 ソースは int main(){ new int *a=new a; } です。
530 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 15:48:02.62 ] 訂正 ソースは int main(){ int *a = new int; です。
531 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 16:00:03.50 ] g++
532 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 16:06:36.96 ] gccをg++に変えればできるんですか?
533 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 16:10:54.70 ] すみません、よろしくお願がいします。 これはみんながなる症状なんでしょうか? 本当に困ってます。お願いします。
534 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 16:46:04.85 ] >>532 何故それを試さん
535 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 16:53:19.78 ] すみません、インストールしたパソコンではないので 今すぐ出来ません。 許してください。
536 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 17:04:55.28 ] じゃあ、試してから結果を報告してください それまでお待ちしています
537 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 17:34:33.60 ] はい、また何日か後くらいにきます。 そのときはよろしくお願いします。
538 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 17:51:57.66 ] いま別のパソコンで試したけど同じ症状でした。 しかしg++にしたらちゃんとコンパイルとリンクできました。 有難うございます。 これは何が原因なんですか? とても気になるのでおしえてください。
539 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 18:43:21.54 ] え、今時の学生は基本的なことも知らないでやるの?
540 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 18:46:25.61 ] もしかしてgccはgnu c コンパイラーの略ってことですか? gnuコンパイラーコレクションの略で好きな言語をコンパイル出来る フロントエンドだと勝手に勘違いしてました。 大事なことをおしえてくれて有難うございます。
541 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 20:19:11.22 ] >>540 コンパイルは出来るよ。 言語ごとのライブラリを勝手にリンクしないだけ
542 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 20:33:57.27 ] -v 見ると楽しいよな
543 名前:デフォルトの名無しさん mailto:sage [2012/02/17(金) 01:38:57.98 ] なんでもはコンパイルできないわよ。知ってる言語だけ。
544 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 16:22:39.59 ] じゃあ539の勘違いということでFAですね。
545 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 16:53:58.45 ] エラー: ‘new’ が宣言されていません (この関数内での最初の使用)
546 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 13:25:24.33 ] mingw-get-instはインターネット回線に繋がってないパソコンではつかえないですよね?
547 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 14:07:28.95 ] つかえないです
548 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 08:48:41.26 ] ありがとうございます。 msysを手動でインストールする方法とか知ってますか? 知らないなら自分で考えます。
549 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 10:14:42.41 ] インストール出来る環境でインストールしたら、それを全部アーカイブしてよそへ持ってく。 例えばC:\MinGWにインストールしたらそのディレクトリごと。 コンソールへのショートカットはC:\MinGW\msys\1.0\msys.batを自前で作ればオッケー だと思う。 時分の使い方の場合は問題でなかった。 あ、双方の環境でログイン名が違う場合は、ホームディレクトリをリネームするか 必要な設定ファイル群をコピーしてね。
550 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 11:14:27.76 ] ありがとうございます。 参考にします。
551 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 11:22:15.80 ] >>548 xhmikosr.1f0.de/index.php?folder=dG9vbHM= ここのMSYS_MinGW_GCC_462_x86-x64_Full.7zを解凍するだけ mingwは他のを使いたければ、中のmingwフォルダを差し替えればいい
552 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 19:50:04.64 ] >>548 ttp://d.hatena.ne.jp/naga_sawa/20111112/1321108907 自分は、こことかを参考にして手動インストールしてる。
553 名前:片山博文MZ ◆0lBZNi.Q7evd [2012/02/27(月) 14:15:19.34 ] 次のようなWDM filter driverをMinGWでビルドできないの? ttp://www.reactos.org/paste/index.php/10164/
554 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 13:13:02.42 ] >>553 やりたいことは要するにコレなんでしょ? どうやるのかは知らんが A filter driver that swaps "Left Ctrl" and "Caps Lock" keys
555 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 19:46:33.96 ] すみません初歩のことなのですが、先程C言語の本を買ってきて 本の通り(多分・・・)にmingw-get-inst-20111118.exeをインストールして 環境設定のPathを選択して編集→変数値の最後に「;C:\MinGW\bin」を 入力してから、コマンドプロンプトで「C:\Users\パソコン名>gcc」と 入力しても本に記載している「gcc:no input files」と表示されません。 代わりに gcc:致命的なエラー:入力ファイルがありません RpC~オワオスB と表示されます。 ただ日本語に翻訳されてる感じですが・・・ご教授ください>< OSはWindows7Ultimateです。
556 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 19:51:29.11 ] ただ日本語に翻訳されてるだけでしょう
557 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 19:59:27.99 ] >>556 ありがとうございます
558 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 20:04:35.93 ] >>555 さすがにもうちょっとググったほうがいい・・・
559 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 20:09:30.90 ] gcc:致命的なエラー:入力ファイルがありません RpC~オワオスB でググってきます><
560 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 20:53:25.96 ] >>559 MinGW msys 環境構築 でググれ 「RpC~オワオスB」みたいなアホなワードでは何も出ない
561 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 21:15:05.12 ] 追試してみた。 手元の mingw-get-inst-20110316.exe (Windows 7 Pro 64bit) では、エラーメッセージは英語だったよ。 gcc: fatal error: no input files compilation terminated. mingw-get-inst-20111118.exe に入れ替えたら、同じように文字化けした。 C:> which gcc C:\MinGW\bin\gcc.EXE C:> gcc --version gcc (GCC) 4.6.1 ...(略) C:> gcc gcc: 致命的エラー: 入力ファイルがありません RpC~オワオスB でも、いったんファイルに保存してtypeで表示したら文字化けしない。ふしぎ。 C:> gcc >error.log 2>&1 C:> type error.log gcc: 致命的エラー: 入力ファイルがありません コンパイルを停止しました。 あと、LANGを切り替えたら、こちらも文字化けしなかった。 C:> set LANG=C C:> gcc gcc: fatal error: no input files compilation terminated.
562 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 21:18:09.30 ] >>559 釣られてみる。 > gcc [リターン] じゃないよね...
563 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 21:30:47.65 ] Shift_JISで「コンパイルを停止しました。」は 83528393 83708343 838B82F0 92E28E7E 82B582DC 82B582BD 8142 他の文字コードで解釈できるのは RpC~ B だけ、あと半角カタカナ そんだけ
564 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 21:40:37.56 ] >>562 やめてくれー>< ぼくをイジメないでくれ>< 初心者なんだ>< >>561 僕の脳みそでは、まだよくわからないけど set LANG=C 打ち込んだらなおりました!ありがとぉ!
565 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 21:48:18.93 ] Cはまだ早い まずAからだ
566 名前:561 mailto:sage [2012/02/28(火) 21:58:15.78 ] すまんが、備忘録として、もう一回だけ書かせてくれ。 [case B] cmd.exe + bash でも、文字化けする。 C:> which bash C:\MinGW\msys\1.0\bin\bash.EXE C:> bash bash-3.1$ gcc gcc.exe: 致命的エラー: 入力ファイルがありません RpC~オワオスB bash-3.1$ LANG=C gcc gcc.exe: fatal error: no input files compilation terminated. [case C] mintty (code.google.com/p/mintty/ の mintty-1.0.3-msys.zip) + cmd.exe だと、文字化けしなかった。 C:> mintty -c c:\mingw\mintty.cfg cmd.exe (以下、mintty の window の方で) C:> gcc gcc gcc: 致命的エラー: 入力ファイルがありません コンパイルを停止しました。 [case D] mintty + bash.exe も文字化けしなかった。 C:> mintty -c c:\mingw\mintty.cfg bash.exe (以下、mintty の window の方で) bash.exe-3.1$ gcc gcc.exe: 致命的エラー: 入力ファイルがありません コンパイルを停止しました。 bash.exe-3.1$
567 名前:548 mailto:sage [2012/02/29(水) 10:16:21.56 ] 手動インストールできました。 色々ファイルを入れてpi.batが動くようにしたら出来ました。
568 名前:デフォルトの名無しさん mailto:sage [2012/02/29(水) 12:16:19.41 ] 一応、最新版にしたら4ギガ以上のファイルのサイズも表示されますね。 よかったです。
569 名前:デフォルトの名無しさん [2012/02/29(水) 17:22:10.28 ] よかったよかった
570 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 10:03:50.14 ] 調べてみたらまだスレッド機能使えないらしいな。
571 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 15:16:06.43 ] まじで…
572 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 00:50:26.85 ] すみません 昨日、MinGWを入れてみて下のコードを >gcc test.c -o test でコンパイルしたら PCのアンチウィルスソフトに検知されました。 誤検知かと思ってDrWebのオンラインスキャンにかけても感染してると診断されました。 同様の症状の出る人いませんか? #include<stdio.h> int main(){ printf("Hello,World!!"); return 0; }
573 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:08:55.65 ] 検知されたのは、生成されたtest.exe 診断はトロイ g++でコンパイルしたときはなんともありませんでした
574 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:18:55.97 ] たびたび失礼 g++でコンパイルしたexeもオンラインスキャンにひっかかる
575 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:27:37.21 ] とりあえずここにそのバイナリあげてみ https://www.virustotal.com/
576 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:52:34.65 ] Detection ratio: 16 / 43 AVG Generic26.BUPR BitDefender Trojan.Generic.KDV.493557 CAT-QuickHeal (Suspicious) - DNAScan DrWeb Trojan.Siggen3.46647 Emsisoft Trojan.Win32.Menti!IK F-Secure Trojan.Generic.KDV.493557 GData Trojan.Generic.KDV.493557 Ikarus Trojan.Win32.Menti Jiangmin Trojan/Menti.osy K7AntiVirus Riskware McAfee-GW-Edition Heuristic.BehavesLike.Win32.Suspicious.H nProtect Trojan.Generic.KDV.493557 SUPERAntiSpyware Trojan.Agent/Gen-Small TheHacker Trojan/Menti.jswz VBA32 Trojan.Menti.jvgg VirusBuster Trojan.Offend!HUI9cixAnWU いくつか引っかかってますが、マカフィー、カスペルスキー、NOD32がスルーしてますね 上の危険度を示す?矢印の表示は真ん中を指してます
577 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 02:06:55.48 ] Avast、Microsoft、Symantecもスルーしてるところをみると どうも誤検知のようです・・・ たいへんお騒がせしました
578 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 00:30:42.04 ] 自作プログラムがウィルス扱いとかたまらんたまらん
579 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 01:13:08.52 ] MinGWの4.6.3落とせるとこもうある?
580 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 02:26:57.71 ] >>579 www.xvidvideo.ru/component/docman/cat_view/28-cross-mingwgcc-x86x64/183-cross-mingw-with-gcc-46-x86x64/193-stable.html
581 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 04:30:37.73 ] thx!
582 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 18:18:08.45 ] cygwinのgccで作ったexeが動かなくなって、今日一日悩んで ここで質問しようと思い、-print-search-dirsやらメモしつつ 何の気なしにavast止めたら動いた。 このやるせなさは・・
583 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 19:20:34.26 ] ユーザに何も知らせずに止めるの? avastって
584 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 13:27:42.54 ] avast誤爆多すぎるからやめたら
585 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 00:30:00.48 ] >>583 止めるとか馬鹿にするな 勝手に設定も変更するよ
586 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 12:48:26.70 ] Avast の 自動サンドボックスとやらが致命的だな バッチ処理中に一つでも未承認のツールがあれば即アウト 「インストール中はウイルスソフトを停止しておいてください」みたいなのを 無視できなくなった
587 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 13:09:36.47 ] avastこそ最強ウィルス。
588 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 13:21:06.29 ] aviraはconftestとかをウィルス判定しまくることに嫌気がさしてMSEに乗り換えたんだが、直ったのかな
589 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 15:27:01.54 ] Aviraは承認を記憶させることすらできなかったからな コンパイラがファイルを吐くたびに 同じファイルでも毎回承認させるとかあってアホすぎた
590 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 15:39:23.51 ] 完全に同一のファイルを吐かないんだから当たり前だろ
591 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 19:15:05.08 ] まあすれ違いを延々引っ張られても困るわけだが
592 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 09:46:04.66 ] そうだったなすまん
593 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 22:42:06.66 ] MSEでも結構誤爆あるのがなぁ
594 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 23:33:08.04 ] 適当に専用ディレクトリ掘って、そこだけ監視対象から外しとけ
595 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 20:57:23.46 ] mingw/nuwen gcc4.6.3 キタコレ ろしあも4.7.0 stable キタワ
596 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 15:30:41.13 ] GCC 4.7.0 released [2012-03-22]
597 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 23:32:43.13 ] ロシアあるのか 日本産はないのか?
598 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 00:29:08.96 ] なんか4.7.0はlibavをミスコンパイルするらしいからとりあえず見送り
599 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 00:50:31.93 ] おまえらって、新しいGCC出たら自前でビルドしてんの?
600 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 03:28:22.91 ] 少しでもスレ眺めりゃ野良ビルド使ってる奴が大半ってことぐらい分かるだろ 俺は自前でやってるが
601 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 04:36:42.24 ] 自前でやってるってことはFTPコマンドとかもポート(?)してるの? mingwってFTPコマンドは別ウィンドウ開いちゃうんでちょーウザいんだけど対処方法ある?
602 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 23:15:17.52 ] >>600 ゆとり日本には珍しい奴だな 4.7出た記念に自前GCCビルドでもしてみるかな。とは言ってもめんどくさいな Boost1.49ですらめんどくさがってまだビルドしてないし
603 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 08:51:20.77 ] UCS32で標準入力して標準出力したいです。 始めにeclipseはソースコードの文字コードはシフトジフコードなので UCS32を使うにはソースコードの文字コードを変えなければいけませんが 出来ないのでシフトジフコード上でエスケープシーケンスを使ってUCS32を 使わなければいけませんよね? GCCに教えるソースコードの文字コードは標準でいいでしょう。 GCC実行時に使う文字コードはUCS32のやつにしたらいいのですね。 coutでUCS32の文字列は出力できません。 コマンドプロンプトで入力に使うのやそれに表示される文字コードは変えられませんよね。 ではやることの一部分だけじゃなくて全体的にどうしたらいいですか? 調べても分からないので教えてください。
604 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 09:06:58.34 ] Boost.Iostreamsのcode_converter経由でiconvを呼ぶかな(適当)
605 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 13:14:23.46 ] お年を召している質問者に違いない 70歳くらい?
606 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 14:25:02.32 ] すみませんジスでした。
607 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 22:41:56.48 ] JISなの?
608 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 22:46:04.44 ] 最終的に画面に表示できる文字コードに変換しないと
609 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 22:47:55.08 ] なぜUTF32で出力したいのか教えろよ
610 名前:デフォルトの名無しさん mailto:sage [2012/04/12(木) 00:19:44.68 ] >>603 CP932 の場合は、こんな感じで出来たと思う。 gcc --input-charset=CP932 --exec-charset=CP932 ... で、少なくとも cygwin gcc は libiconv を使ってるので (cygcheck `which gcc` すれば判る) UTF系のcharsetは、 strings /usr/bin/cygiconv-2.dll | grep UTF すれば判る。 なお、mingw + msys なら iconv -l で調べられる。 いずれも、UTF-32 系はUTF-32,UTF-32BE,UTF-32LEの3つ よって、「UTF-32」なら、次のようにすれば出来るかも知れない(未確認) gcc --input-charset=UTF-32 --exec-charset=UTF-32 ... なお、>>603 では CygwinとMinGWのどちらを使っているのか、 それぞれのバージョンはどれか、とか、より詳しく回答するのに 必要な情報を何も書かれていないので、 自分はこれ以上答えるつもりはない。
611 名前:デフォルトの名無しさん mailto:sage [2012/04/12(木) 01:05:06.17 ] >>603 なんだかツッコミどころが多いし何をしたいのかも分からないな 単にUnicodeを使って多国語対応したソフトを書きたいというだけなら 方針が致命的に間違っているとだけ言っておく あと、Eclipseはソースコードを含むテキストファイルのの文字エンコーディングの 設定を変更できるぞ
612 名前:デフォルトの名無しさん mailto:sage [2012/04/12(木) 15:08:17.39 ] 全部読むと、何らかのunicode文字列を、画面に表示させたい事は分かる。 標準入出力とあるから、unicodeはファイルか何かだろう。 あるいはunicodeの並びで、文字列処理をさせたいのか。 iconvと適当なwrapperを落として、文字コードの変換処理を書く。 で、まにあうと予想
613 名前:603 mailto:sage [2012/04/14(土) 14:44:57.10 ] 今から具体性を持って書きます。 GCCはTDM-GCCを使用しています。 字句解析器でユニコードを正規表現に使えるようにしたいです。 ついでにその字句をエクリプスの出力の窓に出したいです。 入力もソースコードに書いた日本語の文字かららファイルからしたいです。 エクリプスのソースの文字コードの設定の中にユニコードの奴はありませんでした。
614 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 15:01:29.91 ] 内部はwchar_tと出力はUTF8で十分じゃね?
615 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 15:06:54.48 ] unicodeで正規表現とutf-32がどうつながるんだ
616 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 15:17:52.29 ] ユニコードとはutf-32のことです。 型はchar32_tで 文字列はchar32_t * ですよろしくお願いします。 utfには他の種類にも対応したいので教えてください。
617 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 15:30:30.85 ] いやよ
618 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 15:45:38.77 ] なぜutf-32が必要なのか書けよ
619 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 16:13:09.49 ] アスキーコード以外の色々な文字が使いたいからです。
620 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 16:18:28.49 ] UTF-8で十分です
621 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 16:19:26.10 ] UTF-8なら使えるんですか? 試したこと無いので分かりません。
622 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 23:55:32.02 ] つーかUTF-32なんて質問者以外では誰が使うんだ?
623 名前:デフォルトの名無しさん mailto:sage [2012/04/15(日) 15:45:35.00 ] 今からじゃなくて最初から具体的に書けよ。で、boost/regex/icu.hppで動くみたいだよ。 Transparently search Unicode strings that are encoded as either UTF-8, UTF-16 or UTF-32. なんて言ってるし。
624 名前:デフォルトの名無しさん mailto:sage [2012/05/15(火) 00:55:00.67 ] Cygwin + MinGW + GCC 相談室は利用者がいなくなり このたび閉室することになりなした。 ご利用ありがとうございました。 残りは雑談室、喫煙室、サボリ部屋など好きなように使ってください
625 名前:デフォルトの名無しさん mailto:sage [2012/05/15(火) 18:21:59.48 ] このスレッドは天才チンパンジー「アイちゃん」が 言語訓練のために利用します。 アイと研究員とのやり取りに利用するスレッドなので、 関係者以外は書きこまないで下さい。 京都大学霊長類研究所研究所
626 名前:デフォルトの名無しさん mailto:sage [2012/05/15(火) 18:26:24.44 ] ならばオレが今なんだかよく判らない藪道に嵌って苦しんでる Mingw + cmake + Qt Createrスレとして最利用しようず
627 名前:デフォルトの名無しさん [2012/05/15(火) 18:57:00.21 ] .
628 名前:デフォルトの名無しさん mailto:sage [2012/05/15(火) 18:58:00.60 ] gnupack楽でいいよ
629 名前:デフォルトの名無しさん mailto:sage [2012/05/15(火) 20:46:14.33 ] いいよね
630 名前:デフォルトの名無しさん mailto:sage [2012/05/16(水) 10:12:52.33 ] いまどきXPでやってるってのがなあ
631 名前:デフォルトの名無しさん [2012/05/17(木) 01:29:32.42 ] lmmsというオープンソースのソフトウェアを mingwを使ってWindows XPでcompileしようとしているんですが windowsのdosからmingw32-make を実行してみると C:/cygwin/home/USER/repos/lmms.git/include/AudioFileWave.h:32:21: error: sndfile.h: No such file or directory と出てしまったので、 sndfile.h が置いてあった C:\cygwin\usr\include を include directoryとして指定したく mingw32-make -IC:\cygwin\usr\include と打って再度試してみたのですが、 同じエラーが出てうまくいきませんでした。 何かやり方におかしいところがあるのでしょうか。 ご指摘いただけると嬉しいです。
632 名前:デフォルトの名無しさん mailto:sage [2012/05/17(木) 03:09:50.37 ] Cygwin入れといてDOSから使うとかすでに意味不明なんですが
633 名前:デフォルトの名無しさん mailto:sage [2012/05/17(木) 06:29:39.83 ] >>631 そのsndfileはcygwinでコンパイルされているから使えない libsndfileをmingwでビルドしろ makeの-IオプションはMakefileファイル内のinclude文で使うパスを指定するもの
634 名前:デフォルトの名無しさん mailto:sage [2012/05/17(木) 08:47:06.13 ] 2012年5月15日、中国新聞網によれば、12日から韓国の麗水(ヨス)で開催されている世界博覧会(麗水万博)の入場者数が、当初の予想の10%程度にとどまっており、主催側が事態を憂慮していると、シンガポール華字紙・聯合早報が報じた。 麗水(ヨス)万博は開幕翌日の目標入場者数を5万〜10万人としていたが、ふたを開けて見れば開幕当日が3万5000人、2日目は2万5000人だった。開幕から2日間の入場者数が予想の1割程度にとどまったことに関係者はショックを隠せない。 主催側は「他国で行われた万博も開幕当初は入場者が多くなかった例がある」と楽観的な見方を示しているが、韓国国内メディアもチケットの売れ行きが芳しくないと報じたことで焦りを強めているようだ。 当初は300万枚を売る予定だったが、5月10日時点でわずか120万枚しか売れていないという。 不振の背景には、3度行われたプレオープン時の不備があまりに多かったことや、パビリオンに入場するたびに長い列に並ばされること、さらに展示内容に魅力がないことなどがあり、入場者からも不満の声が多く聞かれるという。(翻訳・編集/岡田) img.recordchina.co.jp/imgout.php?m=5&img=CFP427587233.jpg img.recordchina.co.jp/imgout.php?m=5&img=CFP427587240.jpg img.recordchina.co.jp/imgout.php?m=5&img=CFP427587239.jpg img.recordchina.co.jp/imgout.php?m=5&img=CFP427587238.jpg img.recordchina.co.jp/imgout.php?m=5&img=CFP427587237.jpg img.recordchina.co.jp/imgout.php?m=5&img=CFP427587236.jpg img.recordchina.co.jp/imgout.php?m=5&img=CFP427587234.jpg img.recordchina.co.jp/imgout.php?m=5&img=CFP427587231.jpg 写真は4月20日、開幕に向けて準備を進める麗水(ヨス)万博の中国館。 www.excite.co.jp/News/chn_soc/20120516/Recordchina_20120516017.html
635 名前:デフォルトの名無しさん mailto:sage [2012/05/17(木) 10:17:53.37 ] >開幕翌日の目標入場者数を5万〜10万人としていたが、ふたを開けて見れば開幕当日が3万5000人、2日目は2万5000人だった。開幕から2日間の入場者数が予想の1割程度 計算もできないのかな?
636 名前:デフォルトの名無しさん mailto:sage [2012/05/17(木) 22:41:14.64 ] うん、できないよ
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なんたらを実行だな