ltp是一个比较全的自然语言处理工具,可以用它进行分词、词性标注、语法分析等任务。
--<!more>--
准备
下载
下载ltp和ltp4j,在cmake官网下载并安装相应版本的cmake,并且下载ant。
构建VC Project
先在ltp4j目录下使用命令ant
,生成新文件。
在ltp4j的目录下新建build文件夹,然后在cmake的gui里生成编译程序
编译ltp和ltp4j
类似上面的步骤,用cmake给ltp文件夹也生成ALL_BUILD.vcxproj
等文件,并生成之后用vs2015打开,用Release X64
的方式编译,能够成功。
生成之后用vs2015打开ltp4j的ALL_BUILD.vcxproj
,把ltp文件夹下的libRelease
的所有文件拷贝到ltp4j的build
下,进行编译。
如果成功,把ltp4j下libsRelease
下的所有文件和splitsnt、segmentor、postagger、ner、parser、srl
六个dll拷贝到自己项目的根文件下。
遇到的问题
合适的安装版本
我是win7 64位的系统,vs安装的是2015社区版
结果在cmake选来选去都不对,总说我没有安装c++环境
然后看到有博客看到用命令行解决问题,于是也在CMakeLists.txt
中添加了
set(BUILD_USE_64BITS on)
再分别运行
cmake -G "Visual Studio 14 2015 Win64" ..
cmake --build .
对了一部分,但是还是出错了
原来是文件夹位置出错了,改了之后再生成,就ok啦
ps:
其实这里又用回了cmake 的gui,编译成功的,选择的是"Visual Studio 14 2015 Win64
。也就是说自己原来在cmake选择正确就没这么多事了/(ㄒoㄒ)/~~
编译出错
是找不到文件的问题,于是我在Everthing里面搜了一下,发现是在
于是把这几个文件拷贝到对应文件夹下面
重新打开项目,出现新的问题,缺少lib
根据上面的步骤生成并导入ltp的相关文件,还是出现了下面的错误:
但是尽管有这个错误,我还是成功在ltp4j下libsRelease
找到了一些生成文件,导入到自己的项目也成功编译了。