1 名前:デフォルトの名無しさん [2006/04/18(火) 19:57:04 ] 史上最強かもしれないツール、GCC(GNU Compiler Collection)について語るスレ。 GNU本家のGCCページ gcc.gnu.org/ Binutils - Collection of binary utilities ←これも必要だぞ。 www.gnu.org/directory/GNU/binutils.html GNU Binutils sources.redhat.com/binutils/ GCC online documentation gcc.gnu.org/onlinedocs/ Installing GCC gcc.gnu.org/install/ GCC Timeline gcc.gnu.org/releases.html#timeline Calendar gcc.gnu.org/develop.html#timeline
48 名前:デフォルトの名無しさん mailto:sage [2006/05/07(日) 13:46:39 ] なんかガベコレに命を捧げる奴いるけど、 ガベコレがそれほど重要だと思わないのは気のせいですか?
49 名前:デフォルトの名無しさん mailto:sage [2006/05/07(日) 13:58:14 ] まあ、価値観の違いってやつだ。
50 名前:デフォルトの名無しさん mailto:sage [2006/05/07(日) 17:37:25 ] バックエンド開発者にとって、開発対象それ自体を 利用者に気にされるのは既に負け。
51 名前:デフォルトの名無しさん mailto:sage [2006/05/07(日) 17:57:30 ] >>50 ユーザがバックエンドの存在を忘れてると、 今度は「たまには思い出して下さい」と言うくせに
52 名前:デフォルトの名無しさん mailto:sage [2006/05/08(月) 11:32:39 ] ボクのこと忘れてください
53 名前:デフォルトの名無しさん mailto:sage [2006/05/08(月) 12:38:27 ] うぐぅ
54 名前:デフォルトの名無しさん [2006/05/13(土) 22:51:13 ] あのソニーのPS3にはLinuxが搭載されるそうで、 この、GCC板も生き返らねば。
55 名前:デフォルトの名無しさん mailto:sage [2006/05/14(日) 00:09:40 ] LinuxでもWinCEでもΣOSでも何でもいいから早よゲーム作れや
56 名前:デフォルトの名無しさん mailto:sage [2006/05/14(日) 20:45:51 ] Linuxとか関係ないっしょ PS2もDSもPSPも基本はGCCだよ 豊富なターゲットCPUのおかげだな
57 名前:デフォルトの名無しさん mailto:sage [2006/05/14(日) 21:00:42 ] Dwarf2 EHって何ですか?教えてエロイ人!
58 名前:デフォルトの名無しさん mailto:sage [2006/05/14(日) 21:02:20 ] >>57 テーブル引き型の例外処理機構をそう言うらしい。 なんでそんな紛らわしい呼び方するのかは知らない。
59 名前:デフォルトの名無しさん mailto:sage [2006/05/14(日) 21:10:17 ] dwarf.freestandards.org/Home.php ftp://ftp.freestandards.org/pub/dwarf/dwarf-2.0.0.pdf
60 名前:デフォルトの名無しさん mailto:sage [2006/05/15(月) 23:05:00 ] sunosのライブラリはそのままlinuxで使えるものですか?
61 名前:デフォルトの名無しさん mailto:sage [2006/05/15(月) 23:23:12 ] 使えないよ。Linux は SysV の ABI に則ってないし。
62 名前:デフォルトの名無しさん mailto:sage [2006/05/18(木) 15:55:09 ] gcc version 3.4.5 (mingw special) 使ってるんだけど、 グローバルな変数とか、static な変数とかだと、 16の倍数のサイズを確保するようなんだけど、なんでだ? int hoge; → .comm _hoge, 16 # 4 static int hoge; → .lcomm _hoge,16 こんな感じ。 Linux とかだったら、4バイトの変数なら4バイトしか確保しないよね?
63 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 11:14:06 ] >>62 16バイトアラインで効率上げる最適化が適用されているんじゃない? 別にOSに関係ない話だと思うけど。 #Linuxでは16バイトアラインが意味がないのかもしれないしそうでないかもしれない。
64 名前:デフォルトの名無しさん [2006/05/19(金) 12:20:04 ] age
65 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 20:08:19 ] template < typename T > class A { }; typedef class A<int> X; class B { friend X; }; これ可能にならんのかね。
66 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 20:15:00 ] 質問させてください。Cの初心者歓迎のスレから誘導されました。 C言語でコンパイラでGCCを通そうとすると コンパイラは…Cygwinなんですが…弱いですか? 後、gccを通そうとすると /usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/ld: cannot open output file a.exe: Permission denied collect2: ld returned 1 exit status ってエラーメッセージが出るんですが このメッセージって調べてみたんですが位置がおかしい ってことですよね? 別に変なところはいじってないつもりなんですが… いきなりこんな風になることってありますか?
67 名前:66 [2006/05/19(金) 20:18:31 ] ごめんなさい。 上なんですが変な文章になってしまいました。 gccを通そうとすると /usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/ld: cannot open output file a.exe: Permission denied collect2: ld returned 1 exit status ってエラーメッセージが出るんですが このメッセージって調べてみたんですが位置がおかしい ってことですよね? 別に変なところはいじってないつもりなんですが… いきなりこんな風になることってありますか? って言うのが聞きたくて…すいません。
68 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 20:18:51 ] >>66 作業ディレクトリのパーミッションを確認せよ。 ここで質問するならコマンドラインを貼れ。
69 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 20:22:34 ] >>68 すいません。作業パーミッションですか? 調べて確認してみます。 コマンドラインですか?
70 名前:69 [2006/05/19(金) 20:25:48 ] すいません。途中で書き込んでしまいました。 コマンドラインは… ./cygwin/home/ユーザー名/ だと思うんですが…
71 名前:65 mailto:sage [2006/05/19(金) 20:40:46 ] というか、GCC(3.4.4)は、 テンプレート引数のフレンド自体サポートしてないみたいね。 template < typename T > class CTest { friendT; }; >>70 >>68 は作業ディレクトリで $ls -ld . した結果を貼れって言ってるんだと思う。
72 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 20:50:47 ] >>71 そうだったんですか? ls -ldって入れると drwxrwx---+ 5 ユーザー名 Usersって出たんですが コレで良いんでしょうか?
73 名前:72 [2006/05/19(金) 20:53:07 ] すいません。インストールしなおしたら 自己解決しました。 何が悪かったのかは分りませんが… スレを汚してすいません。
74 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 22:12:45 ] >>65 ,71 > friend X; > friend T; gcc が対応してないんじゃなくて、規格で認められてないんじゃない? www.comeaucomputing.com/techtalk/templates/#friendclassT
75 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 09:23:39 ] >>65 のtypedef-nameの方は、 template aliasesが、c++0xに入れば可能になるんじゃないか? ってスレ違いだよな…
76 名前:デフォルトの名無しさん mailto:sage [2006/05/22(月) 01:12:18 ] gcovについて質問. 関数テンプレートを含むC++ソースコードをカバレッジにかけると, インスタンス化されない関数テンプレートがカバレッジの統計にまったく入らない ("executed" でも "never executed" でもなく "no code" 扱いになる) んだけど,ツール側でどうにかする手段ってない? テンプレートを多用するコードのカバレッジ測定が非常に面倒なんだが.
77 名前:76 mailto:sage [2006/05/22(月) 01:20:55 ] すまん環境を書き忘れた. version: gcc-4.0.3 と 同梱のgcov コンパイルオプション: gcov的に普通に -O0 -fprofile-arcs -ftest-coverage (他に -g -Wall などあるが省略)
78 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 13:44:43 ] GCC 4.1.1
79 名前:デフォルトの名無しさん [2006/05/29(月) 01:59:51 ] 3.4.6 age
80 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 03:42:00 ] >>79 3月に出たのになぜ今頃また。。。
81 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 06:12:33 ] 3.x系は2.95みたいにしぶとく残るよ。あと10年ぐらい。
82 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 08:44:18 ] >>80 announce が昨日きてたよ。
83 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 08:57:29 ] なんかの手違い? gcc.gnu.org/gcc-3.4/ (日付がMay 26, 2006) GCC 3.4.6 March 6, 2006 ftp://ftp.gnu.org/gnu/gcc gcc-3.4.6 2006年03月10日 12:15:00 ftp.gnu.orgにも3.4.7とか3.4.6.1はないし。
84 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 09:50:20 ] >>83 gcc.gnu.org/ml/gcc/2006-05/msg00618.html
85 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 03:28:27 ] GNUって大したことないな
86 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 04:19:12 ] ぎゃふん
87 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 20:15:54 ] ぐっしっし
88 名前:デフォルトの名無しさん mailto:sage [2006/06/19(月) 01:36:43 ] gcc4.1のSSP使ってみた人いる? どんな感じ?
89 名前:デフォルトの名無しさん [2006/06/19(月) 17:30:20 ] openmpはいつになったら使えるようになるの?
90 名前:デフォルトの名無しさん mailto:sage [2006/06/19(月) 21:08:38 ] 89が実装し終わったら
91 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 00:11:36 ] Tree SSA ってただの SSA とどこがちがうの? GIMPLE でやるから Tree ってつけたの?
92 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 00:19:49 ] いや自動ベクトル化機構ついてるからじゃね?
93 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 00:26:19 ] 木構造にしてんじゃん。 gcc.fyxm.net/summit/2003/Tree%20SSA%20-%20A%20New%20optimization%20infrastructure.pdf
94 名前:デフォルトの名無しさん [2006/06/20(火) 13:46:30 ] RedHat 8.0 (gcc 3.2) からRedHat WS4 (gcc 3.4)に意向しようとしてるのですが、以下でレポートされているバグに 引っかかってコンパイルが出来ません。 ttp://gcc.gnu.org/bugzilla/show_bug.cgi?id=16245 自分のコードの例では以下のようなコードがコンパイルできません。 void hoge (char *&s); unsigned char *uc; hoge((char*)uc); 4.0で直したとあるのですが、リグレッションを3.4ブランチで直さないで次のメジャーバージョンで 直すなんてひどすぎ。 一応RedHatのbugzillaに投げといたのですが、直してくれる可能性 ありますかねえ?
95 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 14:45:38 ] >>94 > void hoge (char *s); の間違い?
96 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 14:53:12 ] >>95 ハァ?
97 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 15:28:33 ] >>94 hoge(*(char**)&uc);
98 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 20:23:46 ] >>94 rvalue が (non-const) lvalue reference に変換できないのは 正しい C++ の挙動だよ
99 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 21:49:45 ] >>94 そもそも、そのレポートとは別問題じゃ?
100 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 22:31:04 ] >>97 解決しました。ありがとうございます。 >>94 そんな気もしてきましたね。良く見てみたらエラーメッセージの2行目は同じでしたが 私の場合1行目はありません。失礼しました。 どなたかgcc 4.0に上のを通していただけますか? それでこれと同じエラーが出るのでしたら私の誤解でした。 castandref.cc: In function `int main()': castandref.cc:24: error: invalid initialization of non-const reference of type 'char*&' from \ a temporary of type 'char*' castandref.cc:16: error: in passing argument 1 of `void x(char*&)'
101 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 22:58:03 ] 暗黙の変換 一時オブジェクト
102 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 23:12:08 ] >>100 日本人のレベルが底辺だと解るような馬鹿な 質問をするな。 お前には、2つの選択の余地を与えよう 1、今すぐ首を吊って市ね 2、日本から出て行け 期限は明日正午までな
103 名前:100 mailto:sage [2006/06/20(火) 23:34:40 ] >>102 2.は実行いたしました。 日本にはいません。 1.は、実行したら2が出来なくなるのでしませんでした。
104 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 04:03:06 ] >>94 そのコードとは関係なかったわけだが、リンク貼ってあるバグは ほんとにリグレッションなのか?特にそんな記述は見当たらない。
105 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 04:04:44 ] >>100 4.0 での結果を見るまでも無く不正なコードだから、コードのほう直せよ。
106 名前:94 mailto:sage [2006/06/21(水) 08:11:59 ] >>104 あの〜〜、調べてみたら3.2でも2.9でもエラーになりました。。。。 自分の コードと同じ現象でそれがエラーになったので勝手にリグレッションと思ったという オチでした。 ほんとに首つってきます。
107 名前:デフォルトの名無しさん [2006/06/22(木) 04:09:11 ] バイナリで持ってるgccとgasのビルド時のconfigureオプションを知りたいのですが、 どうすればいいのでしょうか。
108 名前:デフォルトの名無しさん mailto:sage [2006/06/22(木) 04:11:45 ] gcc -v
109 名前:107 mailto:sage [2006/06/22(木) 04:25:18 ] >>108 ありがとうございます。 gcc --versionとgcc -vは同じ出力だろうと思ってました…。 gnu assemblerの方はどうすればいいか分かります? binutilsのconfigureオプションを知りたいです。
110 名前:デフォルトの名無しさん mailto:sage [2006/06/22(木) 04:47:51 ] gccのオプションで通ると思うけど。 エラーが出たら、あきらめるとか。
111 名前:107 mailto:sage [2006/06/22(木) 05:12:08 ] stringsコマンドでアセンブラの中身を見たけど、 それらしい記述がないので無理なのかもしれませんね。 クロスコンパイラ環境を作りたいのですが、 自分でビルドしたコンパイラは使えるけど、アセンブラは使えなくて、 配布されているコンパイラは使えないけど、アセンブラは使える という、困った状況なもので…。 使えるもの同士組み合わせるのが良いのでしょうけど、気持ち悪いですし。 いろいろためして見ることにします。
112 名前:デフォルトの名無しさん mailto:sage [2006/06/22(木) 05:20:34 ] ターゲットによるけど、クロスなら検索かけると作り方書いてるところが出てくると思うよ。
113 名前:デフォルトの名無しさん mailto:sage [2006/06/22(木) 07:37:07 ] >>94 これでも行けると思う。(>>97 と同じになるはず) hoge((char*&)uc); もちろんreinterpret_castね。
114 名前:デフォルトの名無しさん mailto:sage [2006/06/22(木) 10:45:08 ] 、、、、、 直感的に理解できないなら、参照なんて使わなけりゃいいのに、、、
115 名前:デフォルトの名無しさん mailto:sage [2006/06/22(木) 18:25:12 ] >>111 どんなターゲットだ? なるべくでいい、情報出してみれ。 arm の thumb 問題だったりしてな!
116 名前:デフォルトの名無しさん [2006/06/25(日) 20:27:56 ] Windows上でgccを使用したいのですが、どの方法がお勧めでしょうか? ちょっと調べてみたところでは、下記のような方法があるようですが ・cygwin ・XonWindows ・coLinux ・vmware ・Xen
117 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 20:33:57 ] >>116 cygwin
118 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 20:38:45 ] >>116 MinGWが抜けている。 もっとも、俺もcygwinを勧めるけど。
119 名前:116 mailto:sage [2006/06/25(日) 20:40:17 ] >>117 ありがとうございます。cygwinお勧めですか。
120 名前:116 mailto:sage [2006/06/25(日) 20:41:32 ] >>118 MinGWっていうのもあるんですか。いろいろあるんですね。
121 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 20:52:30 ] Interixも抜けている。 それにしてもVMWareはUnix/Linuxでgccを動かすのと変わらないと思うのだがいいのか?
122 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 21:18:07 ] gccを使いたいだけならMinGWでいいんじゃね? cygwinはインストールに時間が掛かるし。
123 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 21:27:36 ] VMWare に Windows いれてそこで Cygwin つかうんだろ?
124 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 21:31:41 ] >>123 うわーーーー、すげーーーー そんなこと思いもつかなかったよ。 あんた天才だ。
125 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 21:34:46 ] >>123 ばかだな。 VMWare+Linux+Wine+Cygwin
126 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 21:44:29 ] おまえらそこまで行ったら VMware + knoppix + qemu + knoppix + ・・・ + Wine + Cygwin も考えとくべきなのか?
127 名前:116 mailto:sage [2006/06/25(日) 21:52:29 ] >>121-126 ありがとうございます。cygwinかMinGWで行こうと思います。 どうかもう新しい方法が出てきませんように。orz
128 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 22:00:48 ] USBのぞき見防止フード japanese.engadget.com/2006/06/22/usb-immersion-hood/
129 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 22:03:18 ] >>127 大丈夫。 その2つが最有力候補で、ほかはあまり実用的だったり現実的だったりしないから。
130 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 22:55:24 ] >>127 単にgccを使いたいというのであれば、MinGWの方をおすすめします。 Cygwin版では、アプリの動作にcygwin1.dllというファイルが必要で(そうしない こともできるが、デフォルトでは必要)、他のPCで動かそうとするときには、 そのファイルが必要です。 また、他のCygwin版gccで作られたアプリが動いていると、自分が作ったものが 動かないなども問題が発生することがあります。 なお、MinGWのインストールは、次のページが参考になります。 ttp://www2.atwiki.jp/ccw/pages/5.html
131 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 22:58:46 ] つうか、VS2005が実質フリーなんだしそれ使えよ
132 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:00:28 ] つうか、gccが本質フリーなんだしそれ使えよ
133 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:03:08 ] >>130 -mno-cygwin があるから cygwin でいいよ。
134 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:06:56 ] いや、MinGWの方がいい
135 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:09:05 ] cygwin で -mno-cygwin するのと、 MinGW では何が違うのか教えてください。
136 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:14:32 ] >>135 それって、cygwinのgccとMinGWのgccの違いを調べたほうがいいんじゃないの?
137 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:24:45 ] >>131 C++標準への準拠度が甘いのが難点
138 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:30:56 ] >>135 その質問はスレ違い。(というか、元質問もスレ違いっぽいんだが・・・) cygwin + mingwn + gcc 相談室 Part2 pc8.2ch.net/test/read.cgi/tech/1126103347/
139 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:32:40 ] >>134 ねぇ何が違うのさ?
140 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:33:45 ] >>137 詳しく VC7以降はかなり規格準拠を頑張ってる印象を持ってたんだが
141 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:38:07 ] Cygwin は自分のとこだけでいろいろやるにはいいが、社内ツールみたいに 配布を考えるといろいろとメンドイし cygwin1.dll の GPL 問題もあるんで 俺は MinGW だな。GCC の最新のソースからも普通にビルドできるし。
142 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:39:12 ] >>139 うざいなお前。 >>138 のスレと過去スレ全部読んでから出直せ。
143 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:53:45 ] >>140 137ではないが、以前 SFINAE 回りで挙動がおかしかったことがある。 他にも two-phase name lookup まわりもアヤしいんではなかったっけ。 というか、VC7 はダメだろう。7.1 でかなりまともになった印象。
144 名前:116 mailto:sage [2006/06/26(月) 00:22:26 ] >>130 おお、とても参考になりそうなサイトですね、ありがとうございます。 >>131 実はリナザウも使っているので、両方で動く環境が欲しかったんです。 >>132 だから、gccを使うための方法を探しているんですが??? >>133 そのオプションを使うと130さんが言っているような問題が緩和されるんですね、調べてみます。 もっとも、個人で使うプログラムで、他人に配布とかするわけではないので、 cygwinでも特に問題はないとは思うのですが。
145 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 00:36:51 ] >>144 >実はリナザウも使っているので、両方で動く環境が欲しかったんです。 先にこれ言いましょう。これならcygwinしかありません。
146 名前:116 mailto:sage [2006/06/26(月) 00:47:45 ] >>145 そうなんですか、じゃあcygwinにします。ありがとうございました。
147 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 00:49:40 ] >>144 > だから、gccを使うための方法を探しているんですが??? ネタに糞レスしている場合かw
148 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 00:59:46 ] while(1){ neta(magi); res(warai); }