Sikuli安装

1.  卸载旧的JDK版本

若无JDK或JRE需卸载,则跳过此步。

1)     终端输入命令java -version查看安装的JAVA 组件。若提示已存在java 版本。查看版本号。

测试机器显示的版本信息如下:

java version"9"

Java(TM) SERuntime Environment (build 9+181)

JavaHotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)

2)     用rpm -qa命令查看所有的软件包,搜索java关键字。找出已经安装的java版本。测试机器找到的版本为:java-1.7.0-openjdk-1.7.0.25-2.3.10.3.nk.1.x86_64

 

3)     用yum -y remove java-1.7.0-openjdk-1.7.0.25-2.3.10.3.nk.1.x86_64 命令[未知作者1] ,删除此软件包。测试机器打印删除信息如下:

…...

移除  1 软件包 (+1 依赖软件包)

安装大小:91 M

Downloadingpackages:

Running transactioncheck

Runningtransaction test

Transactiontest succeeded

Runningtransaction

警告:RPM 数据库已被非 yum 程序修改。

  正在删除    : icedtea-web-1.4-2.nk.2.x86_64                                                                                                                              1/2

  正在删除    :1:java-1.7.0-openjdk-1.7.0.25-2.3.10.3.nk.1.x86_64                                                                                                          2/2

  验证中      : 1:java-1.7.0-openjdk-1.7.0.25-2.3.10.3.nk.1.x86_64                                                                                                          1/2

  验证中      : icedtea-web-1.4-2.nk.2.x86_64                                                                                                                               2/2

 

删除:

  java-1.7.0-openjdk.x86_641:1.7.0.25-2.3.10.3.nk.1                                                                                                                            

作为依赖被删除:

  icedtea-web.x86_640:1.4-2.nk.2                                                                                                                                               

其后用相同的步骤,删除搜索出的JAVA相关程序包:

javapackages-tools-0.14.1-2.nk.1.noarch

tzdata-java-2013c-1.nk.3.noarch

4)     卸载完毕之后,在终端输入:javac 或java -version 此时终端会提示:未找到命令,即代表此时原来的JDK版本已经卸载了。已经完成了对JDK的卸载。--在测试机上,删除上面三个软件包后,还是能看到java的软件包,应该是卸载不完全?!若卸载不完全,则先安装JDK 8.0,再更改profile配置。

 
2.  安装jdk 8.0版本和配置

1)     将jdk-8u151-linux-x64.rpm安装文件,拷贝到/usr/lib目录,用rpm -ivh jdk-8u151-linux-x64.rpm安装。生成的java文件夹在/usr目录下。

2)     若卸载旧的JDK未成功,则尝试用命令sudo gedit /etc/profile打开profile文件,在文件最后添加如下语句:

#set java environment

exportJAVA_HOME=/usr/java/jdk1.8.0_151

exportJRE_HOME=/usr/java/jdk1.8.0_151/jre

exportCLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

exportPATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

添加后,保存此文件。

再在终端输入命令:source /etc/profile。

原文件配置,备注供参考:

# We are Setting environment variables forJAVA-9

JAVA_HOME=/usr/java/jdk-9

JAVA_BIN=/usr/java/jdk-9/bin

PATH=$JAVA_BIN:$PATH

CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

CATALINA_HOME=/usr/local/apache-tomcat-9.0.1

export JAVA_HOME JAVA_BIN PATH CLASSPATH

3) 最后,在终端输入命令:javac -version,或者java –version, 可以看到终端关于java的版本,已经变成了新安装的JDK 8。表示JDK环境变量就配置成功了。

4) 重启电脑,让profile设置更新到系统。


3.  安装OpenCV 

1) cmake安装

a.   OpenCV 2.2以后版本需要使用Cmake生成makefile文件,因此需要先安装cmake。这个软件可以在linux内直接安装,但是yum安装的版本可能会太旧,需要安装3.0及之后的版本,请直接参考步骤b。

输入:yum -install cmake

      y

      y

安装完成 cmake。

输入 cmake -version查看版本安装信息。显示如下:

[root@localhostusr]# cmake -version

cmake version 2.8.11

 

b.   若a步骤安装的版本太旧,则需要去官网(https://cmake.org/download/)下载新版本,重新安装。下载“cmake-3.10.0-rc3.tar.gz”版本后,拷贝到目录:/usr,终端输入命令解压:tar -xvzf cmake-3.10.0-rc3.tar.gz。

c.   解压后打开/usr/cmake-3.10.0-rc3目录,运行bootstrap文件。

d.      运行完bootstrap之后,在终端输入gmake(如果gmake命令不行,试试cmake,反之亦然)命令。

e.      make命令运行完,再输入gmake install(如果gmake install 命令不行,试试cmake install,反之亦然)命令。至此安装完成。输入cmake -version命令查看cmake版本,显示cmakeversion 3.10.0-rc3,表示安装成功。

f.       这一步不用看,作参考。

此时,要确保电脑已经先安装 libgtk2.0-dev 和 pkg-config,否则后期编译运行程序会出现类似如下的问题:

OpenCVError: Unspecified error (The function is not implemented. Rebuild the librarywith Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian,install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) incvNamedWindow, file /usr/local/opencv/OpenCV-2.0.0/src/highgui/window.cpp, line100
terminate called after throwing an instance of 'cv::Exception'
2)   OpenCV安装

g.   此软件包,事先已经下载好。如此次安装下载的是tar.gz软件包。在安装前要解压缩,命令如下:

    tar -xvzf opencv-2.4.13.4.tar.gz

h.   解压后,cd命令进入opencv的目录(源码的目录,打开终端,按顺序输入如下命令)

mkdir build

cd build

cmake ..  #此符号后为注释:注意cmake与..之间有个空格

make    #如果make不运行,输入gmake运行

sudo make install #如果make install 不运行,输入gmake install 运行.如果是以为管理员用户登陆,sudo不必要输入

 

i.   安装后进行路径配置。

将opencv的库加入到如下文件内路径,从而让系统可以找到。打开文件:

sudo gedit/etc/ld.so.conf.d/opencv.conf

在末尾加入/usr/local/lib,保存退出。再输入:

sudo ldconfig #使配置生效

install

 

j.   上一步碰到的问题,备注作为参考:

[root@localhost build]# sudo ldconfig

若提示:

ldconfig:/opt/remote-viewer/libs/libspice-client-gtk-3.0.so.1 不是符号连接

ldconfig:/opt/remote-viewer/libs/libspice-client-glib-2.0.so.1 不是符号连接

ldconfig: /opt/remote-viewer/libs/libspice-controller.so.0不是符号连接

输入如下命令:

[root@localhost build]# sudo ldconfig–v  #查看,找到如下

ldconfig:/opt/remote-viewer/libs/libspice-client-gtk-3.0.so.1 不是符号连接

        libspice-client-gtk-3.0.so.1-> libspice-client-gtk-3.0.so.1.2.0

ldconfig: /opt/remote-viewer/libs/libspice-client-glib-2.0.so.1不是符号连接

        libspice-client-glib-2.0.so.1-> libspice-client-glib-2.0.so.1.6.0

ldconfig:/opt/remote-viewer/libs/libspice-controller.so.0 不是符号连接

执行如下命令:

[root@localhost build]# sudo ln -sf/opt/remote-viewer/libs/libspice-client-gtk-3.0.so.1.2.0/opt/remote-viewer/libs/libspice-client-gtk-3.0.so.1

[root@localhost build]# sudo ln -sf/opt/remote-viewer/libs/libspice-client-glib-2.0.so.1.6.0/opt/remote-viewer/libs/libspice-client-glib-2.0.so.1

[root@localhost build]# sudo ln -sf/opt/remote-viewer/libs/libspice-controller.so.0.0.0/opt/remote-viewer/libs/libspice-controller.so.0

然后再执行一次:

[root@localhost build]# sudo ldconfig

确认未再提示:不是符号链接。

 

k.      继续安装opencv,再更新如下文件,终端输入如下命令:

sudo gedit /etc/bash.bashrc

末尾加入如下:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

exportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

export PKG_CONFIG_PATH

保存退出,输入命令:

[root@localhost usr]# source/etc/bash.bashrc

#使配置生效

[root@localhost usr]# sudo updatedb

  #更新database

 

l.       在运行下面的命令之前,可重新开启终端来使配置生效。

 

m.    运行如下命令,查看版本:

[root@localhostusr]# pkg-config --modversion opencv

 

2.4.13.4

至此,安装完成。

n.      比较有参考性的网址备注:http://blog.csdn.net/jay463261929/article/details/53580538、http://www.cnblogs.com/emouse/archive/2013/02/22/2922940.html下的例子测试时,输入

[root@localhost c]# ./find_obj

./find_obj: symbol lookup error:/usr/local/lib/libopencv_ocl.so.2.4: undefined symbol:_ZN2cv16TLSDataContainerC2Ev

报错未找到,没空研究了,有空再研究-类似问题网址:

http://blog.csdn.net/cww0403/article/details/20063223

http://blog.csdn.net/xunmeng2002/article/details/41349791

 
4.  安装tesseract-orc

先装leptonica

1)将leptonica-1.69.tar.gz拷贝到目录:/usr,终端输入命令解压:tar -xvzf leptonica-1.69.tar.gz。

2)进入/usr/leptonica-1.69目录,查看readme.html文件,查看安装方法,个人选择了第二种方法。如下:

3)双击configure文件,运行。

4)在此目录下打开终端。输入命令make

5)再make install安装完成。运行make check进行检查。

6)安装后,建立link文件到/usr/local/lib目录下(若已经自动生成此link,则步骤6可省略)。在任意位置打开终端,输入如下命令:

[root@localhost usr]# ln -s /usr/local/lib/liblept.so.3.0.0/usr/lib/liblept.so.3

7)建立此link后,继续安装tesseract。
再安装tesseract

8)拷贝tesseract-3.02.02-4.el7.nux.x86_64.rpm到目录usr目录下。

9)在此目录下输入命令:[root@localhost usr]# rpm -ivhtesseract-3.02.02-4.el7.nux.x86_64.rpm --nodeps --force

10)

备注:加上后面这两个参数的意义就在于,安装时不再分析包之间的依赖关系而直接安装,也就不会再提示error: Failed dependencies:这样的错误了。不加这两个参数,可能会提示如下错误:

警告:tesseract-3.02.02-4.el7.nux.x86_64.rpm: Header V4 RSA/SHA1Signature, key ID 85c6cd8a: NOKEY

错误:Failed dependencies:

        liblept.so.3()(64bit) is needed bytesseract-3.02.02-4.el7.nux.x86_64

 

11)装好tesseract后,用如下命令:

[root@localhost usr]#ldd /usr/bin/tesseract

查看与此软件相关的库文件是否都连接成功。

 

备注参考,安装中问题:

用[root@localhostlib]# ldd /usr/bin/tesseract

查看连接的共享文件,得到:

        linux-vdso.so.1=>  (0x00007ffff0743000)

        libtesseract.so.3=> /usr/lib64/libtesseract.so.3 (0x00007fc1e228e000)

        liblept.so.3 => not found

        libpthread.so.0=> /usr/lib64/libpthread.so.0 (0x00000038e5c00000)

        libstdc++.so.6=> /usr/lib64/libstdc++.so.6 (0x00000038f5000000)

        libm.so.6=> /usr/lib64/libm.so.6 (0x00000038e6800000)

        libgcc_s.so.1=> /usr/lib64/libgcc_s.so.1 (0x00000038e8000000)

        libc.so.6=> /usr/lib64/libc.so.6 (0x00000038e5800000)

        /lib64/ld-linux-x86-64.so.2(0x00000038e5000000)

        liblept.so.3 => not found

 

红色字体,则表示liblept.so.3没有连接成功到库文件。需要安装好对应的库文件,再继续装tesseract。

 

5.  安装wmctrl

1)     拷贝rpm文件到usr目录,输入命令:

[root@localhost usr]# rpm -ivh wmctrl-1.07-12.el6.i686.rpm --nodeps--force

2)     安装成功。

 

6.  安装xdotool

1)     打开终端,输入:yum install xdotool

2)     自动安装。安装后版本:xdotool version 2.20110530.1

 

7.  安装SIKULI

1)     在usr目录下新建一个文件夹,建议名为“Sikuli”,将sikulixsetup-1.1.1.jar拷贝到此目录。然后,在此目录下打开终端。安装开始前,确保网络可以上外网,如baidu.com。

2)     输入命令java -jar sikulixsetup-1.1.1.jar,进行安装。

3)     前三个选择界面,都选择“是”,在三个option的勾选界面,如无特殊要求,勾选第一个option(使用python作为默认的脚本开发语言)。

4)     其他安装步骤,参考window下的安装步骤。

5)     安装中一些报错的解决方法,主要靠查看安装日志文件SikuliX-1.1.1-SetupLog.txt的记录:

情况1,报错描述为:

[error(17-10-26 13:55:50)] RunTimeSETUP: loadLib: libVisionProxy.so not usable:

java.lang.UnsatisfiedLinkError:/root/.Sikulix/SikulixLibs_201703291041/libVisionProxy.so: liblept.so.3: 无法打开共享对象文件: 没有那个文件或目录

解决方法:按照安装手册的章节4,重新安装telptonica和tesseract工具。

情况2,报错提示,OpenCV缺失,则需要按照手册内章节3,安装好OpenCV。

情况3,如提示:[error] RunTimeINIT:  ***terminating: Java version must be 1.7 or later!则输入[root@localhost usr]# source /etc/profile

 并enter后,再次输入java解压命令进行安装。

情况4,若前提工具安装配置都正确,但是安装中,却未成功。则尝试重新安装,安装过程中,注意查看界面的说明,将需要下载的插件(安装过程中,界面会提示是否重新下载),点击NO,重新下载。----排除之前下载的插件不完整的影响。

 
8.  启动SIKULI

Sikuli文件夹内,鼠标双击runsikulix的shell文件,启动sikuli的主界面,开始编写自动化测试用例。

启动问题记录:

1) 若双击启动后,主界面未弹出。则在此目录下打开终端,用命令启动。输入:

./ runsikulix

查看错误提示消息,再定位具体问题。

2) 终端若提示:

[error]RunTimeIDE:  *** terminating: loadlib:libVisionProxy.so not available in /root/.Sikulix/SikulixLibs_201703300100

则依照提示目录/root/.Sikulix/SikulixLibs_201703300100下查看libVisionProxy.so文件是否存在,若不存在。在根目录下搜索libVisionProxy.so文件,找到后Copy到/root/.Sikulix/SikulixLibs_201703300100目录。若没找到这个文件,则需要安装tesseract生成这个文件(能安装sikuli,系统一般都有此文件了)。

 [未知作者1]直接用 yum -y remove java命令,也能删除java 7


---------------------  
原文:https://blog.csdn.net/u013484215/article/details/79428612  
 

你可能感兴趣的:(Linux,运维)