首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >乌布图的锡库利自动化

乌布图的锡库利自动化
EN

Stack Overflow用户
提问于 2014-03-26 04:49:41
回答 1查看 2.8K关注 0票数 1

我试图在ubuntu12.4中安装sikuli,请按照以下站点中提到的步骤执行

http://www.verious.com/tool/installing-sikuli-automation-tool-on-ubuntu-11-10/

安装在ubuntu中的java是

代码语言:javascript
复制
~$ java -version
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)

sikuli-ide正在成功加载,当我试图捕捉屏幕上的图像时,会出现以下错误。

代码语言:javascript
复制
Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: /home/ushusadmin/sikuli/Sikuli-IDE/libs/libVisionProxy.so: libml.so.2.1: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary1(ClassLoader.java:1965)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1890)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1851)
at java.lang.Runtime.load0(Runtime.java:795)
at java.lang.System.load(System.java:1062)
at com.wapmx.nativeutils.jniloader.NativeLoader.loadLibrary(NativeLoader.java:44)
at org.sikuli.script.TextRecognizer.(TextRecognizer.java:24)
at org.sikuli.ide.NamingPane.getFilenameFromImage(NamingPane.java:55)
at org.sikuli.ide.CaptureButton.update(CaptureButton.java:149)
at org.sikuli.script.CapturePrompt.notifyObserver(CapturePrompt.java:44)
at org.sikuli.script.CapturePrompt$1.mouseReleased(CapturePrompt.java:197)
at java.awt.Component.processMouseEvent(Componen

t.java:6505)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Window.processEvent(Window.java:2022)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(

Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)

我怎样才能摆脱这个花费我的时间来纠正这个错误的error.Am呢?-专家们帮助我

EN

回答 1

Stack Overflow用户

发布于 2014-03-26 20:28:25

我在您的堆栈跟踪中注意到了这一点:

Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: /home/ushusadmin/sikuli/Sikuli-IDE/libs/libVisionProxy.so: libml.so.2.1: cannot open shared object file: No such file or directory

关于libml.so.2.1没有被发现的抱怨让我怀疑你有一个旧版本的Sikuli。

因此,我建议使用最新的Sikuli版本(1.0.1),并确保至少安装了OpenCV 2.4.0。

请注意,Sikuli 1.0.1依赖于OpenCV 2.4.0,而您所链接的指南是2.3.0可接受的日子。

我将尝试删除libcv-dev包的2.3版本(如果是这样的话),而是从opencv2.4ppa回购中安装libcv-dev:

代码语言:javascript
复制
sudo add-apt-repository ppa:gijzelaar/opencv2.4

另外,我注意到Sikuli的人已经发布了一个特殊版本的libVisionProxy.so供下载;不确定它是否旨在帮助像您这样的系统,但是如果使用Sikuli 1.0.1和OpenCV 2.4.0不起作用,可能值得一试。

所讨论的文件是Sikuli-1.0.1-Supplemental-LinuxVisionProxy.zip at https://launchpad.net/sikuli/+download

最后,如果有帮助,下面是我在Ubuntu12.04上安装和运行Sikuli 1.0.1的完整步骤:

  1. 安装Oracle (我使用的是1.7.0_51,就像您的env)
  2. 安装OpenCV 2.4.0 sudo add-apt存储库ppa:gijzelaar/opencv2.4 sudo apt-get update libcv-dev 或者,您也可以通过从源代码构建/安装OpenCV 2.4.0来实现相同的目标,具体步骤如下: http://karytech.blogspot.com/2012/05/opencv-24-on-ubuntu-1204.html 注意,当我尝试安装QT包时,我省略了安装QT包的步骤,并在构建-D时从cmake命令中删除了“WITH_QT=ON”。
  3. 安装Tesseract 3: sudo apt-get install libtesseract3
  4. 下载sikuli-setup.jar并保存到~/SikuliX
  5. 发射sikuli-setup.jar并将Sikuli安装到~/SikuliX cd ~/SikuliX && java -jar sikuli-setup.jar 我选择了“包1”选项,让安装程序正常进行。
  6. 在IDE中创建一个Sikuli脚本并运行它。 此外,我发现使用"runIDE -r“选项运行runIDE项目对于解决依赖关系问题非常有帮助;与在IDE中运行脚本相比,这似乎会导致更多有关错误的信息。例如: ~/SikuliX/runIDE -r foo.sikuli

下面是我的操作系统和JRE环境的详细信息:

代码语言:javascript
复制
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 12.04.3 LTS
Release:    12.04
Codename:   precise

$ java -version
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22651721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档