【问题标题】:A error about pyuic4关于pyuic4的一个错误
【发布时间】:2012-01-15 13:35:55
【问题描述】:

我正在尝试将我的 ui 文件转换为 .py 文件,但是当我在 shell 中运行 pyuic4 时,出现错误:

# pyuic4 main.ui > main_ui.py
File "/usr/lib/python2.7/site-packages/PyQt4/uic/pyuic.py", line 2
exec /usr/bin/python /usr/lib/python2.7/site-packages/PyQt4/uic/pyuic.py ${1+"$@"}
     ^
SyntaxError: invalid syntax

我的操作系统是fedora16

【问题讨论】:

  • 我看到了同样的奇怪错误,fedora 16 也是如此。不知何故 pyuic 目录(可能还有其他目录?)没有正确安装。不知何故,pyuic.py 的内容被上面看到的 shell 脚本替换了。这意味着 shell 脚本本质上是指向自身的!这将是无限递归,但它只是崩溃,因为 shell 脚本不是有效的 python 语法。有人知道这是什么原因吗?
  • @superbatfish。您和 OP 都在使用 fedora 16 肯定不是巧合吗?也许您应该尝试在 Fedora 的错误跟踪器上发布报告。

标签: python pyqt pyuic


【解决方案1】:

在 Linux 上,pyuic4 应该是一个 bash 脚本,通常安装为 /usr/bin/pyuic4

错误

exec /usr/bin/python /usr/lib/python2.7/site-packages/PyQt4/uic/pyuic.py ${1+"$@"}
     ^
SyntaxError: invalid syntax

如果您尝试使用 python 运行该 bash 脚本,则会生成。

然而,错误信息也给出了源文件的位置

File "/usr/lib/python2.7/site-packages/PyQt4/uic/pyuic.py", line 2

这没有多大意义,因为那应该是一个python脚本。

/usr/lib/python2.7/site-packages/PyQt4/uic/pyuic.py 是否被 bash 脚本覆盖了?

尝试在编辑器中打开该文件以及 /usr/bin/pyuic4,以查看其中包含的内容。

【讨论】:

    【解决方案2】:

    如果你想使用python2,只需输入

    python2-pyuic4 main.ui > main_ui.py
    

    【讨论】:

      猜你喜欢
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-20
      • 1970-01-01
      相关资源
      最近更新 更多