0

私は C++ を初めて使用し、プログラムをコンパイルしようとして問題が発生しています。を含むファイルと、それぞれに対応するDriver.cppファイルを含むmain()2 つのヘッダー ファイルがあり.cppます。それらはすべて同じディレクトリにあります。このDriver.cppファイルは、残りの作業を行う他のヘッダー ファイルの 1 つの関数を呼び出すだけです。私の問題は、「ファイルで最初に参照された未定義のシンボル」エラーが発生し続けるため、コードをコンパイルできないことです。コンパイル コードを記述するさまざまな方法を試しましたが、どれも機能しません。これが私が試したものです:

"g++ -lm -o outputfile headerOne.cpp headerTwo.cpp Driver.cpp" 

誰かが私を助けることができれば、私はそれを大いに感謝します. ありがとう!

編集:ちなみに、このコードを Linux に入れる前に Visual Studio で試してみましたが、うまくいきました。それが何かを意味するかどうかはわかりませんが、ここに追加すると思いました。コードを添付する必要がある場合はお知らせください。

4

2 に答える 2

1

私はそれを考え出した!.cpp ファイルで .h ファイルの "extern" として定義された変数がいくつかなく、関数定義で "inline" が欠落していたことが判明しました。とにかく、すべてのあなたの助けに感謝します!

于 2013-02-19T21:59:45.210 に答える
0

あなたのコードはビジュアル スタジオで動作するので、インクルードが適切であると仮定します。このリンクを読むと、Linux 環境のガイダンスが得られる可能性があります。

http://gcc.gnu.org/onlinedocs/cpp/Search-Path.html

于 2013-02-19T21:50:58.740 に答える