2013-06-25 17 views
1

這是我第一次使用pyinstaller。我的目標是在Mac Mountain Lion中構建一個.app。該應用程序基本上是一個用PySide編寫的GUI,我有大約7種不同的Python腳本+ 1個.png文件。主文件調用4個文件,4個文件將重複調用2個文件的其餘部分。 .png文件不過是窗口標誌。有人可以幫我診斷一下嗎?我不知道哪裏出了問題。我在網上搜索了大量文檔,即更改規格,添加導入等等,但是我的應用程序仍然無法運行。pyinstaller:在Mac下包裝多個python腳本

僅供參考,Pyinstaller可以生成一個應用程序,對我來說有兩個問題:

  1. 圖標不會更改應用程序。
  2. 應用程序在打開時崩潰。

我的Python版本是2.7.5,我使用的是PyInstaller-2.0。這裏是我的代碼進行包裝:

python pyinstaller.py --onefile --windowed --name=MyApplication -i ~/Documents/AASource/icon.ico ~/Documents/AASource/Scripts/main_file.py 

這裏是spec文件:

# -*- mode: python -*- 
a = Analysis(['/Users/boxuancui/Documents/AASource/Scripts/main_file.py'], 
      pathex=['/Users/boxuancui/Documents/pyinstaller-2.0'], 
      hiddenimports=[], 
      hookspath=None) 
pyz = PYZ(a.pure) 
exe = EXE(pyz, 
      a.scripts, 
      a.binaries, 
      a.zipfiles, 
      a.datas, 
      name=os.path.join('dist', 'MyApplication'), 
      debug=False, 
      strip=None, 
      upx=True, 
      console=False , icon='/Users/boxuancui/Documents/AASource/icon.ico') 
app = BUNDLE(exe, 
      name=os.path.join('dist', 'MyApplication.app')) 

這裏是飛機墜毀的消息的一部分:

Crashed Thread: 0 Dispatch queue: com.apple.main-thread 

Exception Type: EXC_BAD_ACCESS (SIGSEGV) 
Exception Codes: KERN_INVALID_ADDRESS at 0x00000000000054d8 

提前感謝!任何幫助將不勝感激!


UPDATE1:我已經縮小的問題是:每當我試着做以下進口,創建應用程序會崩潰。有誰知道爲什麼?

import pandas.rpy.common as com 
import pandas.io.sql as psql 
import rpy2.robjects as robjects 

UPDATE2:我仔細看看pandas.io.sql。沒有這樣的模塊存在。這就是PyInstaller無法找到它的原因。我在哪裏可以找到這個文件?同樣,rpy2.objectspandas.rpy.common也不見了。

+0

我修復了圖標問題。 exe文件使用.ico,而應用程序捆綁使用圖標 – Boxuan

回答

0

你可以從你的python控制檯導入pandas.io.sql嗎? 那些在主文件中導入?如果不嘗試這樣做