我只是用fuzzylogic库(eFLL库)编写一个模糊代码。我在linux环境中使用它并尝试用g ++编译它。我在g ++路径中解压缩了库。但这些错误来自我,我不知道这些是什么。我制作一个Makefile并尝试解决问题,但没有发生任何事情。有谁知道我怎么能解决这个问题?
代码的一部分是这样的:
include <iostream.h>
#include "../FuzzyRule.h"
#include "../FuzzyComposition.h"
#include "../Fuzzy.h"
void setup(){
Fuzzy* fuzzy = new Fuzzy();
FuzzyInput* Threat = new FuzzyInput(1);
FuzzySet* lowThreat = new FuzzySet::FuzzySet(0, 1.875, 1.875, 3.75),
一部分错误是这样的:
fuzzycode2.cpp :(。text + 0x23):未定义引用`Fuzzy :: Fuzzy()'
fuzzycode2.cpp :(。text + 0x61):未定义引用 `FuzzyInput :: FuzzyInput(INT)'
fuzzycode2.cpp :(。text + 0xbb):未定义引用 `FuzzySet :: FuzzySet(float,float,float,float)'
fuzzycode2.cpp :(。text + 0xed):未定义引用 `FuzzyIO :: addFuzzySet(FuzzySet *)'
fuzzycode2.cpp :(。text + 0x129):未定义引用 `FuzzySet :: FuzzySet(float,float,float,float)'
答案 0 :(得分:2)
将标题包含在C ++文件中是不够的。您还需要在链接时指定库文件及其位置,例如:
g++ your-files-go-here -o some-name -Llocation-of-the-library -llibrary-name
查看这个特定“库”的页面,它似乎只包含一堆目标文件,您需要将它们放在一起放入库中或在链接时显式包含。