のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,843人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレGCCについて part8

    gcc スレッド一覧へ / gcc とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - pragma + - spec + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    401 : デフォルトの名無 - 2008/05/24(土) 23:38:43 (+82,+29,-85)
    >>400
    うん。そういう風にわかってこだわるのはいいんだ。
    >>393は試したって-O2だけかよ、って小一時間問い詰めたい。

    実際のところ、カーネルとかマルチメディア系とかはコンパイラの癖にまで
    依存したギリギリのチューニングが施されている場合があるから、
    コンパイラの能力を評価するにはフェアじゃない。
    402 : デフォルトの名無 - 2008/05/25(日) 12:02:12 (+48,+30,+0)
    403 : デフォルトの名無 - 2008/05/28(水) 22:45:06 (-1,-29,-18)
    そういや昔見たのは、
    http://groups.google.com/group/comp.lang.forth/browse_frm/thread/545177ea53944038/eebaa14010b86c61?hl=en#eebaa14010b86c61
    gccは2.95が最速、あとは遅くなるだけだぜ、みたいな話
    404 : デフォルトの名無 - 2008/06/01(日) 03:00:30 (+71,+29,-25)
    毎回gdb立ち上げて特定のメソッドにブレーク張ってとかの作業を
    自動化してくれる方法はないでしょうか?
    405 : デフォルトの名無 - 2008/06/01(日) 03:07:00 (+12,-29,-20)
    >>404
    gdbの起動時にスクリプトを実行する機能があるよ。
    詳細はmanでも読んで。
    406 : 404 - 2008/06/01(日) 03:14:36 (+4,-30,-17)
    >>405さんありがとうございます。
    .gdbinitというファイルをカレントディレクトリに用意して
    以下のように書いてうまくいきました。

    exec-file ./test.exe
    symbol-file ./test.exe
    r
    b main
    407 : デフォルトの名無 - 2008/06/02(月) 02:34:00 (-1,-29,-28)
    gccでコンパイルするときに
    コンパイルしたソースファイルの名前を、
    ディレクトリも含んだ状態でオブジェクトファイルに格納する
    らしいのですが、
    どこに書かれているのでしょうか?
    408 : デフォルトの名無 - 2008/06/02(月) 07:35:54 (-6,-29,+0)
    $ nm -a foo.o
    409 : デフォルトの名無 - 2008/06/07(土) 02:34:16 (-1,-29,-3)
    June 6, 2008
    GCC 4.3.1 has been released.
    410 : デフォルトの名無 - 2008/06/09(月) 14:32:10 (+66,+29,-30)
    GCCで音階のプログラムを組もうとおもっています。
    波数とパルスの詳細が知りたいので、教えてください。
    4オクターブを想定しています。
    411 : デフォルトの名無 - 2008/06/09(月) 14:47:42 (+16,+29,-17)
    >>410
    GCC関係あるのか?

    どういうプラットフォームで何からどうやって音を出そうというのかを
    はっきりさせて下のスレあたりで聞いたほうがいいように思う。

    サウンドプログラミング4
    http://pc11.2ch.net/test/read.cgi/tech/1185340076/
    412 : デフォルトの名無 - 2008/06/11(水) 12:28:28 (+13,-30,-54)
    GCCでプリコンパイル済みヘッダ使うとき、元のヘッダ*.hと同じディレクトリに
    *.h.gchが作られますけど、release用とdebug用の二つのプリコンパイル済みヘッダを
    使いわけたいときなんかは、皆さんどのようにしてますか?
    413 : デフォルトの名無 - 2008/06/11(水) 15:48:52 (-2,-30,-19)
    *.h 自体を release や debug 用ディレクトリに
    コピーしてから使ってるなぁ。
    414 : デフォルトの名無 - 2008/06/11(水) 15:58:59 (+51,+23,+0)
    ディレクトリ指定してそこに作らせる。
    415 : デフォルトの名無 - 2008/06/11(水) 16:02:27 (+5,-29,-17)
    http://gcc.gnu.org/onlinedocs/gcc/Precompiled-Headers.html
    によると、*.h.gch というディレクトリを作って、その中にそれぞれ用のプリコンパイルヘッダを置いておくといいらしい・・・
    416 : 412 - 2008/06/11(水) 22:22:02 (+4,-28,-7)
    >>415 さんのやり方で無事できました。皆さんありがとうございます。
    *.h.gchディレクトリ以下で、コンパイルオプションが同じものを勝手に使ってくれるようです。
    プリコンパイル済みヘッダのファイル名はなんでもいいようです。
    417 : デフォルトの名無 - 2008/06/14(土) 17:28:44 (+3,-30,-45)
    長い間VC6、VC8(MFC)で実装をやってました
    この度、新しいプロジェクトでlinuxでC++の実装を担当することになったのですが
    VisualStudioの生ぬるい環境に、長い間どっぷり浸っていたせいで
    いまいち、調子がよくありません
    gcc(g++)の環境で、VisualStudioのようなデバッガーって無いのでしょうか?
    418 : デフォルトの名無 - 2008/06/14(土) 18:14:02 (+2,-29,-13)
    EclipseもC++に対応してたような
    419 : デフォルトの名無 - 2008/06/14(土) 19:47:48 (-1,-29,-50)
    >>418
    Thx
    Eclipseをインストールして、続けてC++の開発環境もインストールしました
    実装に専念できそうです
    420 : デフォルトの名無 - 2008/06/14(土) 22:03:30 (-1,-29,-28)
    Eclipse既にインスコしたようだが、Dev-c++もお奨め
    421 : デフォルトの名無 - 2008/06/15(日) 00:25:52 (-1,-29,-17)
    eclipse/cdtかkdevelopだな
    422 : デフォルトの名無 - 2008/06/15(日) 00:46:17 (-1,-24,-2)
    Emacs以上の環境は存在しない
    423 : デフォルトの名無 - 2008/06/15(日) 01:29:33 (+30,+7,-2)
    これがゆとり世代か・・・
    424 : デフォルトの名無 - 2008/06/15(日) 03:30:54 (+47,+20,-1)
    emacsはもう死んだよ
    425 : デフォルトの名無 - 2008/06/15(日) 09:16:05 (-1,-29,-2)
    Emacs is dead. The future is notepad.
    426 : デフォルトの名無 - 2008/06/15(日) 13:48:10 (+4,-29,-1)
    >>424
    ん?xyzzy が便利なんですが。CL だし。
    427 : デフォルトの名無 - 2008/06/15(日) 13:50:55 (+57,+29,-13)
    emacs憶えたら便利なんだろうって何となく思うけど、
    憶えるための最初の一歩を踏み出す気が起きない。
    428 : デフォルトの名無 - 2008/06/15(日) 14:49:38 (+19,-30,-82)
    以下のような関数をgccでビルドするとき、
    最適化オプションを何もつけていないのに
    return -1;の部分が最適化されて消えてしまうことってありますか?

    int func(void) {
    // この関数が呼ばれた時点でバグなのでデバッグ時は無条件にアサートさせる。
    assert(false);

    // リリース時に万が一呼ばれたときはエラー値を戻す。
    return -1;

    }
    429 : デフォルトの名無 - 2008/06/15(日) 14:51:50 (+0,-29,+0)
    gcc -S でソース嫁
    430 : デフォルトの名無 - 2008/06/15(日) 15:07:12 (+4,-29,-45)
    >>428
    gccは最適化ナシでも簡単なフロー解析(この場合、あからさまに到達不能なブロック)はやっている。

    assert() 内部では __attribute__((noreturn)) なファンクションが呼ばれている。

    あとはわかるな?
    431 : 428 - 2008/06/15(日) 15:55:11 (+2,-30,-71)
    >>429,430
    どうもです。

    以下のソースを
    gcc -S -o test.s test.c

    gcc -S -DNDEBUG -o test2.s test.c

    とすると挙動がわかりました。
    ありがとうございました。

    #include <assert.h>
    void f(void)
    {
    assert(0);

    int i = 0;
    ++i;

    }
    432 : デフォルトの名無 - 2008/06/18(水) 01:00:22 (-1,-29,-27)
    複数の-g系オプションを並べた場合は
    後ろの方が強いのですか?

    gcc -ggdb -gxxx
    433 : デフォルトの名無 - 2008/06/18(水) 22:12:53 (-6,-29,+0)
    gcc 4.3,ひどいな…
    434 : デフォルトの名無 - 2008/06/18(水) 23:56:53 (+57,+29,-4)
    いつものごとく4.5くらいまで進めば安定するんでないかい。

    ということで3.4使いつづけとります。

    435 : デフォルトの名無 - 2008/06/19(木) 00:39:25 (-1,-29,-13)
    俺にとって、4.3はC++0xのためだけに存在しているようなもの。
    436 : デフォルトの名無 - 2008/06/19(木) 02:02:01 (+80,+25,-14)
    openmpのこともたまには思い出して上げてください
    437 : デフォルトの名無 - 2008/06/19(木) 02:09:27 (+54,+15,-2)
    >>436
    思い出してもageません?
    438 : デフォルトの名無 - 2008/06/19(木) 13:22:48 (+2,-29,+0)
    Converting GCC to C++
    http://lwn.net/Articles/286539/
    439 : デフォルトの名無 - 2008/06/19(木) 20:38:48 (+0,-28,+0)
    >>438
    これはつまり
    gcc cxx.cpp
    ができるようにするからくりというわけ?
    440 : デフォルトの名無 - 2008/06/19(木) 21:36:18 (+29,-29,+0)
    GCC を C++ に移植したいらしい。
    441 : デフォルトの名無 - 2008/06/19(木) 21:51:26 (-1,-29,-6)
    The FSF is not writing the code. にワロタ
    442 : デフォルトの名無 - 2008/06/19(木) 22:14:20 (+56,+29,+0)
    >>440
    そっか逆か。ありがと。
    443 : デフォルトの名無 - 2008/06/19(木) 23:08:06 (+57,+29,-4)
    もういっそJavaでもいいんじゃね派が登場して
    混沌としてほしい
    444 : デフォルトの名無 - 2008/06/20(金) 08:48:26 (+57,+29,-13)
    なんてアグレッシブな!と思ったけどブランチ作っただけでコードはまだか。
    内部のモジュール化が進むといいなあ。
    445 : デフォルトの名無 - 2008/06/25(水) 01:07:28 (-6,-29,+0)
    JavaでいいならCOINS
    446 : デフォルトの名無 - 2008/06/29(日) 23:26:34 (+11,-30,-49)
    GCC 3.4 x86_64 で -mno-sse が効かないんですが、理由が分かる人はいますか?

    gcc -S -fverbose-asm の出力を見ると、-mno-sse を付けているにも関わらず -msse が有効になっています
    実際、アセンブリを見ても SSE 系の命令が出力されています
    447 : デフォルトの名無 - 2008/06/30(月) 01:01:06 (+2,-29,-3)
    >>446
    -mfpmath=387
    448 : デフォルトの名無 - 2008/06/30(月) 01:56:55 (-1,-29,-7)
    >>447
    それを付けても駄目みたいです
    また GCC 4 系ではそれを付けなくても -mno-sse が有効になります
    449 : デフォルトの名無 - 2008/06/30(月) 02:01:23 (+12,-30,-39)
    >>446
    >GCC 3.4 x86_64 で -mno-sse が効かないんですが、理由が分かる人はいますか?

    横な質問なんですけどx86_64でSSEの無いCPUって何ですか?
    450 : デフォルトの名無 - 2008/06/30(月) 02:28:49 (+17,-16,-129)
    >>449
    あまり詳しいことは書けないけど
    XMM レジスタを使わないことが前提のアセンブリコードや CPU エミュレータがあるので
    C ソースファイルをコンパイルするときに SSE コードを生成して欲しくない

    あるいは浮動小数点演算自体の使用を禁止する運用も可能だけど
    その場合、浮動小数点演算を使用しているソースをコンパイルエラーで弾くくらいはする必要がある
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / gcc スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - pragma + - spec + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について