2

这可能听起来很基本/天真……但自从我使用 C/C++ 以来已经很久了,并且对此感到迷茫……

我正忙于开始使用意见查找器,这需要我获得 SUNDANCE 4.3.7。事实证明,编译 SUNDANCE 比我想象的要付出更大的努力。

按照说明,我启动 install_sundace 脚本,但收到此错误...看起来我的编译环境未正确检测到...

我已经尝试过的几件事-

  1. install_sundance 脚本使用 c-shell。作为测试,在安装的 C shell 中并尝试查看我是否仍然可以让我的 C 编译环境正常。这很好用。

  2. 我尝试编写一个基本程序,它至少使用一个除 stdio 之外的库,并且它可以工作(我尝试过 Strings.h)

我收到的错误消息-正在运行的命令-

g++ -Wall -Wno-deprecated -pipe -g -static -I../include -DHOME=\"/media/misc/development/opinionfinder/software/sundance-4.37/\" -c -fPIC -o shared/activation.o activation.C

和错误信息 -

In file included from nlptypes.h:16:0,
                 from activation.h:46,
                 from activation.C:26:
../include/sunstr.h: In constructor ‘sunstr::SRef::SRef(const char*)’:
../include/sunstr.h:99:21: error: ‘strlen’ was not declared in this scope
../include/sunstr.h:102:20: error: ‘strcpy’ was not declared in this scope
../include/sunstr.h: In member function ‘void sunstr::SRef::Assign(const char*)’:
../include/sunstr.h:131:26: error: ‘strlen’ was not declared in this scope
../include/sunstr.h:136:19: error: ‘strcpy’ was not declared in this scope
4

1 回答 1

1

从表面上看,标题中似乎缺少#include <string.h>或。#include <cstring>sunstr.h

使用<cstring>,您还需要一些using子句 - 两个函数各一个。

您不using namespace std;向标题添加子句。

于 2011-10-08T17:24:43.393 回答