2015-07-29 5 views
0

Я немного новичок в Linux, и я в настоящее время сделал приложение, используя PyQt4 - python3.4 с использованием cx_Freeze на Ubuntu. Это работало нормально на Ubuntu, однако, когда я пытался открыть приложение на Linux SUSE, это не сработало.Как сделать приложение PYQT4, построенное cx_Freeze на UBUNTU, работает на Linux SUSE.

ошибка я получаю

«Не удалось отобразить AppName»

Там не установлено приложение для «исполняемых» файлов.

Вы хотите найти приложение, чтобы открыть этот файл?

Я предполагаю, что мне нужно создать новую сборку для каждого дистрибутива Linux. Я хочу запустить приложение? или есть ли лучший способ сделать мою программу переносимой для всех linux-сред, используя только одну сборку?

Примечание: здесь мой setup.py, что я бегу за cx_freeze (если вообще это должно быть изменено, пожалуйста, дайте мне знать: D)

import sys,platform 
from cx_Freeze import setup, Executable 

def getTargetName(): 
    myOS = platform.system() 
    if myOS == 'Linux': 
     return "AppName" 
    elif myOS == 'Windows': 
     return "AppName.exe" 
    else: 
     return "AppName.dmg" 


base = None 
if sys.platform == "win32": 
    base = "Win32GUI" 

exe = Executable(script = "main.py", base=base, targetName = getTargetName()) 

build_exe_options = {"packages": ["re", "sip"], 
        "includes":["modules"], 
        "icon":"icon.ico"} 

setup( name = "setup", 
     version = "1.0", 
     description = "GUI Application!", 
     options = {"build_exe": build_exe_options}, 
     executables = [exe]) 

Заранее спасибо!

+0

Если вы запустите его с терминала, выполнив cd-ing в этот каталог и запустив './AppName', он работает? –

+0

Я попробовал «./AppName», и терминал говорит, что команда не найдена. – aperlas

ответ

2

Как оказалось, все я не хватало, чтобы сделать

chmod +x AppName 

Тогда я побежал в терминал, и он работал как шарм. Кроме того, мне удалось дважды щелкнуть приложение, и оно тоже сработало!