タグ付けされた質問 「gcc」

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


30
vtableへの未定義の参照
C ++プログラムをビルドすると、エラーメッセージが表示される 'vtableへの未定義の参照... この問題の原因は何ですか?どうすれば修正できますか? たまたま、次のコード(問題のクラスはCGameModuleです)でエラーが発生し、私の人生では問題が何であるかを理解できません。最初は、仮想関数に体を与えるのを忘れることに関係があると思っていましたが、私の知る限り、すべてがここにあります。継承チェーンは少し長いですが、関連するソースコードを次に示します。他にどのような情報を提供すべきかわかりません。 注:コンストラクターがこのエラーが発生しているようです。 私のコード: class CGameModule : public CDasherModule { public: CGameModule(Dasher::CEventHandler *pEventHandler, CSettingsStore *pSettingsStore, CDasherInterfaceBase *pInterface, ModuleID_t iID, const char *szName) : CDasherModule(pEventHandler, pSettingsStore, iID, 0, szName) { g_pLogger->Log("Inside game module constructor"); m_pInterface = pInterface; } virtual ~CGameModule() {}; std::string GetTypedTarget(); std::string GetUntypedTarget(); bool DecorateView(CDasherView *pView) …
357 c++  gcc  g++ 

16
gcc makefileエラー:「ターゲットを作成するルールがありません...」
プロジェクトをコンパイルするためにメイクファイルでGCC(linux)を使用しようとしています。 このコンテキストでは解読できないように見える次のエラーが表示されます。 "No rule to make target 'vertex.cpp', needed by 'vertex.o'. Stop." これはメイクファイルです: a.out: vertex.o edge.o elist.o main.o vlist.o enode.o vnode.o g++ vertex.o edge.o elist.o main.o vlist.o enode.o vnode.o main.o: main.cpp main.h g++ -c main.cpp vertex.o: vertex.cpp vertex.h g++ -c vertex.cpp edge.o: edge.cpp edge.h g++ -c num.cpp vlist.o: vlist.cpp vlist.h …
356 gcc  makefile 

10
Linuxカーネルの可能性のある/可能性の低いマクロはどのように機能し、それらの利点は何ですか?
私はLinuxカーネルのいくつかの部分を調べていて、次のような呼び出しを見つけました。 if (unlikely(fd < 0)) { /* Do something */ } または if (likely(!err)) { /* Do something */ } 私はそれらの定義を見つけました: #define likely(x) __builtin_expect((x),1) #define unlikely(x) __builtin_expect((x),0) 最適化のためのものであることは知っていますが、どのように機能しますか?そして、それらを使用することでどのくらいのパフォーマンス/サイズの減少が期待できますか?そして、少なくともボトルネックコード(もちろん、ユーザー空間では)の面倒(そしておそらく移植性を失うこと)に値します。

5
__attribute __((constructor))はどのように正確に機能しますか?
セットアップが必要なことは明らかです。 正確にはいつ実行されますか? 括弧が2つあるのはなぜですか? ある__attribute__機能は?マクロ?構文? これはCで動作しますか?C ++? 機能する関数は静的である必要がありますか? いつ__attribute__((destructor))実行しますか? Objective-Cの例: __attribute__((constructor)) static void initialize_navigationBarImages() { navigationBarImages = [[NSMutableDictionary alloc] init]; } __attribute__((destructor)) static void destroy_navigationBarImages() { [navigationBarImages release]; }
347 c++  objective-c  c  gcc 


4
このC関数は常にfalseを返す必要がありますが、そうではありません
昔、フォーラムで興味深い質問を見つけました。その答えを知りたいのですが。 次のC関数を考えます。 f1.c #include <stdbool.h> bool f1() { int var1 = 1000; int var2 = 2000; int var3 = var1 + var2; return (var3 == 0) ? true : false; } これは常にfalseから戻るはずvar3 == 3000です。mainこの関数は次のようになります。 main.c #include <stdio.h> #include <stdbool.h> int main() { printf( f1() == true ? "true\n" : "false\n"); …
317 c  gcc 

9
Mac OS X 10.8 / Xcode 4.4でgccを使用/インストールする方法
Mountain Lion(Mac OS X 10.8)をインストールしましたが、gccが利用できなくなったようです。Xcode 4.4もインストールしたので、/ Developerディレクトリはもうありません。 MacポートとRuby宝石(ネイティブ拡張がある)の両方にgccが必要です。 Xcode 4.4にはgccが含まれていますか、それともgccをインストールする方法はありますか?
294 xcode  macos  gcc 

4
LinuxでGCCのデフォルトのインクルードパスを追加する方法
gccに$HOME/include通常のインクルードディレクトリに加えてファイルをインクルードしてもらいたいのですが、に類似しているようには見えません$LD_LIBRARY_PATH。 コンパイル時に(またはmakefileで)コマンドラインでインクルードディレクトリを追加できることはわかっていますが、ライブラリの場合のように、ここでは普遍的なアプローチが本当に必要です。

7
make / GCCにコマンドを表示させるにはどうすればよいですか?
コンパイルの問題をデバッグしようとしていますが、GCC(またはmakeか? これが私が見ている出力です: CCLD libvirt_parthelper libvirt_parthelper-parthelper.o: In function `main': /root/qemu-build/libvirt-0.9.0/src/storage/parthelper.c:102: undefined reference to `ped_device_get' /root/qemu-build/libvirt-0.9.0/src/storage/parthelper.c:116: undefined reference to `ped_disk_new' /root/qemu-build/libvirt-0.9.0/src/storage/parthelper.c:122: undefined reference to `ped_disk_next_partition' /root/qemu-build/libvirt-0.9.0/src/storage/parthelper.c:172: undefined reference to `ped_disk_next_partition' /root/qemu-build/libvirt-0.9.0/src/storage/parthelper.c:172: undefined reference to `ped_disk_next_partition' collect2: ld returned 1 exit status make[3]: *** [libvirt_parthelper] Error 1 私が見たいものはこれに似ているはずです: $ make gcc -Wall -c …
277 gcc  makefile  verbosity 

16
RVMでLionの下にRubyをインストールできない– GCCの問題
この問題に関するほとんどの質問は、Xcodeがないためです。Xcode 4.2がインストールされています。 インストールの試み: rvm install 1.9.3 Installing Ruby from source to: /Users/jamie/.rvm/rubies/ruby-1.9.3-p0, this may take a while depending on your cpu(s)... ruby-1.9.3-p0 - #fetching ruby-1.9.3-p0 - #extracted to /Users/jamie/.rvm/src/ruby-1.9.3-p0 (already extracted) Fetching yaml-0.1.4.tar.gz to /Users/jamie/.rvm/archives Extracting yaml-0.1.4.tar.gz to /Users/jamie/.rvm/src Configuring yaml in /Users/jamie/.rvm/src/yaml-0.1.4. Compiling yaml in /Users/jamie/.rvm/src/yaml-0.1.4. Installing yaml to …
268 ruby  gcc  rvm  osx-lion  xcode4.2 


10
GCCを使用して読み取り可能なアセンブリを生成しますか?
CのソースファイルでGCCを使用して、ニーモニックバージョンのマシンコードをダンプし、コードのコンパイル先を確認する方法を考えていました。あなたはJavaでこれを行うことができますが、私はGCCで方法を見つけることができませんでした。 私はアセンブリでCメソッドを書き直そうとしていますが、GCCがそれをどのように行うかを確認すると、大きな助けになります。
256 c  gcc  assembly 

3
コンストラクタの初期化リストの評価順序
いくつかの引数を取るコンストラクターがあります。リストされた順序で構築されていると想定していましたが、逆に構築されているために中止されたようです。引数を逆にすると、プログラムは異常終了しました。これは私が使用している構文の例です。この場合、a_はb_の前に初期化する必要があります。施工順序は保証できますか? 例えば class A { public: A(OtherClass o, string x, int y) : a_(o), b_(a_, x, y) { } OtherClass a_; AnotherClass b_; };
252 c++  gcc  c++-faq 

6
GCCダンププリプロセッサが定義
OverаэтотвопросестьответынаStack Overflowнарусском:Какузнатьсписоквсехопределённыхмакросов? コマンドラインからgcc / g ++がプリプロセッサ定義をダンプする方法はありますか?以下のようなI平均の事__GNUC__、__STDC__など。
248 gcc  g++  c-preprocessor 

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