问题标签 [python-sip]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python PyQT 的 sip install (make) 错误
我想开发一个带有 GUI 的 Python 应用程序。为此,我找到了一个 PyQT。要使用 PyQT,我必须安装一个 SIP 库。
我的参考是:SIP 文档
对于简历,我必须这样做:
在我安装 GNU 的 make 软件工具并将其放入我的 PATH 之前。
Python configure.py 运行正常。
我的问题是当我在解压缩的 sip 工具的根目录中启动 make 时。
(法语:make[x]: entrant dans le repertoire << C:/dev/sip-4.17>> 翻译英语:make[x]: 进入目录<< C:/dev/sip-4.17>>)
在我点击“确定”按钮后,我的控制台告诉我:
你能帮我理解为什么会发生这种情况以及如何解决这个问题吗?
技术参考:
- 操作系统:windows 7 pro x64
- 蟒蛇:2.7.9
- 制作窗户:已安装
- SIP : 4.17*
python-3.x - 为 python 3.4.3+ 安装 PyQt-gpl-5.5.1 和 sip
我正在尝试安装需要 PyQt-gpl-5.5.1 的 eric6-6.1.2,它在
如何为 python 3.4.3+ 安装 sip?
python - PyQt4.QtCore 的导入钩子
我正在尝试以与此 SO question有点相似的方法设置一些导入挂钩。为此,我需要定义两个函数,如上面链接中所述。这是我的功能,sys.meta_path
find_module
load_module
load_module
这适用于大多数模块,但PyQt4.QtCore
在使用 Python 2.7 时失败:
返回,
相同的代码适用于 Python 3.4(尽管imp
已被弃用,importlib
理想情况下应该在那里使用)。
我想这与 SIP 动态模块初始化有关。Python 2.7 还有什么我应该尝试的吗?
注意:这适用于PyQt4
和PyQt5
。
编辑:这可能确实与这个问题有关,
失败并出现相同的错误。我仍然不确定有什么方法可以解决它...
Edit2:根据@Nikita对具体用例示例的请求,我想做的是重定向导入,所以当一个人这样做时import A
,会发生什么import B
。确实可以认为,为此进行模块重命名find_spec/find_module
然后使用 default就足够了load_module
。但是,目前尚不清楚在 Python 2 中哪里可以找到默认load_module
实现。我发现的最接近的类似实现是future.standard_library.RenameImport
. 看起来没有importlib
从 Python 3 到 2 的完整实现的反向移植。
可以在此gist中找到重现此问题的导入挂钩的最小工作示例。
c++ - CMake“OBJECT”库:clang没有正确链接
我有一个共享库(目前正在编译、加载和运行)mylib.so
。在这个库中,我想使用一个新函数(在另一个外部库中注册它)。签名是bool my_function(const QVariant *, PyObject **)
。
这个新函数在一个单独的 .cpp 文件中定义,该文件被编译为一个对象,然后链接到mylib.so
.
所以我OBJECT
用我的自定义函数创建了一个新函数
并在构建我的图书馆时包括这个
它因“未定义对 `my_function' 的引用而失败”
我知道
- 文件
helper_lib.o
生成 nm helper_lib.o
节目0000000000000000 T _Z11my_functionPK8QVariantPP7_object
nm mylib.o
节目U my_function
helper_lib.o
传递给 clang++ :clang++ -fPIC [...] -o my_lib.so mylib.o helper_lib.o [...]
我很难看出错误发生在哪里。我可以想象有一些错误,mylib.o
其中显示了一个无法与符号名称匹配的未损坏的helper_lib.o
符号名称,但我也可能完全走错了轨道。
helper_lib.h
helper_lib.cpp
source.cpp 更复杂,因为它主要包含sip自动生成的代码。
python - 在 Ubuntu 上导入 PyQt4.QtDeclarative 或 PyQt4.Qt 时 Python 2.7 崩溃
前一段时间(几个月?)程序rqt_plot
开始在我的机器上启动(SIGSEGV)崩溃。我终于更深入地追踪了它,发现问题是在 python 尝试导入时出现的PyQt4.QtDeclarative
。不幸的是,我不记得这是什么时候开始发生的,而且我的互联网搜索也没有任何结果。任何想法出了什么问题?我怀疑在某个地方有不兼容的软件包更新,但不知道如何找到根本原因。
这是一个简单的会话记录:
以下是一些系统信息:
跟进:
后来我发现我也遇到了同样的问题(分段错误)import PyQt4.Qt
。
python - 运行“make”命令时,我可以为 sip-4.18.1 指定 Python.h 的路径吗?
我正在尝试sip-4.18.1
在RHEL 7
. 我有downloaded/installed/configured Python3.5.2
。
当我在 sip 目录中运行“make”时,出现此错误:
gcc -c -pipe -fPIC -O2 -Wall -W -DNDEBUG -I。-I/usr/include/python2.7 -o siplib.o siplib.c siplib.c:20:20: 致命错误: Python.h: No such file or directory #include
我理解这意味着Python 2.7
至少有下载到这台机器,但它看起来没有配置。
有什么方法可以指定 sipPython.h
在运行“make”时查找的路径?
gcc - 目标“main.o”的配方失败
我正在尝试安装 SIP,以便能够在我的 Windows 系统上安装 PyQt。我正在遵循指南“ https://riverbankcomputing.com/pipermail/pyqt/20 10-May/026642.html ”但@第8步
我收到以下错误。由于对 C 的经验很少,我不知道该怎么做。经过研究,我发现了这个类似的错误Cygwin - Makefile-error: recipe for target `main.o' failed但显然原因应该不同,因为那里的解决方案没有适用于我的情况。
有什么想法吗?
python-3.x - Python/SIP 规范文件 - kwargs 和 NULL
刚刚开始深入研究 SIP。我有一个 .h 文件,其中包含以下公共方法:
我创建了一个相应的 .sip 文件:
使用 CMake,我可以构建工作,可以将模块导入 Python 并可以调用构造函数(成功有限)。我也可以调用 Allocate 方法。不幸的是,在 Python 方面,我无法暴露float *devMem=NULL
orfloat *hostMem=Null
参数。我已经浏览过 SIP 文档,并且没有任何注释因为缺失而跳出来。
最终目标是将一个numpy数组(我相信.data属性)传递给hostMem
参数。
如何在 SIP 中公开指针?带有默认 NULL 参数的指针呢?
(Python 3.5、PyQt4、SIP 4.18.x)
python - RuntimeError: sip 模块实现 API v11.0 到 v11.2 但 PyQt5.QtCore 模块需要 API v11.3
我最近在我的系统上安装了 PyQt4 并开始执行一些基本任务(课程作业),它运行良好。
然后,几天后,我尝试使用matplotlib
.
当我尝试import matplotlib.pyplot as plt
时,我收到以下错误:
我认为问题出PyQt4
在我已经拥有的 while的安装上PyQt5
,但是这个网站说它们可以毫无问题地一起正常工作,前提sip
是两者的版本相同。
问题似乎来自sip
.
我按照这里给出的步骤操作:PyQt5 - SIP API 10 level error。需要 API 11
当我跑步
import sip
然后print(sip, sip.SIP_VERSION_STR)
我得到以下信息:4.16.9
然后,当我
sip -V
在命令提示符下运行时,我得到4.18
.
我清楚地看到里面有sip
模块中有。
我只想问,我该如何解决这个问题?
我在 Windows 8 64 位系统上,使用 Anaconda3
任何帮助表示赞赏。:)
python - 努力为 PyQt4 构建 SIP
基本上,尝试构建 SIP 以便我可以安装 PyQt4。我设法使用 python configure.py 这完全没问题 - 我得到了 sipconfig.py 文件。
当我尝试构建时,问题就来了。它不会识别make。我试图让 Visual Studio 来做这件事——但这让我很困惑。任何建议都会非常好 - 我尝试了其他解决方案,但似乎没有任何效果。
所以,是的,任何帮助都会很棒!