【发布时间】:2009-10-08 21:56:51
【问题描述】:
我一直在尝试在我的 Mac (10.5) 上构建 logstalgia 项目 (http://code.google.com/p/logstalgia/)。我不必将其正确链接到系统库,而是构建了所有依赖项并将其添加到项目中。我是新手,但我确实认为我做得对,主要是因为我有两个更有经验的朋友这么说。
添加框架消除了所有编译错误,但我仍然收到链接器错误。似乎无法找到 main() 函数。我已经验证我在要编译的源代码中包含了 main.cpp(使用 XCode),并且没有意外的双重声明。我还验证了 main 函数的声明是否正确(没有缺少括号等)。
好像 XCode 没有以正确的顺序链接。任何帮助将不胜感激,我真的很高兴能遇到一个错误! (希望修复此问题不会打开闸门)。
谢谢, 汉密尔顿
PS - 如果有人愿意看,我绝对可以提供 Xcode 项目的 zip!
Checking Dependencies
Ld "/Users/hamiltont/Downloads/logstalgia-0.9.2 2/Untitled/build/Debug/Untitled" normal i386
cd "/Users/hamiltont/Downloads/logstalgia-0.9.2 2/Untitled"
setenv MACOSX_DEPLOYMENT_TARGET 10.5
/developer/usr/bin/g++-4.0 -arch i386 -isysroot /developer/SDKs/MacOSX10.5.sdk "-L/Users/hamiltont/Downloads/logstalgia-0.9.2 2/Untitled/build/Debug" -L/sw/lib "-L/Users/hamiltont/Downloads/logstalgia-0.9.2 2/Untitled/../../pcre-7.9/.libs" -L/opt/local/lib -L/sw/lib "-F/Users/hamiltont/Downloads/logstalgia-0.9.2 2/Untitled/build/Debug" -F/Users/hamiltont/Downloads/logstalgia-0.9.2 -F2/src/SDL.framework "-F/Users/hamiltont/Downloads/logstalgia-0.9.2 2/Untitled" -filelist "/Users/hamiltont/Downloads/logstalgia-0.9.2 2/Untitled/build/Untitled.build/Debug/Untitled.build/Objects-normal/i386/Untitled.LinkFileList" -mmacosx-version-min=10.5 -framework OpenGL -lpcre -lSDL -lSDL_image-1.2.0 -prebind -o "/Users/hamiltont/Downloads/logstalgia-0.9.2 2/Untitled/build/Debug/Untitled"
Undefined symbols:
"_main", referenced from:
start in crt1.10.5.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
【问题讨论】:
-
PS - 类似帖子:*.com/questions/1494407/…(不尝试构建共享库)*.com/questions/550455/…(我自己可能同样的问题,但我不知道如何验证)
标签: c++ xcode macos open-source linker