タグ

gccに関するundertheskyのブックマーク (14)

  • gcc のデバッグ術

    Unix系コマンドラインユーザーのための、 gcc/g++/g77 による開発におけるデバッグ術を簡単に紹介します。 以下の内容は gcc 2.7.2.3 での動作は確認しています。 g++/g77 でも恐らくは通用すると思うのですが、 ひょっとすると異なる部分があるかもしれません。 筆者は g++/g77 の使用経験がないので、その場合は御容赦を願います。 実行前 キーワード「コンパイルオプション, -Wall, -O2, -O4」 まずは gcc にオプション opt'-Wall' を付けてコンパイルし、 警告がなくなるまでソースを修正します。 これは 常識 です。 次に opt'-O4 -Wall' でコンパイルします。 「未初期化変数の使用」の警告 (`foo' might be used uninitialized in this function) は、 opt'-O4' を付

  • gcc-4.5.0をインストールしてみる | soi33.org

  • gccをインストールしたいです。サイトでgcc-4.1-m32r-linux-gnu-4.1.122.i386.rpmをダウンロード... - Yahoo!知恵袋

    まずやりたいことを確認。 gcc-4.1-m32r-linux.... というのは M32R という、三菱で開発されて現在はルネサスエレクトロニクスの製品である組み込みマイコンで動くLinuxのプログラムをPCLinux上で作るためのクロスコンパイラですが、それが欲しいのね? Linux/M32Rってのは世界に数名しか開発者がいないだろうというようなすごく特殊なLinuxなので、あなたがそれに興味をもつのをちょっと想像していなかったので、とりあえず確認。主に教育用にソフトコア展開したものがあるので、教材としてそれを使う教育機関が僅かながらあると思うから、そうなのかもしれないけど。 まず、配布のサイト(linux-m32r.orgだよね? そのパッケージは世界中でそこにしかないはず)で配布されているrpmを全部ダウンロードしてください。それから、それを全部一度に指定してインストール。 rp

    gccをインストールしたいです。サイトでgcc-4.1-m32r-linux-gnu-4.1.122.i386.rpmをダウンロード... - Yahoo!知恵袋
  • debian で,gccのバージョンを切り替える - pyopyopyo - Linuxとかプログラミングの覚え書き -

    debian には gcc-4.0 や gcc-3.4 などのパッケージが用意されている.これらのパッケージは共存出来るようにちゃんんと prefix を付けた形でコンパイルされていて $ export CC=gcc-4.0 $ export CXX=gcc-4.0などと環境変数を設定することで,コンパイラを簡単に切り替えることもできる.また,デフォルトで利用されるgcc,つまり /usr/bin/gcc は /usr/bin/gcc-3.3 へのシンボリックリンクになっている. しかしなぜか alternative には対応していない.もったいない.という経緯で,コンパイラへのリンクを切り替えるスクリプトを作成した.こんな感じ #!/bin/sh VER=$1 case "$VER" in 3.3) ;; 4.0) ;; 3.4) ;; *) echo "supported versio

    debian で,gccのバージョンを切り替える - pyopyopyo - Linuxとかプログラミングの覚え書き -
  • C言語開発環境構築 [Linux(Debian)] SE&ビジネスパーソンとしてお勉強中なブログ

    C言語+開発関係のパッケージインストール いつもの # apt-get update # apt-get install dpkg-dev gcc g++ libc6-dev make patch どっかから抜粋-> 【dpkg-dev】 このパッケージには Debian ソースパッケージを展開、構築、アップロードするために必要なツール群が 含まれています。 (詳しくは dpkg-source(1) を参照)。 【file】 この便利なプログラムを使うとそのファイルがどういう形式のものか判定することが できます (詳しくは file(1) を参照)。 【gcc】 GNU C コンパイラ。あなたのプログラムが他の多くのプログラムと同様に C 言語で書かれている場合、必要となります。(詳しくは gcc(1) を参照) このパッケージは、たとえばプログラムの「素」となるオブジェクトファイルをアセ

  • Debian -- Error

    ウェブサイトの問題を報告するには、debian-www@lists.debian.org にメールを送ってください。その他の連絡先に関する情報は、Debian のコンタクトページをご覧ください。 Content Copyright © 1997 - 2024 SPI Inc.; ライセンス条項をご覧ください。 Debian は SPI Inc. の登録商標です。 このサイトについてさらに詳しく知るには.

  • yamcha 0.33 が fedora 9 (gcc 4.3) で make できない、そんなとき | sugiyama-log

    fedora 9 で yamcha と cabocha を使いたい、そう思って、make してみました。 エラーが出ます。 param.cpp:102: error: 'strlen' was not declared in this scope param.cpp:103: error: 'strncmp' was not declared in this scope ちょっと気が遠くなりかけた。そんなとき。 つまるところ、gcc 4.2 以前と gcc 4.3 の違いに起因するようです。 gcc 4.2 以前では、string.h や stdlib.h のようなヘッダファイルは明示的にインクルードしていなくても、そのヘッダファイルでプロトタイプ宣言されている関数を呼び出すことができました。 gcc 4.3 では明示的なインクルードが必要です。 とりあえず、 src/common.h に

  • Tips for the Numerical Computation Using GNU/Linux

    この上限の値を超過すると数値計算上は無限大と扱われてInfとなります. (上記の記述はSun Forte Developerのマニュアルの「数値計算ガイド」を参考にしました.) (発生場所の特定方法) InfやNaNが発生する場所を特定したい. 演算の結果が上記のInfやNaNとなる時の検出のためにSigFPE(Floating Point Exception, 日語では演算例外もしくは浮動小数点例外)というシグナルがあるのですが,数値計算を行う上では不合理なことに,デフォルトでは演算例外が起こってもSigFPEを発生せずに計算が続行されます. そのため,InfやNanの発生場所の特定のためには,演算例外でこのSigFPEが発生するようにすればよいことになります. (すると,Kernel側でシグナルを検出してプログラムが停止します.) しかし,デバッグのためにプログラムをわざわざ書き換え

  • gprof

    コンパイルとリンク時に-pgオプションをつける。 gcc -pg -o test test.c makefileを利用する時には、リンク時のオプションを付け忘れることが多いので注意。 ( -pg を付けて作成した)プログラムを普通に実行する。 プログラムが正常終了すると、 カレントディレクトリに gmon.out というファイルが生成されている。 (Ctrl-Cで止めたり、Segmentation Faultで異常終了した時には gmon.out は生成されないので、注意しよう。) ./test ls -F gmon.out test test.c

  • warning: multi-line comment - 揮発性のメモ2

    シフトJISのソースをコンパイルするとき、コメントの行末が「能」だったりすると出る。 gccのワーニング usart.h:18:1: warning: multi-line comment 問題のソース 17: // ========================== 18: // 変更可能 19: // ========================== 原因 SJISの「能」は 0x94,0x5C であるため。 0x5C は ASCIIでは \ になるので、次の行とくっつく 対策 gccのオプションに --input-charset=cp932 をつける http://www.google.co.jp/search?q=cache:http://twistbendcoupling.net/2006/04/blog-post_16.html http://ja.wikipedia.o

    warning: multi-line comment - 揮発性のメモ2
  • https://moriyoshi.hatenablog.com/entry/20100428/1272452495

  • 浮動小数点演算ではまった話 - bkブログ

    浮動小数点演算ではまった話 浮動小数点演算のありがちな問題ではまりました。 いろいろ調べているうちに x86 特有のちょっとおもしろい 現象に遭遇したので紹介したいと思います。 パーセンテージの計算 簡単な C のプログラムでパーセンテージを計算しようと思い、 次のようなコードを書きました。 int x, y; ... int a = (double)x / y * 100; int a = x * 100 / y としないのは、 x が大きい場合に x * 100 が オーバーフローを起こす (INT_MAX を越える) ためです。 このコードは一見、期待通りに動いていたのですが、 しばらく使っていると、手元の環境では x = 53, y = 100 のときに a は 53 ではなく 52 になることに気づきました。 これは次の理由によります。 式の最初の (double)53 / 10

  • 最新Cコンパイラーの最適化事情 - Radium Software

    State of the art C compiler optimization tricks, Felix von Leitner, Linux Kongress 2009. 最近のCコンパイラーの最適化能力についてまとめたプレゼンテーション。定数の扱いやインライン展開などの基的な項目から始まって,分岐の削除やベクトル化, SIMD 化など,最新のコンパイラーに搭載されている様々な機能について調べている。 この手の分岐の削除はほとんどのコンパイラーで有効らしい。 ベクトル化については gcc がだいぶ頑張っている印象。 「gcc は全プラットフォームにおいてビデオコーデックプログラマーより賢い」 これらの最適化が実際のコードでどのように機能するか気になって逆アセンブリコードを覗いてみる人も少なくないと思うけれど,それを代わりにやってくれた感じだ。この手の話題に興味がある人ならば,目を通

    最新Cコンパイラーの最適化事情 - Radium Software
  • ISO Cの型違いポインタアクセス禁止規則 - sumiiのブログ

    http://www.atdot.net/~ko1/diary/200711.html#d15 手近に64ビット環境がない&ちゃんと見ていないので外しているかもしれませんが、 http://gcc.gnu.org/bugs.html#nonbugs_c ("Casting does not work as expected when optimization is turned on.") http://mail-index.netbsd.org/tech-kern/2003/08/11/0001.html あたりにある"dereferencing type-punned pointer will break strict-aliasing rules"問題だったりしないでしょうか。 ISO C規格の和訳(JIS規格)より引用: オブジェクトに格納された値に対するアクセスは,次のうちのいず

    ISO Cの型違いポインタアクセス禁止規則 - sumiiのブログ
  • 1