タグ付けされた質問 「g++」

g ++は、GNU Compiler Collection(GCC)のC ++フロントエンドです。GCCはGNUコンパイラコレクションです。Linux上のC、C ++、Go、Fortran、Adaの事実上の標準コンパイラであり、他の多くの言語やプラットフォームもサポートしています。コンパイラーとは別に、GCCにはいくつかのプラットフォームやシステムで広く使用されているツールチェーン(libc、libstdc ++、objdump、nmなど)があります。

4
ヘッダーファイルがどこからインクルードされているかを見分ける方法は?
g ++がインクルードファイルを見つけた場所を確認するにはどうすればよいですか?基本的に私が #include <foo.h> g ++は、パスを追加または変更するインクルードオプションを使用して、検索パスをスキャンします。しかし、今日の終わりに、g ++がコンパイルすることを選択したfoo.hの絶対パスを伝える方法はありますか?無数の検索パスにfoo.hが複数ある場合は特に関連があります。 それを達成する方法が不足しています...デフォルトとすべてのインクルードオプションを含めた後、g ++に最終的な検索パスを教えてもらう方法はありますか?
97 c++  c  gcc  include  g++ 

2
ライブラリへのパスをg ++に含める方法
メイクファイルに追加のライブラリへのパスを含めようとしていますが、コンパイラでそのパスを使用する方法を理解できません。これまでのところ: g++ -g -Wall testing.cpp fileparameters.cpp main.cpp -o test へのパスを含めたい /data[...]/lib Testing.cppにはそのライブラリのファイルが含まれているためです。また、私はLinuxマシンを使用しています。 編集:ライブラリへのパスではありません。含まれていたファイルのみ。私の悪い。
96 path  g++ 

10
C ++で長い方程式を実装する場合、高レベルのアプローチでパフォーマンスを向上させるにはどうすればよいですか
私はいくつかの工学シミュレーションを開発しています。これには、ゴムのような材料の応力を計算するために、この方程式のようないくつかの長い方程式を実装することが含まれます。 T = ( mu * ( pow(l1 * pow(l1 * l2 * l3, -0.1e1 / 0.3e1), a) * a * ( pow(l1 * l2 * l3, -0.1e1 / 0.3e1) - l1 * l2 * l3 * pow(l1 * l2 * l3, -0.4e1 / 0.3e1) / 0.3e1 ) * pow(l1 …


5
ライブラリパスの設定を指定する方法は?
私が使用したC ++プログラムをコンパイルしていますg++とld。.soリンク時に使用したいライブラリがあります。ただし、同じ名前のライブラリがに存在し/usr/local/lib、ld直接指定しているライブラリよりもそのライブラリを選択しています。どうすれば修正できますか? 以下の例では、私のライブラリファイルは/my/dir/libfoo.so.0です。私が試したことはうまくいきません: 私のg ++​​コマンドは g++ -g -Wall -o my_binary -L/my/dir -lfoo bar.cpp en`変数の/my/dir先頭または末尾に追加する$PATH /my/dir/libfoo.so.0引数としてg ++に追加する
91 c++  linker  g++ 

6
エラー:free():次のサイズが無効です(高速):
この奇妙なエラーは何ですか?Ubuntu 10.10でg ++を使用してC ++をコンパイルしています。実行可能ファイルを実行すると、ランダムにポップアップ表示されます(多分8時間に2回、1時間に10回コンパイルされます)。ただし、クリーンにして再コンパイルすると、ほとんどの場合それはなくなります。 *** glibc detected *** ./emailQueue.app: free(): invalid next size (fast): 0x0000000001c40270 *** ======= Backtrace: ========= /lib/libc.so.6(+0x774b6)[0x7f490d95e4b6] /lib/libc.so.6(cfree+0x73)[0x7f490d964c83] ./emailQueue.app[0x401f47] /lib/libc.so.6(__libc_start_main+0xfe)[0x7f490d905d8e] ./emailQueue.app[0x401cc9] ======= Memory map: ======== 00400000-0040d000 r-xp 00000000 08:01 1311132 /home/server/Projects/email/emailQueue.app 0060d000-0060e000 r--p 0000d000 08:01 1311132 /home/server/Projects/email/emailQueue.app 0060e000-0060f000 rw-p 0000e000 08:01 1311132 /home/server/Projects/email/emailQueue.app 01c40000-01c82000 rw-p 00000000 00:00 …
90 c++  g++ 

4
cc1plus:エラー:g ++で認識されないコマンドラインオプション“ -std = c ++ 11”
私が使用してコンパイルしようとしているg++とのいずれか-std=c++11またはc++0xフラグ。 ただし、このエラーが発生します cc1plus: error: unrecognized command line option "-std=c++11" g ++ --version g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-54) Copyright (C) 2006 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

2
GNU GCC(g ++):なぜ複数のdtorを生成するのですか?
開発環境:GNU GCC(g ++)4.1.2 ユニットテストで「コードカバレッジ-特に関数カバレッジ」を増やす方法を調査しようとしているときに、クラスdtorの一部が複数回生成されているように見えることがわかりました。何人かあなたはその理由について何か考えていますか? 次のコードを使用して、上記のことを試して観察しました。 「test.h」 class BaseClass { public: ~BaseClass(); void someMethod(); }; class DerivedClass : public BaseClass { public: virtual ~DerivedClass(); virtual void someMethod(); }; 「test.cpp」 #include <iostream> #include "test.h" BaseClass::~BaseClass() { std::cout << "BaseClass dtor invoked" << std::endl; } void BaseClass::someMethod() { std::cout << "Base class method" …
89 c++  g++  destructor 

4
g ++を使用したマルチスレッドコードのコンパイル
私はこれまでで最も簡単なコードを持っています: #include <iostream> #include <thread> void worker() { std::cout << "another thread"; } int main() { std::thread t(worker); std::cout << "main thread" << std::endl; t.join(); return 0; } まだコンパイルしg++て実行することはできませんが。 詳細: $ g++ --version g++ (Ubuntu/Linaro 4.8.1-10ubuntu8) 4.8.1 Copyright (C) 2013 Free Software Foundation, Inc. This is free software; see the …
89 c++  linux  ubuntu  gcc  g++ 

2
gcc / g ++:「そのようなファイルやディレクトリはありません」
g++ 次の形式のエラーが表示されます。 foo.cc:<line>:<column>: fatal error: <bar>: No such file or directory compilation terminated. を使用してCプログラムをコンパイルする場合も同じgccです。 何故ですか? 注意:この質問はこれまで何度も質問されてきましたが、そのたびに質問者の状況に固有のものでした。この質問の目的は、他の人が、一度限りの複製として閉じることができるという質問をすることです。よくある質問。
88 c++  c  gcc  g++  c++-faq 

5
LinuxのGCCでstd :: threadを使用するための正しいリンクオプションは何ですか?
こんにちは私はstd::threadG ++で使用しようとしています。これが私のテストコードです #include <thread> #include <iostream> int main(int, char **){ std::thread tt([](){ std::cout<<"Thread!"<<std::endl; }); tt.join(); } コンパイルされますが、実行しようとすると次のようになります。 terminate called after throwing an instance of 'std::system_error' what(): Operation not permitted Aborted 私のコンパイラバージョン: $ g++ --version g++ (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1 Copyright (C) 2011 Free Software Foundation, Inc. This is free software; see …

2
makefileでのエスケープ
私はこれをメイクファイルで行おうとしていますが、ひどく失敗します: M_ARCH := $(shell g++ -dumpmachine | awk '{split($1,a,"-");print a[1]}') なぜなのかご存知ですか?私はそれが逃げることと関係があると思います、しかし何とどこで?

1
gcc / g ++とcc1 / cc1plusの違いは何ですか?
プロジェクトをコンパイルし、実行によって使用されるリソースを確認すると、topCPU /メモリの大きな占有が呼び出されるg++こともありcc1plusます。2つの違いは何cc1plusですか?直接電話する必要がありますか?
85 gcc  g++ 

1
指定されたテンプレートパラメータを持つC ++ 11make_pairはコンパイルされません
-std = c ++ 11を有効にしてg ++ 4.7(後のスナップショットの1つ)で遊んでいました。私は既存のコードベースのいくつかをコンパイルしようとしましたが、失敗した1つのケースはやや混乱します。 誰かが何が起こっているのか説明していただければ幸いです。 コードは次のとおりです。 #include <utility> #include <iostream> #include <vector> #include <string> int main ( ) { std::string s = "abc"; // 1 ok std::pair < std::string, int > a = std::make_pair ( s, 7 ); // 2 error on the next line std::pair < …

7
gccを使用したC ++プログラムのコンパイル
質問:gccコンパイラでC ++プログラムをコンパイルする方法は? info.c: #include<iostream> using std::cout; using std::endl; int main() { #ifdef __cplusplus cout << "C++ compiler in use and version is " << __cplusplus << endl; #endif cout <<"Version is " << __STDC_VERSION__ << endl; cout << "Hi" << __FILE__ << __LINE__ << endl; } そして私がコンパイルしようとすると info.c $ gcc …
84 c++  gcc  g++  gnu 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.