undefined reference collect2 error ld返回1退出状态

时间:2014-12-09 18:15:05

标签: c++ linux reference compiler-errors

我有一个我无法理解的问题。我在eclipse 4.2中编写了一个c ++程序,我的程序在eclipse中编译并运行,但是当我试图在“终端”上编译时,它拒绝编译声称我没有声明构造函数和析构函数。

确切的错误消息是:

bin/Run.o: In function 'main':
/users...../src/Run.cpp:16: undefined reference to 'Linker::Linker()'
/users...../src/Run.cpp:17: undefined reference to 'Linker::start()'
/users...../src/Run.cpp:17: undefined reference to 'Linker::~Linker()'
/users...../src/Run.cpp:17: undefined reference to 'Linker::~Linker()' 
collect2: error: Id returned 1 exit status
make:*** [RoadSimulator] Error 1

我的Run.cpp:

#include <studio.h>
#include <iostream>
#include "../include/Linker.h"
using namespace std;
int main(int argc, char *argv[]) {
Linker c;
c.start();
}

我只会写出我认为相关的部分。 我的Linker.h:

#ifndef LINKER_H_
#define LINKER_H_
#include<string>
#include <sstream>
#include <fstream>
#include "../include/Maker.h"

using namespace std;
class Linker {
public:
Linker();
~Linker();
void start();

private:
Maker c;
bool hadMove;
int eventIndex;
int commandIndex;
// i have more private function but it doesn't relevant  

我的Linker.cpp: //我这里只写相关的鳕鱼:

#include "../include/Linker.h"
Linker::Linker() :time(1) , hadMove(false) , eventIndex(0) , commandIndex(0){}
Linker::~Linker(){}
void Linker::start(){
c.SetRoadMapJunctionMap();
c.readCommands();
c.readEvents();
.......}

我的makefile是一个大文件,如果有必要我会上传它。 谢谢你们。

0 个答案:

没有答案