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
214 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 08:58:44 ] >>212 ちげーよ ある仮定を1つ言ってないだけさ
215 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 09:10:12 ] >>214 ツマンネ
216 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 09:14:20 ] >>210 そのとおり。>>186 の時点では、マップファイルと言う言葉を知らなくてもおかしくない。 >>190 の言う「聞く」とは>>189 の 「マップファイルとはリンカースクリプトのことでしょうか?」のことだと俺は思う。
217 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 09:47:56 ] CGGって時々粘着が沸いて荒れるよね。 まあ、ある仮定を一つ言ってないだけなんだが。
218 名前:デフォルトの名無しさん [2006/07/17(月) 09:50:45 ] >>216 だったらそれも無用な煽りに過ぎない。 マップファイルとリンカスクリプトの異同を調べてどうするというのだ? それが別物だと解れば>>186 の質問に直接の答えがでるというのか?もちろん出るわけではないのだ。 >>190 はそんなことに拘ってるというわけだ。 >>189 でとりあえずマップファイルを調べるとの結論が出てるのだから、 マップファイルとリンカスクリプトが同じなのか違うのかだけを対象に調査する必要なんかないのだよ。 マップファイルについて調べる段階でリンカスクリプトとは別物だということが解るのだから。 それで誤解したままであれば、それは本人の責任だというだけだ。
219 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 10:11:36 ] > それが別物だと解れば>>186 の質問に直接の答えがでるというのか?もちろん出るわけではないのだ。 そりゃそうだ。 すると190は別にマップファイルとリンカスクリプトの異同だけを調べろといったのではなく、 俺の推測だが単に一般論として、自分で調べると同時に掲示板で人に聞くなと言いたかったのではないかと思う。
220 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 10:32:34 ] しかしなんだな、リンクマップを読むのに必要な知識は色々あるんだけど… がんばって読めるようになって欲しいものである。 その一行煽りが何を意図してたかに関係なく、知らないって事実は変わらないからな。
221 名前:209 mailto:sage [2006/07/17(月) 10:43:54 ] 考えてないってんならそれでいいよ、がんばって後付けしなくても
222 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 12:27:00 ] っていうかさ、なんでマップファイルごときを知らなかった奴が 偉そうなの?それがわからん。 それとも、別のキチガイが暴れてるだけ?
223 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 12:29:09 ] >>221 おまえっていつもとんちんかんなことばかり言ってるのなw
224 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 12:30:39 ] >>222 実際におまえより偉いからだろ
225 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 12:51:39 ] >>222 >それとも、別のキチガイが暴れてるだけ? 最初からそうだよ。気付け。
226 名前:デフォルトの名無しさん [2006/07/17(月) 13:05:11 ] お前ら暇だね
227 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 13:37:02 ] >>223 レス番を=で結んで勝ち誇るタイプ
228 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 13:47:20 ] >>223 =>>227
229 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 16:07:45 ] おまえら…外はいい天気だぞ。たまの休日くらい遊びに行け
230 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 16:40:14 ] >>229 がどこらへんに住んでるかバレバレな件について。 weather.yahoo.co.jp/weather/
231 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 17:26:20 ] ワロス
232 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 21:56:57 ] Mingwのバイナリをインストールしたらインストールしたディレクトリ から相対的にたどってライブラリとかインクルードファイルとか探してくれるよね。 ソースからビルドした場合には絶対パスで探してるっぽいんだが、これはなんで? 適当なパッチとかあるの?
233 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 22:24:43 ] make option or .configure option
234 名前:デフォルトの名無しさん mailto:sage [2006/07/20(木) 01:06:21 ] いつのまに printf("%08x", (L"ホゲホゲ")[0]); が正しく表示されるようになったんだね
235 名前:デフォルトの名無しさん mailto:sage [2006/07/20(木) 08:16:18 ] んなもん、昔からprintf("%s", "printf(\"%08x\", (L\"ホゲホゲ\")[0]);");で表示できるだろ。
236 名前:デフォルトの名無しさん mailto:sage [2006/07/20(木) 15:40:11 ] 3回まわって「わん」って言ってみな 「さんかいまわってわん!」
237 名前:232 mailto:sage [2006/07/20(木) 19:49:24 ] >>233 わかった。configureのときに--enable-win32-registryをつければいいんだな。
238 名前:デフォルトの名無しさん mailto:sage [2006/07/23(日) 22:57:53 ] linuxだとsizeof(wchar_t)が4だった やる気なくした...
239 名前:デフォルトの名無しさん mailto:sage [2006/07/23(日) 23:05:36 ] ? 4バイトじゃないと足りないと思うが…
240 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:15:24 ] -fshort-wcharにするとリテラルもshortになるのか でもlibraryは4bytesだよなあ・・・ うわあ使えねえ
241 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:28:25 ] はぁ、何がしたいんだ?
242 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:29:40 ] 釣りだろ
243 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:30:00 ] まさか-fshort-wcharでlibstdc++ビルドするのか? 勘弁してくれよ・・・ はぁ・・・
244 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:42:31 ] 一人言だな
245 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:45:46 ] まぁ勝手に使えないと思っとけばいいんじゃないか。 困るのは俺らじゃないし。
246 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:57:54 ] こりゃ参った、誰も使ってねえなこれは そうそういに手を引いたほうがよさそう しかしタチわるいなあ
247 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:59:14 ] ここはお前の日記帳じゃねぇぞw
248 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 01:30:00 ] 逆に言えば英米人のプログラマだって、 初めてUTC-2やらUTF-16やらを使う羽目になったときの感想はそんなだったと思うよ。 そこは慣れるしかない。
249 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 01:42:32 ] 象形文字のせいでやたら文字がいっぱいある言語だと思われてるからなぁ
250 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 03:11:37 ] まともに多言語やろうとすると、4Byteは必要なんじゃないかな。 2Byteじゃ可変か、モード切替になる。
251 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 03:37:35 ] 流石に UCS4 くらいは知っていると思いたいけど…
252 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 07:42:36 ] >>251 ちげーよ ある仮定を1つ言ってないだけさ
253 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 08:41:29 ] 聞きたくない
254 名前:デフォルトの名無しさん [2006/07/24(月) 09:30:07 ] 聞く価値も無い
255 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 20:27:40 ] このwchar_tへのこだわり・・・cannaの作者? なわけないよな
256 名前:デフォルトの名無しさん mailto:sage [2006/07/25(火) 07:17:21 ] wchar_tなんぞ使うかボケ
257 名前:デフォルトの名無しさん [2006/07/27(木) 16:08:40 ] 初心者でかつ、少しスレッドが違うかも知れないですが、 Windows XPのcygwinにてgdbでデバッグを行っています。 (GNU gdb 6.3.50_2004-12-28) watchコマンドでグローバル変数のwatchはできたのですが、 watchコマンドにより関数内の変数(ちなみにstatic変数です)を watchする方法が分かりません。 これはそもそも、できないことなのでしょうか? もし方法があるなら教えていただきたいです。
258 名前:デフォルトの名無しさん mailto:sage [2006/07/27(木) 16:39:07 ] 関数のあるところまで実行する ヒント:スコープ
259 名前:デフォルトの名無しさん [2006/07/27(木) 16:58:32 ] >> 258 watch 関数名::変数名 でwatchすることができました。 どうもありがとうございました。
260 名前:デフォルトの名無しさん [2006/08/09(水) 02:21:09 ] 全く初心者でわからないので教えてください。 Cygwinで $ gcc test.c と入れたら a.exe というファイルができました。 $a.exeと入力してもノットコマンドで実行できません。 実行の仕方教えてくださいお願いします。
261 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 02:21:35 ] ./a
262 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 02:22:31 ] >>261 超迅速にありがとう。 マジで感謝です。
263 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 03:34:00 ] ノットコマンドて……
264 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 03:48:45 ] 最近&foo[2]と書くひとが増えていますが、 なにかfoo+2で困ることがあるのでしょうか?
265 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 04:38:21 ] >>264 std::vector と互換しない。
266 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 07:28:49 ] std::fill(&foo[0][0], &foo[2 - 1][3 - 1] + 1, 0)
267 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 12:30:55 ] ありがとうございます。 >>265 つまり日頃から&foo[n]と書く癖をつけるという事ですね >>266 2つめの引数の+1は問題にはならないのですか?
268 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 12:46:08 ] iterator + 1
269 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 13:27:45 ] >>268 std::fill()の最初2つの引数はイテレータなんですね。 だからp1=p2の時++p1==p2+1は1だからこそ成り立つってことかし? うーん、もっと勉強してきます。ありがとうございました。
270 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 13:32:26 ] >>269 全然違う
271 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 22:35:28 ] 「全然違う」書くだけなら小学生でも(略
272 名前:デフォルトの名無しさん mailto:age [2006/08/09(水) 22:36:07 ] あげとこう
273 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 23:18:15 ] 小学生ですが何か?
274 名前:デフォルトの名無しさん mailto:sage [2006/08/10(木) 00:00:01 ] 付き合ってください
275 名前:デフォルトの名無しさん mailto:sage [2006/08/10(木) 14:12:44 ] ごめんなさい
276 名前:デフォルトの名無しさん mailto:sage [2006/08/10(木) 16:00:39 ] intel core microarchitecture 用の最適化の開発ってはじまってる?
277 名前:デフォルトの名無しさん [2006/08/14(月) 09:03:09 ] gccの内部構造に関して解説した文章ってありますか?
278 名前:デフォルトの名無しさん mailto:sage [2006/08/14(月) 09:55:12 ] info
279 名前:デフォルトの名無しさん mailto:sage [2006/08/14(月) 10:04:29 ] >>277 wikiwiki.jp/aloha/
280 名前:デフォルトの名無しさん mailto:sage [2006/08/15(火) 21:18:02 ] >>277 gcc.gnu.org/onlinedocs/gccint/
281 名前:デフォルトの名無しさん [2006/08/17(木) 21:45:35 ] Javaで書いたルーチンをgcjでコンパイルしてライブラリ作って C,C++から呼び出すってたぶん可能ですよね どっかいい解説はないでしょうか? それとも無理なんかな
282 名前:デフォルトの名無しさん mailto:sage [2006/08/17(木) 21:51:35 ] キーわかってんならググレ このカスが! 専用スレもあるってのに。
283 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 08:54:11 ] >>281 JVMの初期化APIあたりについてはマニュアルを読みましょう. * gcc.gnu.org/onlinedocs/gcj/Invocation.html#Invocation * www.asahi-net.or.jp/~wg5k-ickw/html/online/gcj-3.2.1/gcj-ja_12.html#SEC47 ライブラリをどう作っていいかわからんとかのレベルならgcjとか諦めた方が無難…
284 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 09:39:05 ] >>283 レスをどうもありがとうございます. C++側からJavaクラスのメッソドを呼び出すのに成功しました. ライブラリはいくつか作ってるので大丈夫ですが Javaの方がサッパリなので,これから学んでみようと思います. どうもありがとうございました.
285 名前:デフォルトの名無しさん [2006/08/18(金) 16:37:24 ] 一応あげておくか。
286 名前:デフォルトの名無しさん [2006/08/18(金) 17:51:47 ] >>282 最近の子は切れやすいね〜
287 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 18:24:50 ] 切れてないですよ 俺切れさせたら大したもんだよ
288 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 19:17:47 ] >>287 hage
289 名前:デフォルトの名無しさん [2006/08/19(土) 12:25:27 ] シグナルハンドラの中で使用する大域変数の型は volatile sig_atomic_t でなければいけないと書いてあるですが 率直に言って何故なんでしょうか? volatile は最適化の影響を避けるためというのは理解できますが、 volatile int でも良いと思うのですが。 sig_atomic_t は一つの機械語命令で実行できるとなっていますが そうでなければいけない理由って何でしょうか?
290 名前:デフォルトの名無しさん mailto:sage [2006/08/19(土) 13:16:17 ] その変数をセットする命令列の途中でシグナルが発生する可能性があるから。 たとえば変数が64ビット整数だとして、上位32ビットをセットする命令と 下位32ビットをセットする命令の2つでアクセスが構成される場合、 シグナルハンドラの中で有効な値がとれる保証がない。
291 名前:デフォルトの名無しさん mailto:sage [2006/08/19(土) 14:06:54 ] >>290 レスありがとうございます。 挙げていただいた例に従うと、 上位32ビットをセットする命令の実行後、下位32ビットをセットする命令の 実行前にシグナルが発生したら問題になるということですね? かなりきわどい条件ですが、発生したらデバッグできなそうです。
292 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 01:46:24 ] SSEとかってみんなインラインアセンブラで書いてるの? それとも組み込み?内臓?
293 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 07:59:44 ] ヒント SIMD最適化
294 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 13:19:44 ] 自分でも書くだろ。
295 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 21:05:00 ] asm文
296 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 22:32:03 ] int main(viod){ _asm{ 〜 } return 0; }
297 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 23:33:46 ] memalignとか__mm_mallocとか使えるならそれでもよさげなんですが
298 名前:デフォルトの名無しさん mailto:sage [2006/08/30(水) 00:30:58 ] 最適化微妙だけど、gcc4.1使ってSIMD最適化して それを見ながらasmするってのが趣がありそうなのでやってみることにします
299 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 14:02:23 ] gcc.gnu.org/wiki/GCC_4.3_Release_Planning
300 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 17:52:11 ] 300
301 名前:デフォルトの名無しさん mailto:sage [2006/09/06(水) 00:37:34 ] gcc3 とgcc4 を SPECint で比較した資料ありますか?
302 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 02:52:36 ] for(int i=0;i<10;i++){ : : } このコードでエラーを吐かれたときからGCCが嫌いになった。それだけ
303 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 05:13:50 ] ばかキタ-
304 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 06:14:15 ] >>303 ちげーよ ある仮定を1つ言ってないだけさ
305 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 06:57:55 ] やっぱり>>303 であってるじゃないかー
306 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 07:44:31 ] >>304 バカがキタことになってるよ 詳しく
307 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 12:18:56 ] [919]デフォルトの名無しさん 2006/03/19(日) 08:52:45 >>918 ちげーよ ある仮定を1つ言ってないだけさ これ何か流行ってるの? それともやっぱり >>303 なの?
308 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 13:45:06 ] 暇なので。 >>302 自分のミスに気づかないだけならまだしも、それが他人のミスであることを前提に話をすすめるのは典型的なできないプログラマだ。 infoも読めない自分を嫌いになれ。 `-std=' Determine the language standard. This option is currently only supported when compiling C or C++. A value for this option must be provided; possible values are (略) `c99' `c9x' `iso9899:1999' `iso9899:199x' ISO C99. (ばっさり略) `gnu89' Default, ISO C90 plus GNU extensions (ばっさり略)
309 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 14:18:54 ] error: 'for' loop initial declaration used outside C99 mode
310 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 15:05:04 ] manは読むけどinfoは読まないな インターフェイスが嫌い
311 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 15:27:38 ] 禿げて同意
312 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 17:23:09 ] infoのほうが、大抵詳しく書いてあるのですき。 interfaceも好き。
313 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 01:20:20 ] 俺も info は嫌いだな。 インターフェイスが嫌なのもあるけど、既に man があるのに別の仕組みを 押し付けられる感じが嫌だ。
314 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 01:31:20 ] 楽して調べたいわけですよ infoは操作がメンドイ