Python libinsane in Windows

Posted

技术标签:

【中文标题】Python libinsane in Windows【英文标题】: 【发布时间】:2020-05-28 21:07:24 【问题描述】:

我目前正在尝试让 libinsane 在 Windows 10 上使用 python(2.7 或 3.4)。

按照官方文档 (https://doc.openpaper.work/libinsane/latest/libinsane/install.html) 的说明,我已经成功构建了 64b 版本。

但是,我对 GObject 不熟悉,不知道 DLL 和 typelib 文件放在哪里!

任何人都可以帮助我了解如何让 libinsane 工作?

目前,我只是想让官方示例正常工作。 (https://gitlab.gnome.org/World/OpenPaperwork/libinsane/tree/master/subprojects/libinsane-gobject/examples)

提前感谢您的帮助。

【问题讨论】:

您也许可以使用 ProcMon 查看您的进程试图在哪里寻找这些文件。 【参考方案1】:

我已经能够使示例工作,这就是方法。

首先,确保您已安装mysys2。

按照上面链接中的安装说明进行操作。

然后,在 C:\msys64

中运行这个 mingw64.exe

运行安装指南中的以下命令。

pacman -S \
    make \
    mingw-w64-x86_64-cunit \
    mingw-w64-x86_64-doxygen \
    mingw-w64-x86_64-gcc \
    mingw-w64-x86_64-gobject-introspection \
    mingw-w64-x86_64-meson \
    mingw-w64-x86_64-python3-gobject \
    mingw-w64-x86_64-vala

然后运行这个:

 git clone https://gitlab.gnome.org/World/OpenPaperwork/libinsane.git
cd libinsane

make PREFIX=/mingw64

最后

make install

后两个命令必须在 libinsane 目录中运行。 您可以导航到示例示例项目并运行:

python list_device.py 

用于列出设备

python scan.py outputfilename.png

用于扫描文档

DLL 文件 在开发中,您不需要打包 dll 文件,但在生产中,对于 Windows 以外的任何其他语言,这将是一个要求。

不幸的是,他们没有说明将它们放在哪里。我为此打开了一个问题。

【讨论】:

【参考方案2】:

按照您的建议使用 ProcMon 帮助解决了我的问题,现在可以正常工作了!

如果这可以帮助任何人使 libinsane 在 Python 上工作,您需要将这些 DLL 放在以下位置:

C:\msys64\mingw64\bin\libsystre-0.dll => <python path>/lib/site-packages/gnome
C:\msys64\mingw64\bin\libtre-5.dll => <python path>/lib/site-packages/gnome
C:\msys64\usr\local\lib\girepository-1.0\Libinsane-1.0.typelib => <python path>/lib/site-packages/gnome/lib/girepository-1.0/
C:\msys64\usr\local\bin\libinsane_gobject.dll => <python path>/lib/site-packages/gnome
C:\msys64\usr\local\bin\libinsane.dll => <python path>/lib/site-packages/gnome

【讨论】:

以上是关于Python libinsane in Windows的主要内容,如果未能解决你的问题,请参考以下文章

plugin cannot be loaded for module “QtQuick“ && Could not load the Qt platform plugin “windo

plugin cannot be loaded for module “QtQuick“ && Could not load the Qt platform plugin “windo

环境变量备份

windo form 窗体布局方式

运行python程序

vscode中远程开发