一个班级给了我三个 .o 文件。
f0.o f1.o f11.o
我不知道它们里面是什么,我只知道它们有一个功能
评估(int *pj);
我的任务是使用爬山者和遗传算法确定该函数的最大值
.o 文件是在 ubuntu 上编译的。我正在运行 Windows 8 64 位。我已经下载了 cygwin32 位和 cygwin64 位。.o 文件是 32 位的。
我试图链接它们
g++ -std=c++11 f0.o main.o -lm
但是,我得到了这些错误(f1.o 和 f11.o 的许多其他错误)
f0.o: In function `Z41__static_initialization_and_destruction_0ii':
f0.cpp:(.text+0x9c): undefined reference to `ZNSt8ios_base4InitC1Ev'
f0.cpp:(.text+0xa1): undefined reference to `ZNSt8ios_base4InitD1Ev'
f0.cpp:(.text+0xa9): undefined reference to `_dso_handle'
f0.cpp:(.text+0xb9): undefined reference to `_cxa_atexit'
/tmp/ccdsysP1.o:main.cpp:(.text+0x4f): undefined reference to `eval(int*)'
我试过用谷歌搜索这些,但没有得到合理的结果
谁能告诉我怎么了?
这是来自 main.cpp 的代码
#include <iostream>
using namespace std;
double eval(int *pj);
int main()
{
int vec[150];
int i;
for(i = 0; i < 150; i++){
vec[i] = 1;
}
cout << eval(vec) << endl;
//printf("Fitness = %lf\n", eval(vec));
}