GCCエラーメッセージリポジトリ -- c++ フィールド と c フィールド と visual-c++ フィールド と gcc フィールド 関連 問題

gcc error message repository





今、私はほとんど排他的にGCCを使っていて、その機能が恋しいと思います。 GCCでいくつかのエラーが発生したとき、私はそれについての情報のためにエラーのテキストのために多岐にわたる時間を費やすようです。それぞれがより詳細に説明されているGCCエラーメッセージのリポジトリがいくつかありますか?


I've spent a lot of time using the Microsoft compiler cl and found that the error codes that it gives in compile messages (like C1234, C5432, etc.) can be very useful. When I get a error I'm unfamiliar with I can easily look it up on MSDN and get a more detailed explanation of what it means.

Now I'm using gcc almost exclusively and I find that I miss that feature. When I get some error in gcc I seem to spend a lot of time googling for the text of the error for information about it. Is there some repository of gcc error messages where each one is explained in more detail?





このページこのページより基本的なエラーメッセージの一部を説明します。 。



I find that Googling the exact error message (omitting things that change, such as variable/function names) gives pretty good results. It sometimes helps to enclose all or part(s) of the error message in quotes so that it is treated as a sentence rather than a collection of words.

This page explains some of the more basic error messages.

If you encounter something particularly convoluted that you have trouble figuring out, you can of course always ask on SO.



  • 時間の経過とともに、特定のエラーメッセージを学ぶ(特に ; が不足していますが、コンパイラは指示できません)。
  • エラーメッセージの定数部分のグーグルは、(例えば関数名を含まない)最初の3-5ヒットに非常に良い説明を与えることがよくあります。
  • テンプレート関連エラーは通常最悪です。これらの場合、コンパイラは2行番号を指定します。テンプレートコードが存在する場所、およびインスタンス化されている場所。コンテキスト内の両方のコード行を見ることは、多くの場合、物事をはるかに明確にすることができます(「その過負荷を使用しているのはなぜですか」)。最も簡単な方法では、コンパイラがどのように指示するかを調整する方法でテストプログラムを作成することがあります(エラーメッセージでTypedeFを表示するのに役立ちません)。
  • それが小さなコードであれば、別のコンパイラ(例えばComeau Online)で試してみて、エラーがより明確なかどうかを確認してください。

I'm not aware of any complete repository including full explanations, but for myself:

  • Over time you'll learn what particular error messages mean (especially in terms of "you're missing a ; but the compiler can't tell").
  • Googling for the constant part of the error message in quotes (not including function names for example) often gives very good explanations in the first 3-5 hits.
  • Template related errors are usually the worst. For those, the compiler gives you two line numbers: The place the template code exists, and the place it's being instantiated. Looking at both lines of code in context can often make things far more clear ("Why is it using THAT overload?"). Sometimes the simplest way is to create a test program with way simpler types to work out what the compiler's telling you (since it won't be helpful enough to show typedefs in the error message).
  • If it's a small piece of code, try it in a different compiler (for example Comeau online) and see if the error is clearer.


4  GCCの最適化、静的オブジェクト、および制限値  ( Gcc optimization const static object and restrict ) 
私は組み込みプロジェクトに取り組んでいて、USARTのレジスタへのアクセスを最適化するためにマクロを使用するコードのいくつかにもっと構造を追加しようとしています。 Preprocessor#define'd registerアドレスをconst構造に整理したい...

2  MingW 3.4.5の-ANSIスイッチを使用する問題  ( Problems using the ansi switch in mingw 3 4 5 ) 
GCCで使用されているフラグについて読んで、 gcc -ansi -pedantic -Wall file1 [file2 [file3...]] -o output を使用するためのRecCommendationを読み取っていました。私のコードのための品質...

59  __ attribute__ in GNU C  ( Attribute in gnu c ) 
GNU Cプログラムで使用されている __attribute__ はなぜですか? ...

7  スクリプトを使用してコンパイル時にコードを生成します  ( Generating code at compile time using scripts ) 
私は理想的には、私の実際のコードに(非常に繰り返し)C / C ++コードを、コンパイル時に、と言うようなコード、PythonスクリプトのSTDOUT、同じ方法で、同じ方法でマクロ 例えば、特定のクラスのパブリック属性に依存する機能を持たせたいとしましょう.C...

16  GCCを使用してLinuxで<ioStream.h>をリンクします  ( Linking iostream h in linux using gcc ) 
Linuxで最初に最初のC ++プログラムを実行しようとしています(Linux Mint 8)。同じ問題を持つGCCまたはG ++のいずれかを使用します。コンパイラはライブラリをインポートしようとしていません。 私はiostream.hファイルをコピーする...

40  -pthreadsで-d_reentrantが必要ですか?  ( Do i need d reentrant with pthreads ) 
Linux(カーネル2.6.5)私たちのビルドシステムは -D_REENTRANT を使ってGCCを呼び出します。 pthreads を使用している場合は依然として必要ですか? gcc -pthread オプションとはどうですか?私はPthrea...

20  現代のコンパイラはMMX / 3Dnow / SSEの指示を使用していますか?  ( How do modern compilers use mmx 3dnow sse instructions ) 
x86命令セット拡張機能を読んで、いくつかの非常に具体的な状況でのみ役立つように見えます(例:SSE3のHADDPD - (hardsdpd - doudle))。これらには、故意に設定される必要がある特定のレジスタレイアウトが必要です。またはその前に...

10  MATLAB MEXファイルの共有ライブラリの場所:  ( Shared library locations for matlab mex files ) 
libhdf5を使用するMATLAB MEX関数を書かせようとしています。 My Linuxのインストールは、libhdf5-1.8共有ライブラリとヘッダーを提供します。ただし、MATLAB R2007Bのマイバージョンは、1.6リリースからlibhdf5....

2  LinuxでC ++を使用したDLL-S  ( Dll s using c on linux ) 
Googleを使用してLinux上でDLL-Sを作成する方法を見つけようとしましたが、非常に混乱している情報がありました。 Linux上で動的リンクライブラリを書き込むことは可能ですか?そうでなければ、いくつかの実行プログラムから別のモジュールでコードを呼...

2  関数がインライン化されていても、このコードが遅いのはなぜですか。  ( Why is this code slower even if the function is inlined ) 
このような方法があります: <事前> <コード> bool MyFunction(int& i) { switch(m_step) { case 1: if (AComplexCondition) { ...

© 2022 cndgn.com All Rights Reserved. Q&Aハウス 全著作権所有