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
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は操作がメンドイ
315 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 01:47:31 ] つかinfoならhtmlでいいじゃねぇかと思うことしきりなんだけどなぁ。
316 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 01:53:03 ] htmlでいいなら、info2htmlでいいじゃん。 infoがperlのmanみたいにできるといいな。 perl(1)より Overview perl Perl overview (this section) perlintro Perl introduction for beginners perltoc Perl documentation table of contents Tutorials perlreftut Perl references short introduction perldsc Perl data structures intro perllol Perl data structures: arrays of arrays perlrequick Perl regular expressions quick start perlretut Perl regular expressions tutorial (ry
317 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 20:58:34 ] 共有ライブラリのsonameをバイナリの状態で書き換える方法ってないものでしょうか? ソースコードからmakeして、ldのオプションで設定するっていうのは無しの方向で考えているんですけど...。
318 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 23:33:24 ] >>317 つ LD_PRELOAD
319 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 02:46:40 ] >>292 xmmintrin.h これ定説。
320 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 21:38:37 ] すみません。質問です。 C#で、メモリが開放されるタイミングってどんなときでしょうか? プログラム内で今開放してって指定できないでしょうか?
321 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 22:42:48 ] >>320 誤爆?
322 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 02:19:06 ] GCの質問なんだが。
323 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 02:23:08 ] >35-37
324 名前:デフォルトの名無しさん [2006/10/09(月) 02:42:55 ] gccでC#ってコンパイルできたっけ?
325 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 08:12:41 ] >>324 ちげーよ ある仮定を1つ言ってないだけさ
326 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 09:42:50 ] >>324 つ www.dcl.hpi.uni-potsdam.de/research/lego.NET/
327 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 13:09:28 ] gccではgetche();の関数は使用できませんか?
328 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 13:15:28 ] >>327 なんでそんなこと聞くんだ。 やってみりゃいいじゃないか。 あと、includeディレクトリをgrep
329 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 13:28:38 ] >>328 当方Win XPにCygwinの環でございます。 #include <conio.h> を入れたソースをコンパイルしようとするとconio.hがみつから無いようなことが返されます。 当方の環境では C:\cygwin\usr\include\mingw の位置にconio.hは確認することが出来たんですが。 C:\cygwin\usr以下に conio.hとにコピーしたら_mingw.hが無い、_mingw.hをコピーしたら_getcheが無いようなことを言われました。 確かにconio.hの中には_getche (void)の記述はあったんですがどうにも動いてくれません。 当方Cygwin+gccの環境初心者の為すみません。
330 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 17:59:36 ] つまり、mingwを使いたいと言いながらgccを使っているわけだ。
331 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:35:45 ] >>329 -mno-cygwin
332 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 15:33:30 ] gcc-3.3とgcc-4.1.1がインストールされてて今は普通にgccって実行したらgcc-4.1.1が起動するんだけど、 これをgcc-3.3にする方法ないですか?-V 3.3付けるとかじゃない方法で。