1 名前:デフォルトの名無しさん [2008/09/13(土) 00:38:02 ] Windows上で動作するフリーの開発環境 CygwinとMinGWに関する相談スレッドです。 過去スレ: 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について part8 pc11.2ch.net/test/read.cgi/tech/1192201659/ 【激遅】AppleGCC【絶望】 pc11.2ch.net/test/read.cgi/tech/1173267844/
577 名前:576 mailto:sage [2009/10/02(金) 14:51:31 ] 何か3.4.5 だとSJISもうまくコンパイルできないようなんですが 3.4.2とかを入れないといけないのでしょうか?
578 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 15:06:46 ] >>577 当然、-finput-charset=cp932とかやってるんだろうね。
579 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 15:14:14 ] >>578 やっていません。 3.4.5 でも そのオプションをつければいけるのでしょうか? 今やっているのは取りあえず通らない文字を削っているのです 取りあえず、SJIS はいいとして、インクルードファイルは、3.4.2 とかにしないといけないのでしょうか?
580 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 15:21:26 ] 全部試してみればいいじゃないか 無料なんだから、めんどくさがってないで自分で解決してみろ
581 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 15:35:55 ] >>576 MinGWならwindows APIのソケットを使って下さい。
582 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 17:37:59 ] 4.3.2 にして、色々試していたらコンパイルもリンクも出来ました 皆さん、どうもありがとうございました。
583 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 20:25:46 ] MSYSにVIMインストールするにはどうしたらいいんですか?
584 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 20:36:11 ] 手順 1. vim をインストールする
585 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 20:40:14 ] >>583 vimのソースをダウンロードして解答したら中に 「INSTALL」か「README」っていうファイルがあるはずだからそれを読んでください。 大概、.configure; make; make install とかすることになりそうだけど。
586 名前:583 mailto:sage [2009/10/04(日) 21:20:04 ] MinGW+MSYS環境なのですが,yumみたいなのはついていないのでしょうか?
587 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 21:27:13 ] よくよく確認してみると、vimってMSYSにデフォルトで入ってるみたいなんだが。
588 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 21:31:53 ] そういう何もかも込み込みの環境を提供しようとするものではない。 基本的には configure と make が動くところまでって感じ。
589 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 21:33:46 ] そうなんですね. じゃあソースおとしてコンパイルしてみます. 最新版のMSYSにはVIMがはいっていないみたいなんですよね
590 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 21:39:51 ] msysDTK の方に入ってるかも?
591 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 21:40:34 ] >>589 一応公式サイトにMSYS用のvimのバイナリっぽいものがあるけど、試しては無い。
592 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 21:43:29 ] >>590 いや、DTKにはエディタ系は入ってないっぽい。 sourceforge.net/project/shownotes.php?release_id=131044
593 名前:590 mailto:sage [2009/10/04(日) 22:55:06 ] あれ? わざわざ入れたことは無い (だって Emacs 派だから!) はずなんだけど俺の環境には vim は入ってるなぁ。 何かと一緒に入ったんだと思うんだけど、 DTK じゃなかったか。
594 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:42:17 ] TDMいつになったら直るんだ。 次のg++のバージョンまで直す気がないとか? と思ったら似たようなレスが >>570 でも出ていたか。
595 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 23:40:31 ] 早くバグ直せゴルァ!メールでも送るとか
596 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 01:13:33 ] sourceforge.net/projects/mingw/files/ MSYS vimに分離されたようだね ところで.tar.lzmaファイルってWindowsでは対応ソフト少ないような気がするんだ・・・ お前さんがたはtar使ってるの?
597 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 01:23:44 ] 俺のtarはv1.13だからlzmaは対応してません。(キリッ)
598 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 01:53:27 ] 俺んとこのtarも1.13だ mingw32-gcc-4.4.0が出たときは結局Linuxで展開してからWindowsに持ってきたよ ちょっと解せないものを感じた
599 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 02:07:22 ] windowsじゃないOSでクロスビルドした方が効率いいからね
600 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 02:54:40 ] tdmのソースの中のehstatic.patchにこんなことやってるところがあるんだけど + HANDLE hmutex = CreateMutexA(0, FALSE, name); + if (WaitForSingleObject(hmutex, INFINITE) != WAIT_OBJECT_0) + __w32sp_trap();
601 名前:デフォルトの名無しさん [2009/10/06(火) 11:37:29 ] crt2.oのソースはどこにあるんだ?
602 名前:デフォルトの名無しさん [2009/10/06(火) 11:52:37 ] crt0.oのソースはどこだ?
603 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 11:58:40 ] cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/cygwin/crt0.c?rev=1.4&cvsroot=src
604 名前:デフォルトの名無しさん [2009/10/06(火) 13:41:24 ] >>603 ありがとう。 これで-municodeが使えるようになるといいが。 www1.axfc.net/uploader/Sc/so/42950.zip
605 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 20:42:21 ] >>596 俺は7-Zipが.tar.xzに対応するのを待っている。
606 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 11:25:40 ] >>593 vimは一個前のMSYSの本体に入ってたが最新版で別パッケージに分離された.
607 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 10:36:21 ] 2009-10-08 TDM-2 fixing the bug that caused a major slowdown in nearly any non-trivial program.
608 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 11:28:08 ] >>607 待ってました! 情報サンクス!
609 名前:538 mailto:sage [2009/10/09(金) 11:50:25 ] 早速>>607 紹介のバージョンに入れ替えて>>538 の問題をテストしてみた。 直ってる!ヨカッタ。
610 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 12:13:03 ] キター
611 名前:デフォルトの名無しさん [2009/10/09(金) 12:13:13 ] MinGWでUnicodeアプリケーションが作れないのだろうか?
612 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 12:30:05 ] >>611 Unicodeアプリケーションが何を指してるのか知らないが、 俺はutf-8でソースコード統一して書いてるけど正常に動作してるよ。 内部での文字列比較とか問題なく動く。
613 名前:612 mailto:sage [2009/10/09(金) 12:30:54 ] ただし、外部から入力される文字列は全部utf-8に変換してるけど。
614 名前:デフォルトの名無しさん [2009/10/09(金) 12:52:38 ] __wargvが使えないみたいだけど。
615 名前:614 [2009/10/09(金) 14:25:00 ] CommandLineToArgvWを使うことにした。
616 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 15:36:12 ] >>607 入れたd On Demand Installの方はバグがあるらしく途中で止まるな 26.2MBの方を落としてインストールすればOK
617 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 23:03:53 ] おおホントだ。 上で既出だけどパピコ。 TDM's GCC/mingw32 Builds ttp://www.tdragon.net/recentgcc/ NOTICE: The 4.4.1-tdm-2 release is now available. If you were using the first 4.4.1 release, you are urged to upgrade to this new version in order to avoid a bug that caused drastically increased CPU usage in programs compiled with the first version.
618 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 17:26:32 ] ちゃんと測定したわけじゃないんだが、4.3.3より4.4.1-tdm-2の方がかなりコンパイル速くなってる 気がする。 環境が違うんで単純には比較できないけど、wxWidgets2.8.10の全種類(8種類)のライブラリのビルドに 4.3.3の時は12時間近く掛かってたのが、今日、自宅のマシン(もう4年位前のたいしたことないPC)で やってみたら3時間くらいで終わった。
619 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 22:07:09 ] >>618 きみ、前にC::Bのスレにいた子?
620 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 22:17:00 ] >>619 50前だが。
621 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 14:52:05 ] mingw 上でなにか make しようとすると 大抵 libintl.la がとか gettext がとか文句を言われて コンパイルできない gnuwin32.sourceforge.net/packages/gettext.htm ここにバイナリが置いてあるかと思い落としてきてみるも libintl3.dll とかよくわからないファイルが入ってます… これを libintl3.dll -> libintl.la として動かすこと できるでしょうか? sourceからbuildしないと駄目なのでしょうか もしそうだとすると複数の窓環境にインストールするとか 不便すぎる mingwを入れて perl5.8.1以上をmingw上の/usr/bin下にインストールして gettetxt を make して、ようやく目的のソフトに取りかかれるorz
622 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 14:56:45 ] というかmingw のperl は5.6.1でそのままだと gnu のソフトがビルドできないような…
623 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 18:30:37 ] >>621 それを「よくわからないファイル」とか言ってしまう奴がなんで mingw 使ってんの? Developer files や Dependencies も必要。 全部スタティックリンクにしたいならソースからビルド。
624 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 20:23:23 ] msysのパッケージ管理が今ひとつだからね。 fedoraでmingw32のパッケージ入れて、クロス開発する方がいいかも
625 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 01:50:01 ] う、うん……(´・ω・`)
626 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 23:06:33 ] gcc-tdmと、sourceforge.jp/projects/sfnet_mingw-w64/ はどっちがいいのか教えて。 サイズ的には、mingw-w64のほうが多いけどこっちの方が性能上?
627 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 23:10:46 ] >>626 そんなのあるんだー。 前者はTDM/MinGW Installerってやつだよね。 インストーラ.exeの形で配布されているけど、 後者は初めて見た。 これもインストーラだったかい?
628 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 23:14:27 ] mingw-w32-bin_i686-mingw_20091013.zip っていうやつ今落としてるところ。 サイズが200M超えていて、回線遅くて中身がどうなっているか確認できていない。
629 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 23:19:48 ] 書庫形式でTDM/MinGWのサイズ8倍あるから こっち入れれば何でもコンパイルできるんじゃないかとわくわくしてる所。 たとえばffmpegが追加なしで出来たりとか。
630 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:06:43 ] どうせAdaとかFortranとかObjective-Cが入っているだけだろうと予想
631 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:07:00 ] さっさと普通にGCC4 & 64bit対応になれよ。
632 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:19:04 ] MinGW-w64 - for 32 and 64 bit Windows
633 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:20:28 ] >>632 別のプロジェクト作るなってこと。 mingwの公式はここだけだ。 www.mingw.org/
634 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:22:34 ] 本家は、停滞してるからね
635 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 07:21:22 ] そう,だから最近はTDM's branch使う人が増えてるわけで...
636 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 08:02:03 ] >>629 単にビルドされたgccのファイルに stripをかけてないだけだったりして。 ちなみに cc1.exe strip前 約40M strip後 約8M
637 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 10:07:48 ] TDM/MinGWは便利。 いちいちビルドする気力がでない俺には最適。
638 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 01:06:48 ] すんまそん。libgmp-3.dllとlibmpfr.dllどうやったら手に入りますかね。
639 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 02:22:17 ] ttp://sourceforge.net/projects/mingw/files/ ttp://sourceforge.net/projects/mingw/files/GCC%20Version%204/Current%20Release_%20gcc-4.4.0/gmp-4.2.4-mingw32-dll.tar.gz/download ttp://sourceforge.net/projects/mingw/files/GCC%20Version%204/Current%20Release_%20gcc-4.4.0/mpfr-2.4.1-mingw32-dll.tar.gz/download
640 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 19:02:16 ] >>639 thx 助かりました。
641 名前:デフォルトの名無しさん [2009/10/23(金) 00:45:53 ] linux&gcc-4.2.4で下のコードをコンパイル後nmでみると "W"(大文字:デフォルト実装付きweak)となるけど、 cygwin&gcc-4.3.2だと"w"(小文字:デフォルト実装無し weak)になる。4.2->4.3で仕様が変わった? それともPEフォーマットのせいですか? -------------------- __attribute__((weak)) void func(void) {}
642 名前:SgqcXuBDWWHrdWG mailto:6kgk1moeja.@gmail.com [2009/10/23(金) 22:24:58 ] If you do have a choice of surgeon or hospital, ask the surgeon the following questions: What are your qualifications? ,
643 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 10:04:51 ] On some systems, uppercase indicates that a default value has been specified.
644 名前:デフォルトの名無しさん [2009/11/02(月) 03:00:41 ] MinGW g++ 3.4でビルドして作成したライブラリを MinGW g++ 4.4.0でビルドしたソースとリンクして使用できますか?
645 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 08:29:01 ] >>644 丁度Qtでそれに引っ掛かって,某フォーラムでバイナリの互換性がないことを 教えてもらったばかり。 但し,俺のところではTDM's MinGW gcc(g++) 4.4.1で,本家MinGW g++ 3.4.5で ビルドしたライブラリが使えている(完全に大丈夫かどうかは不明)。 本家のg++4.4.0は,本家g++ 3.4.5でビルドしたライブラリが使えない。
646 名前:デフォルトの名無しさん [2009/11/02(月) 15:43:12 ] >>645 情報ありがとうございます。 やっぱり使えないんですね。
647 名前:デフォルトの名無しさん mailto:sage [2009/11/03(火) 02:57:00 ] MinGWでビルドしたdllと、それをダイナミックリンクしているexeの組み合わせが Windows7で動作しない(DLLを読み込めていない?ちなみにXP/VistaではOK)らしいのですが、 Win7との相性についてどこかに情報ありますでしょうか? 自分で試せるのはXPとVistaだけなので状況がさっぱり...
648 名前:デフォルトの名無しさん [2009/11/03(火) 21:10:43 ] He_251110.bz2
649 名前:デフォルトの名無しさん mailto:sage [2009/11/03(火) 21:35:50 ] ttp://www1.axfc.net/uploader/He/so/251110
650 名前:デフォルトの名無しさん mailto:sage [2009/11/03(火) 21:45:52 ] export PATH=$PATH:/mingw/bin:/mingw32/bin:/usr/local/bin:$HOME/local/bin export GCC_VER="4.4.0" export LIBRARY_PATH=/mingw/lib:/mingw32/lib:/mingw/lib/gcc/mingw32/${GCC_VER}:/usr/local/lib:$HOME/local/lib export LD_LIBRARY_PATH=$LIBRARY_PATH export LD_RUN_PATH=$LIBRARY_PATH export INCLUDE_PATH=/mingw/include:/mingw32/include:/mingw/lib/gcc/mingw32/${GCC_VER}/include:/usr/local/include:$HOME/local/include export C_INCLUDE_PATH=$INCLUDE_PATH export CPLUS_INCLUDE_PATH=$INCLUDE_PATH コンパイルに必要な環境変数を.bashrcにかいたのだが あと何か定義しておいたらいい環境変数はある?
651 名前:デフォルトの名無しさん [2009/11/03(火) 21:55:29 ] INCLUDE_PATHにlibのpathって入れるんだっけ
652 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 09:54:35 ] >>651 gcc3系統とgcc4系統ではディレクトリ構成が変わっていて,gcc4系統の場合はlibの奥にもヘッダファイルが あるので,入れる必要があります。
653 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 23:32:49 ] MinGW使うなら、PATH以外の環境変数は設定いらなくね?
654 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 00:01:10 ] 友達がプログラミング勉強したいっていってるんだけどやっぱ 進める環境としてはdev c++ とmingwがいいかな
655 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 00:03:49 ] VC2008EEじゃねーのか?
656 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 00:11:45 ] >>654 単にプログラミングの勉強ならば、 WindowsでVisualBasicが面倒なくて鉄板でしょ。 Unixの世界は、環境構築とツールの使用法の習得だけで 挫折する人がいるくらいのカオスな世界だから、 できれば知らない方が幸せよ。
657 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 00:34:09 ] >>656 > 単にプログラミングの勉強 変ったジャンルですね。
658 名前:654 mailto:sage [2009/11/07(土) 04:16:13 ] >>656 僕的にはdev c++のほうがインストールが早いし、設定、認証が要らないから こっちのほうが簡単だと思うんですけどね。やっぱVCとかVBですかね
659 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 08:45:22 ] Dev-C++はTDM-MinGWと組み合わせて俺もインストールしてあるけど 何と言ってもメニューが全部英語なのと、gccそのものがオプションが複雑で 決して初心者向けではないという事情を考えてVCを推している でも自分でその壁を乗り越えられる人であればgccの方が標準準拠度は 高い
660 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 13:56:55 ] お勉強ならLL言語でいいでしょ。 CUIベースでC, C++なんてやってもイベント丼の概念が理解できなくなる。
661 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 14:22:10 ] つまり Tcl/Tk やっとけということだな
662 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 00:30:47 ] >>659 日本語化されたのが、確か2つくらいあったはず。sけいし氏のヤツは割りと有名 かと思ってたんだがそうでもないのか。 一時VC2003と交互で使ってたけど、x64環境に移行してからはVC2008しかt これ以上はスレチだな。
663 名前:デフォルトの名無しさん [2009/11/10(火) 00:33:10 ] Dev-c++ と一緒に入ってくる gcc3.4.2 を TDM-MinGW gcc4.4.1 に入れ替えたのですが、 gcc3.4.2 ・iostreamをincludeするだけで、EXIT_SUCCESSマクロもatof()関数も使用できた ・iostreamをincludeするだけで、clock()関数が使用できた gcc4.4.1 ・cstdlibをincludeしないと、EXIT_SUCCESSマクロもatof()も使用できない ・ctimeをincludeしないと、clock()関数が使用できない という挙動になります。 どっちが正しいんですか?
664 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 00:38:09 ] >>663 4.4.1 の方がより規格に沿っていると言える。
665 名前:デフォルトの名無しさん mailto:sage [2009/11/20(金) 23:46:28 ] MinGWで日本語を表示するにはどうすればいいんですかー?(>_<)
666 名前:デフォルトの名無しさん mailto:sage [2009/11/20(金) 23:49:25 ] >>665 -finput-charset=cp932 -fexec-charset=cp932 をコンパイル時に付ける するとEUCに変換してからコンパイルしてくれるのでダメ文字の問題は起きない
667 名前:デフォルトの名無しさん mailto:sage [2009/11/20(金) 23:51:16 ] UTF-8
668 名前:デフォルトの名無しさん mailto:sage [2009/11/21(土) 11:09:43 ] >>666 それ、本家MinGWのgcc4系だと効かない。cc1.exe、cc1plus.exeにやlibiconvがリンクされてないんだそうだ。 gcc3.4.5のcc1とcc1plusで上書きすればOKという情報もあるけど、俺のところじゃダメだった。 TDM's MinGW gcc4.4.1なら大丈夫。 >>667 もちろんそれでもOK。ただ、これまでに書きためた大量のSHIFT_JISのソースを使ったり、 3rd Partyのヘッダーファイル(例えば何等かのIOボードにボードに付いてくるライブラリの ヘッダーファイル)を使ったり、他のコンパイラと共用するソースファイルを使ったり する場合にはそうも行かない場合もある。
669 名前:デフォルトの名無しさん mailto:sage [2009/11/21(土) 15:34:19 ] 665ですが、IDEの起動オプションをUTF-8にしたら表示されました。 お騒がせしました。
670 名前:デフォルトの名無しさん mailto:sage [2009/11/21(土) 16:17:35 ] >>668 Windowsのシステムロケールを日本語から英語に変更するといい
671 名前:デフォルトの名無しさん mailto:sage [2009/11/21(土) 19:16:57 ] >>668 既にバイナリの gcc 4 がある状況なら gcc 4 をビルドするのはたやすい。 libiconv 有効にしてビルドしれ
672 名前:668 mailto:sage [2009/11/22(日) 00:12:22 ] >>670 レスサンクスなんだが... > Windowsのシステムロケールを日本語から英語に変更するといい これは >>668 に書いたうちの、どのことについて言ってるの? >>671 > 既にバイナリの gcc 4 がある状況なら > gcc 4 をビルドするのはたやすい。 > libiconv 有効にしてビルドしれ あぁそれでいいのか。アリガト。 ただ最近ビルドしてばかりしていてチト疲れた。 本家MinGWの最新バイナリインストーラー(5.1.6)のgccは4.4.0でなかったり、 libiconvがリンクされていない抜けがあったり、更新が遅かったりで、 TDM版の方が信頼できると感じてる。 TDM版の最初の4.4.1でCPU利用率が100%近くになってしまう問題が発覚した 時もHPの上の方に「Warning!」としてちゃんと説明が書いてあったし、修正の 対応も比較的早かったしね。 それと試してないんだけど、>>556 の問題も気になる(TDM版固有の問題なのか、 gccのバージョンの問題なのか) 。 とりあえずTDM版4.4.1で問題ないので、俺は当面これで行こうと思う。
673 名前:デフォルトの名無しさん mailto:sage [2009/11/22(日) 09:33:54 ] >>672 インストーラが 4.4.0 を入れないのは怠慢ではなくて、そういう選択をしたのだと思う。 まだ実績が不充分ってこともあるし、互換性の問題もある。 エンドユーザーにはなるべく枯れたバージョンを提供する方がいいという考え方はあり得る。 libiconv のリンクも、世界全体から見れば案外少ない状況でしか必要としないし、 そもそもソースコードにマルチバイト文字列をハードコーディングするのは悪いスタイルだよ。
674 名前:デフォルトの名無しさん mailto:sage [2009/11/22(日) 09:41:23 ] よがりごえ
675 名前:デフォルトの名無しさん mailto:sage [2009/11/22(日) 10:55:24 ] >>673 本家擁護も結構だが、 > インストーラが 4.4.0 を入れないのは怠慢ではなくて、そういう選択をしたのだと思う。 > まだ実績が不充分ってこともあるし、互換性の問題もある。 そんなに4.4.0に不安があるのなら、gccだけ独立して正式リリースにしなければいいのに。 そもそも本家はgcc3系とgcc4系でバイナリの互換性がなくなってしまった。 ディレクトリ構成も大きく変更してしまった。 これって良いことなのか? > エンドユーザーにはなるべく枯れたバージョンを提供する方がいいという考え方はあり得る。 エンドユーザーが自分で選択できるようにすればよいだけの話し。 > libiconv のリンクも、世界全体から見れば案外少ない状況でしか必要としないし、 そう。そういう少数派への配慮が足りない所が問題。 > そもそもソースコードにマルチバイト文字列をハードコーディングするのは悪いスタイルだよ。 余計なお世話。そんなのは状況次第。 日本人の工場オペレーターしか使わないことがわかっているソフトだったら。 ハードコーディングしてしまった方が、短い工数で作れる。 多国語対応する必要があるソフトなら、リソースDLL使うとか、独自のライブラリで言語設定に あわせてファイルから文字列を読込むとかしてる。
676 名前:デフォルトの名無しさん mailto:sage [2009/11/22(日) 13:14:30 ] >>675 > そんなに4.4.0に不安があるのなら、gccだけ独立して正式リリースにしなければいいのに。 > エンドユーザーが自分で選択できるようにすればよいだけの話し。 大半のユーザーはとりあえずバージョンナンバーが大きい方を選択してしまうよ。 エンドユーザーってのはそんなもんだろうが。 > そもそも本家はgcc3系とgcc4系でバイナリの互換性がなくなってしまった。 > ディレクトリ構成も大きく変更してしまった。 バイナリ互換性が維持されればそれに越したことはないんだけど、 これは根本的な設計から大幅に変わってしまったので、仕方ないとしか… > そう。そういう少数派への配慮が足りない所が問題。 > 余計なお世話。そんなのは状況次第。 配慮したらその分だけファイルサイズも増える。 少数派に配慮したら多数派に多少なりとも不便を強いるじゃないか。 ファイルサイズ程度なら些細な問題だけど、依存ライブラリが増えると管理が面倒なんじゃね? これは開発リソースの割り振りの問題だろう。 それに意見する方が余計なお世話ってもんだろ。 開発状況は libiconv をリンクしたくない状況だったんだろ。
677 名前:デフォルトの名無しさん [2009/11/22(日) 15:55:37 ] >>676 > 大半のユーザーはとりあえずバージョンナンバーが大きい方を選択してしまうよ。 > エンドユーザーってのはそんなもんだろうが。 何が言いたいのかわからん、俺には>>673 に書いてあることと矛盾してるようにしか 受け取れない。悪いがちゃんと説明してくれないか? > バイナリ互換性が維持されればそれに越したことはないんだけど、 > これは根本的な設計から大幅に変わってしまったので、仕方ないとしか… TDM版gcc4.4.1は本家のgcc3.4.5とバイナリレベルの互換性を保ってるよ。 > これは開発リソースの割り振りの問題だろう。 > それに意見する方が余計なお世話ってもんだろ。 > 開発状況は libiconv をリンクしたくない状況だったんだろ。 ファイルサイズの話はかなり無理矢理感があるなあぁ。 で。本家のgcc4.4.0の説明書き(gcc-4.4.0-mingw32-notes.txt)には、必要ファイルだけ 分割してダウンロードする場合、 > libiconv Runtime [REQUIRED] > libiconv-1.13-mingw32-dll-2.tar.gz と書いてあるんだが(つまり必須と言うこと)。リンクを怠ったか、ドキュメントの修正を 怠ったかのどっちかだとしか思えない。どっちみち瑕疵であることに変わりはない。 で、TDM氏のHPには、 > TDM-GCC is not formally affiliated with or endorsed by the MinGW project > (although several MinGW team members make use of it) なんて書いてある。それなら性格がきっちりしていそうなTDM氏に本家のチームに 加わってもらえば、もっと良くなると思うんだが...