Kivy,PyInstaller - 为Raspberry Pi打包可执行文件

时间:2016-06-19 07:16:18

标签: python raspberry-pi kivy pyinstaller

我一直在使用Kivy和PyInstaller。 但是,我仍然试图在Raspberry Pi上获得满意的结果。 现在,我无法成功运行任何程序,我将任何其他文件打包到可执行文件中(我在Linux和Windows上成功地执行此操作,将程序打包为包含所有库和数据文件的单个EXE包含。在Raspberry Pi上没有这样的运气。)

我最近更新了Raspberry Pi上的新系统并进行了一些测试。

系统: KivyPie 0.9b,包括Kivy v1.9.2,Python 3.4和PyInstaller-3.2。

我使用3个程序进行测试:

  • 标准的Kivy示例" bezier.py"
  • 我自己的程序,使用Kivy,需要一些打包的数据文件(如图像)。
  • 一个简单的python" Hello world",不使用Kivy

运行使用PyInstaller编译的程序的结果有不同的选项:

  1. "贝塞尔"例如,默认的PyInstaller编译,没有标志,spec文件中没有变化:
  2.   

    成功运行

    1. " Hello world"没有Kivy,使用" - onefile"编译为单个可执行文件:
    2.   

      成功运行

      1. 我的程序,编辑的spec文件将数据文件收集到程序文件夹中。同一文件夹中的所有库:
      2.   

        成功运行

        1. 我的程序,编辑的spec文件将数据文件打包到可执行文件中。所有库仍在同一文件夹中:
        2.   

          加载Python lib' /tmp/_MEIkn0Qf3/libpython3.4m.so.1.0'时出错:   /tmp/_MEIkn0Qf3/libpython3.4m.so.1.0:无法打开共享对象文件:   没有这样的文件或目录

          1. "贝塞尔"例如,使用" - onefile"编译(所有库都包含在可执行文件中):
          2.   

            无法写入所有字节   kivy.lib.vidcore_lite.egl.cpython-34m-arm-linux-gnueablfh.so

            1. 与测试#4相同,在尝试测试#5后运行时,会以某种方式给出不同的错误:
            2.   

              无法为[relative / path / to / image.png]

              写入所有字节

              出于某种原因,它不再抱怨图书馆,而是关于打包数据 - 在这种情况下是图片。

              我无法在线找到有关这些问题的更多信息。 在使用Kivy时,是否有任何关于使用PyInstaller将文件打包到可执行文件中的特定指南,特定于Raspberry Pi? 我的主要目标是打包数据文件 - 包装库是次要的。

              我认为它可能与指定文件/库路径有关。实际上,对于我的数据文件,我的程序使用一个函数来生成绝对路径。 据我所知,将这些文件打包到Windows上的EXE时非常需要。 或者也许应该用PyInstaller的spec文件做些什么?

0 个答案:

没有答案