ICTCLAS2016 linux C++版本 使用教程 Eclipse下开发C/C++程序之头文件,库文件引用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lilil371324/article/details/51416124

欢迎使用NLPIR/ICTCLAS2014分词系统

       NLPIR分词系统前身为2000年发布的ICTCLAS词法分析系统,从2009年开始,为了和以前工作进行大的区隔,并推广NLPIR自然语言处理与信息检索共享平台,调整命名为NLPIR分词系统。张华平博士先后倾力打造十余年,内核升级十余次,先后获得了2010年钱伟长中文信息处理科学技术奖一等奖,2003年国际SIGHAN分词大赛综合第一名,2002年国内973评测综合第一名。全球用户突破30万,包括中国移动、华为、中搜、3721、NEC、中华商务网、硅谷动力、云南日报等企业,清华大学、新疆大学、华南理工、麻省大学等机构:同时,ICTCLAS广泛地被《科学时报》、《人民日报》海外版、《科技日报》等多家媒体报道。您可以访问Google进一步了解ICTCLAS的应用情况。
       NLPIR提供各类二次开发接口,特别欢迎相关的科研人员、工程技术人员使用,并承诺非商用应用永久免费的共享策略。访问http://ictclas.nlpir.org/(自然语言处理与信息检索共享平台),您可以获取NLPIR系统的最新版本,并欢迎您关注张华平博士的新浪微博 @ICTCLAS张华平博士 交流。
       NLPIR是一套专门针对原始文本集进行处理和加工的软件,提供了中间件处理效果的可视化展示,也可以作为小规模数据的处理加工工具。用户可以使用该软件对自己的数据进行处理。

NLPIR网络搜索与挖掘共享开发平台的十一种功能:

  1. 全文精准检索

       支持文本、数字、日期、字符串等各种数据类型,多字段的高效搜索,支持AND/OR/NOT以及NEAR邻近等查询语法,支持维语、藏语、蒙语、阿拉伯、韩语等多种少数民族语言的检索。可以无缝地与现有文本处理系统与数据库系统融合。
    
  2. 新词发现:

       从文件集合中挖掘出内涵的新词语列表,可以用于用户专业词典的编撰;还可以进一步编辑标注,导入分词词典中,从而提高分词系统的准确度,并适应新的语言变化。
    
  3. 分词标注:

       对原始语料进行分词、自动识别人名地名机构名等未登录词、新词标注以及词性标注。并可在分析过程中,导入用户定义的词典。
    
  4. 统计分析与术语翻译

       针对切分标注结果,系统可以自动地进行一元词频统计、二元词语转移概率统计(统计两个词左右连接的频次即概率)。针对常用的术语,会自动给出相应的英文解释。
    
  5. 文本聚类及热点分析

       能够从大规模数据中自动分析出热点事件,并提供事件话题的关键特征描述。同时适用于长文本和短信、微博等短文本的热点分析。
    
  6. 分类过滤

       针对事先指定的规则和示例样本,系统自动从海量文档中筛选出符合需求的样本。
    
    1. 自动摘要

      能够对单篇或多篇文章,自动提炼出内容的精华,方便用户快速浏览文本内容。

    2. 关键词提取

      能够对单篇文章或文章集合,提取出若干个代表文章中心思想的词汇或短语,可用于精化阅读、语义查询和快速匹配等。

    3. 文档去重

      能够快速准确地判断文件集合或数据库中是否存在相同或相似内容的记录,同时找出所有的重复记录。

    4. HTML正文提取

      自动剔除导航性质的网页,剔除网页中的HTML标签和导航、广告等干扰性文字,返回有价值的正文内容。适用于大规模互联网信息的预处理和分析。

    5. 编码自动识别与转换

      自动识别文档内容的编码,并进行自动转换,目前支持Unicode/BIG5/UTF-8等编码自动转换为简体的GBK,同时将繁体BIG5和繁体GBK进行繁简转化。

    6. 正负面分析

      自动分析文本内涵的正负面情感,并对情感分析对象进行综合。

1 ICTCLAS2016版本 NLPIR/ICTCLAS2016分词系统下载包

http://ictclas.nlpir.org/newsdownloads?DocId=389
软件包解压之后如下图所示:
 图1. 软件包解压后的文件图
图1. 软件包解压后的文件图
使用到的文件夹有Data,lib,include。需要使用实例是,也可以添加sample文件夹。

2 动态链接库(.so)的导入(基于linux eclipse CDT 编译环境)

  1. 项目工程如图所示:
    图2 项目工程图
    图2 项目工程图
  2. 头文件导入
 Project->Properties->C/C++ Build->Settings->Tool Settings->GCC C++ Linker->includes

添加Include paths(-l): "${workspace_loc:/${ProjName}/src/include}"
NLPIR.h文件所在的lib文件目录
添加Include files(-include):"${workspace_loc:/${ProjName}/src/include/NLPIR.h}"
NLPIR.h文件
图3 添加includes
图3 添加includes
3. 链接库调用
本次测试环境为linux 64位。编译环境为eclipse CDT。
导入步骤:

 Project->Properties->C/C++ Build->Settings->Tool Settings->GCC C++ Linker->Libraries

添加Libraries (-l): NLPIR
添加Library search path (-L): "${workspace_loc:/${ProjName}/Debug}"
lib文件下的libNLPIR.so的路径
图4添加Libraries

图4 添加Libraries
4. 修改环境变量
以上均做正确的话编译链接是能通过的,但是在运行时会报错error while loading shared libraries: libShared.so: cannot open shared object file: No such file or directory ,这时需要修改环境变量。在工程处右键,Run As->Run Configurations,选择Environment,如下图:
图5 修改环境变量
图5 修改环境变量
新加一个环境变量,名称必需是 LD_LIBRARY_PATH,值为动态链接库所在的路径:${workspace_loc:/ICTCLAS/lib/linux64}

   以上就完成了linux下生成动态链接库和使用动态链接库。

猜你喜欢

转载自blog.csdn.net/lilil371324/article/details/51416124