1

これは私の C++ プロジェクト内でどのような種類のリンク エラーを指していますか? 私が考えている唯一のことは、SQLite3 ヘッダーがプロジェクトの一部であるということです。

duplicate symbol _main in:
/Users/.../Build/Intermediates/AssetInspector.build/Debug-iphoneos/AssetInspector.build/Objects-normal/armv7/main.o
/Users/.../Build/Intermediates/AssetInspector.build/Debug-iphoneos/AssetInspector.build/Objects-normal/armv7/shell.o
ld: 2 duplicate symbols for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
4

2 に答える 2

3

問題は、関数 main が main.c と shell.c の両方で定義されていることです。

これらの .c ファイルのオブジェクト ファイルの 1 つだけにリンクし、両方にはリンクしないでください。

于 2012-11-07T16:04:29.450 に答える
2

SQLite 融合をプロジェクトにコンパイルするときは、ファイルのみを使用してください。sqlite3.c他のファイルは必要ありません。(shell.csqlite3コマンドライン ツールのソース コードです。)

于 2012-11-07T16:35:06.307 に答える