加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Objective-c链接错误与重复符号错误

发布时间:2020-12-16 09:28:25 所属栏目:百科 来源:网络整理
导读:我是Objective C的新手,在尝试导入我定义的类时遇到以下错误 Building target “MusicCube” of project “MusicCube” with configuration “Debug” — (1 error) cd /Users/varsha_vijay/Downloads/MusicCube setenv MACOSX_DEPLOYMENT_TARGET 10.5 seten
我是Objective C的新手,在尝试导入我定义的类时遇到以下错误

Building target “MusicCube” of project “MusicCube” with configuration “Debug” — (1 error)
     cd /Users/varsha_vijay/Downloads/MusicCube
    setenv MACOSX_DEPLOYMENT_TARGET 10.5
    setenv PATH "/Xcode3.1.4/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Xcode3.1.4/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Xcode3.1.4/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Xcode3.1.4/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.1.sdk -L/Users/varsha_vijay/Downloads/MusicCube/build/Debug-iphonesimulator -F/Users/varsha_vijay/Downloads/MusicCube/build/Debug-iphonesimulator -filelist /Users/varsha_vijay/Downloads/MusicCube/build/MusicCube.build/Debug-iphonesimulator/MusicCube.build/Objects-normal/i386/MusicCube.LinkFileList -mmacosx-version-min=10.5 -framework Foundation -framework UIKit -framework OpenGLES -framework QuartzCore -framework AudioToolbox -framework CoreGraphics -framework OpenAL -o /Users/varsha_vijay/Downloads/MusicCube/build/Debug-iphonesimulator/MusicCube.app/MusicCube
ld: duplicate symbol _num_flight_vertices in /Users/varsha_vijay/Downloads/MusicCube/build/MusicCube.build/Debug-iphonesimulator/MusicCube.build/Objects-normal/i386/Flight.o and /Users/varsha_vijay/Downloads/MusicCube/build/MusicCube.build/Debug-iphonesimulator/MusicCube.build/Objects-normal/i386/EAGLView.o
collect2: ld returned 1 exit status
  ld: duplicate symbol _num_flight_vertices in /Users/varsha_vijay/Downloads/MusicCube/build/MusicCube.build/Debug-iphonesimulator/MusicCube.build/Objects-normal/i386/Flight.o and /Users/varsha_vijay/Downloads/MusicCube/build/MusicCube.build/Debug-iphonesimulator/MusicCube.build/Objects-normal/i386/EAGLView.o
  collect2: ld returned 1 exit status
Build failed (1 error)

这是我的计划组织方式.

1.我定义了一个c头文件vertices.h

#ifndef VERTICES_H
#define VERTICES_H
const int num_flight_vertices = 8;
#endif

2.我在Flight.h类中导入此头文件

#import "vertices.h"

@interface Flight : NSObject {

3.我在我的EAGLView.h类中导入了这个Flight.h文件

#import "vertices.h"
@interface EAGLView : UIView {
@private
Flight *flight;

当我构建这个时,我得到了错误.

有人可以帮我弄这个吗.

谢谢,
VJ

解决方法

您是否在项目的其他任何位置导入vertices.h?

通常,您在头文件中声明常量,并在实现文件中定义它们,这可以避免此问题.所以你可以这样做:

// vertices.h
#ifndef VERTICES_H
#define VERTICES_H
extern const int num_flight_vertices;
#endif

// vertices.c
#import vertices.h
const int num_flight_vertices = 8;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读