在我的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)
答案 0 :(得分:3)
问题是函数main在main.c和shell.c中定义。
您应该只链接那些.c文件中的一个目标文件而不是两者
答案 1 :(得分:2)
在将SQLite合并编译到项目中时,请仅使用 sqlite3.c
文件。
不需要其他文件。
(shell.c
是sqlite3
命令行工具的源代码。)