构建错误:ld:重复符号_canVirate

发布于 2024-11-17 00:00:50 字数 1883 浏览 5 评论 0原文

下面是我的构建日志。我已经尝试了所有常见的错误修复解决方案:删除构建文件夹、清理、重新启动 Xcode 等。

LD 构建/调试-iphonesimulator/SquirrelGame.app/SquirrelGame 普通 i386 光盘 /用户/学生/桌面/SquirrelGame setenv MACOSX_DEPLOYMENT_TARGET 10.6 设置环境路径 “/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin” /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/用户/学生/桌面/SquirrelGame/build/Debug-iphonesimulator -F/用户/学生/桌面/SquirrelGame/build/Debug-iphonesimulator -F/Users/Student/Desktop/SquirrelGame -filelist /Users/Student/Desktop/SquirrelGame/build/SquirrelGame.build/Debug-iphonesimulator/SquirrelGame.build/Objects-normal/i386/SquirrelGame.LinkFileList -mmacosx-version-min =10.6 -all_load -ObjC -Xlinker -objc_abi_version -Xlinker 2 -weak_framework基础 -weak_framework UIKit -framework CoreGraphics -framework AudioToolbox -framework CFNetwork -framework CoreLocation -weak_framework MapKit -框架 QuartzCore -框架安全 -框架 系统配置-lsqlite3.0 -framework MediaPlayer -framework AVFoundation -framework MessageUI -framework MobileCoreServices -framework AddressBook -framework AddressBookUI -weak_framework GameKit -lz.1.2.3 -framework OpenFeint -o /Users/Student/Desktop/SquirrelGame/build/Debug-iphonesimulator/SquirrelGame.app/SquirrelGame

ld:重复符号 _canVirate /Users/Student/Desktop/SquirrelGame/build/SquirrelGame.build/Debug-iphonesimulator/SquirrelGame.build/Objects-normal/i386/SquirrelGameViewController.o 和 /Users/Student/Desktop/SquirrelGame/build/SquirrelGame.build/Debug-iphonesimulator/SquirrelGame.build/Objects-normal/i386/SquirrelGameAppDelegate.ocollect2:ld返回1退出状态 命令 /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 失败,退出代码为 1

Below is my build log. I've tried all the usual error-fixing solutions: Deleting build folder, cleaning, restarting Xcode, etc.

Ld
build/Debug-iphonesimulator/SquirrelGame.app/SquirrelGame
normal i386 cd
/Users/Student/Desktop/SquirrelGame
setenv MACOSX_DEPLOYMENT_TARGET 10.6
setenv PATH
"/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2
-arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk
-L/Users/Student/Desktop/SquirrelGame/build/Debug-iphonesimulator
-F/Users/Student/Desktop/SquirrelGame/build/Debug-iphonesimulator
-F/Users/Student/Desktop/SquirrelGame -filelist /Users/Student/Desktop/SquirrelGame/build/SquirrelGame.build/Debug-iphonesimulator/SquirrelGame.build/Objects-normal/i386/SquirrelGame.LinkFileList -mmacosx-version-min=10.6 -all_load -ObjC -Xlinker -objc_abi_version -Xlinker 2 -weak_framework Foundation -weak_framework UIKit -framework CoreGraphics -framework AudioToolbox
-framework CFNetwork -framework CoreLocation -weak_framework MapKit
-framework QuartzCore -framework Security -framework
SystemConfiguration -lsqlite3.0
-framework MediaPlayer -framework AVFoundation -framework MessageUI
-framework MobileCoreServices -framework AddressBook -framework AddressBookUI -weak_framework GameKit
-lz.1.2.3 -framework OpenFeint -o /Users/Student/Desktop/SquirrelGame/build/Debug-iphonesimulator/SquirrelGame.app/SquirrelGame

ld: duplicate symbol _canVirate in
/Users/Student/Desktop/SquirrelGame/build/SquirrelGame.build/Debug-iphonesimulator/SquirrelGame.build/Objects-normal/i386/SquirrelGameViewController.o
and
/Users/Student/Desktop/SquirrelGame/build/SquirrelGame.build/Debug-iphonesimulator/SquirrelGame.build/Objects-normal/i386/SquirrelGameAppDelegate.o collect2: ld returned 1 exit status
Command
/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2
failed with exit code 1

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小ぇ时光︴ 2024-11-24 00:00:50

没有代码很难准确地说出,所以请发布 canVirate 定义。
通常该错误意味着 canVirate 是头文件中定义的全局变量。编译器在包含标头的每个模块中创建变量。您应该在标头中声明 canVirate,但在 SomeModule.m 文件中定义它:

SomeModule.h:

extern int canVirate;

SomeModule.m:

int canVirate = 123;

It is hard to say exactly without code, so please post canVirate definition.
Usually that error means that canVirate is global variable defined in header file. Compiler creates the variable in every module that includes the header. You should declare canVirate in header, but define it in SomeModule.m file:

SomeModule.h:

extern int canVirate;

SomeModule.m:

int canVirate = 123;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文