Cocos2d-x - clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)
Cocos2d-x - clang: error: linker command failed with exit code 1 (use -v to see invocation)
我在 Cocos2d-x (2.1.5) 中收到这些消息,这是在做"Cocos2d-x 初学者指南"一书中的教程(空气曲棍球)时。
我已经检查了Xcode中的所有"#include",构建阶段等,并在"编译源代码"(约250个文件)中执行了"验证设置"并筛选了互联网,并希望任何人对此的看法。我还没有在.cpp文件中提到它们。
顺便说一句,书中的 Cocos2d-x 版本与我使用的版本不同,我查看了书籍网站并从作者那里找到了这个:作者对教程版本的评论
这是我第一次尝试非Objective-C和Cocos2d-x。
The GameLayer.h:
#ifndef __GAMELAYER_H__
#define __GAMELAYER_H__
#define GOAL_WIDTH 400
#include "cocos2d.h"
#include "GameSprite.h"
using namespace cocos2d;
class GameLayer : public cocos2d::CCLayer {
GameSprite *_player1;
GameSprite *_player2;
GameSprite *_ball;
CCArray *_players;
CCLabelTTF *_player1ScoreLabel;
CCLabelTTF *_player2ScoreLabel;
CCSize _screenSize;
int _player1Score;
int _player2Score;
void playerScore (int player);
public:
~GameLayer();
virtual bool init();
static CCScene *scene();
CREATE_FUNC(GameLayer);
virtual void ccTouchesBegan(CCSet* pTouches, CCEvent* event);
virtual void ccTouchesMoved(CCSet* pTouches, CCEvent* event);
virtual void ccTouchesEnded(CCSet* pTouches, CCEvent* event);
void update (float dt);
};
#endif // __GAMELAYER_H__
消息:
clang: warning: argument unused during compilation: '-websockets'
Undefined symbols for architecture i386:
"GameLayer::ccTouchesBegan(cocos2d::CCSet*, cocos2d::CCEvent*)", referenced from:
vtable for GameLayer in GameLayer.o
"GameLayer::ccTouchesEnded(cocos2d::CCSet*, cocos2d::CCEvent*)", referenced from:
vtable for GameLayer in GameLayer.o
"GameLayer::ccTouchesMoved(cocos2d::CCSet*, cocos2d::CCEvent*)", referenced from:
vtable for GameLayer in GameLayer.o
"GameLayer::update(float)", referenced from:
vtable for GameLayer in GameLayer.o
"non-virtual thunk to GameLayer::ccTouchesBegan(cocos2d::CCSet*, cocos2d::CCEvent*)", referenced from:
vtable for GameLayer in GameLayer.o
"non-virtual thunk to GameLayer::ccTouchesEnded(cocos2d::CCSet*, cocos2d::CCEvent*)", referenced from:
vtable for GameLayer in GameLayer.o
"non-virtual thunk to GameLayer::ccTouchesMoved(cocos2d::CCSet*, cocos2d::CCEvent*)", referenced from:
vtable for GameLayer in GameLayer.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
你没有在 GameLayer.ccp 中实现这些功能。按照教程,它将教您如何实现它们。
相关文章:
- 没有头文件如何使用c ++调用其他模块中的函数?
- 使用 %s 调用 printf 并传递零长度的字符*是未定义的行为吗?
- 使用 "()" 调用构造函数不同于"{}"
- 使用 c++ 调用.dll的默认参数的函数
- 当我同时将 T& 和 T 作为同名函数的返回类型时,如何使用 T& 调用函数
- 使用 P/调用传递取消标志时是否需要同步
- 当被调用方法使用调用方已锁定的同一锁时,如何避免死锁
- 在QT Creator中使用C++调用Python脚本
- C++按引用传递:如何使用调用堆栈
- 如何使用调用和别名指令在 llvm 字节码中查找函数名称
- 如何使用调用和分配指令在 llvm 字节码中查找类名
- 使用C++调用带有库的powershell脚本
- c++-如何使用调用函数的对象
- 使用 C++ 调用函数,其名称两边带有括号
- 如何 使用 C++ 调用 LabVIEW 构建 的 DLL
- 使用c#调用返回struct数组的非托管dll函数
- CUDA c++:使用调用模板内核的模板函数
- 如何创建win32智能手机dll并在WinCE中使用c#调用dll
- 使用 "->" 调用函数
- 错误:使用 C++ 调用 没有匹配函数