1
我想我的makefile有问题。我正在写这个程序:我的makefile问题
Q2.cpp
包含主要。Agent.cpp
Agent.h
Timing.cpp
Timing.h
RandomDouble.cpp
RandomDouble.cpp
而且我用的标题randoma.h
在RandomDouble.cpp
。 我下载的文件randomaelf64.a
我写这个Makefile:
Q2 : Q2.o Agent.o Timing.o RandomDouble.o
g++ -Wall -g randomaelf64.a RandomDouble.o Q2.o Agent.o Timing.o -o Q2
Q2.o : Q2.cpp Agent.h Timing.h
g++ -Wall -g -c Q2.cpp -o Q2.o
Agent.o : Agent.cpp Agent.h Timing.h RandomDouble.h PrintQ2.h
g++ -Wall -g -c Agent.cpp -o Agent.o
RandomDouble.o : RandomDouble.cpp RandomDouble.h randoma.h
g++ -Wall -g -c RandomDouble.cpp -o RandomDouble.o
Timing.o : Timing.cpp Timing.h Agent.h
g++ -Wall -g -c Timing.cpp -o Timing.o
clear :
rm *.o Q2
除第一个命令,每个G ++ ..命令工作时,我单独做。 即使当我添加main()
到RandomDouble.cpp
并运行:
g++ -Wall -g randomael64.a RandomDouble.cpp -o rand
它的工作。所以我认为可能问题出在我的makefile上。
当我运行make
我得到这个错误:
RandomDouble.o: In function `InitSeed()':
/cs/stud/ofrenk33/CPP/ex1/RandomDouble.cpp:11: undefined reference to `MersenneRandomInit'
RandomDouble.o: In function `InitSeed(int)':
/cs/stud/ofrenk33/CPP/ex1/RandomDouble.cpp:16: undefined reference to `MersenneRandomInit'
RandomDouble.o: In function `GetRandomDouble()':
/cs/stud/ofrenk33/CPP/ex1/RandomDouble.cpp:21: undefined reference to `MersenneRandom'
Agent.o: In function `Agent::SendMessage()':
/cs/stud/ofrenk33/CPP/ex1/Agent.cpp:31: undefined reference to
...
make: *** [Q2] Error 1
我必须说,有在randoma.h
这些都是randomaelf64.a
库中声明函数。
我该如何解决这个问题?
那么究竟是什么_not_为您工作?你是否收到错误信息?如果不是,你的问题有哪些症状? – 2010-09-02 10:37:16