LINUX.ORG.RU

Чем собрать pyqt5 app?

 , , ,


0

1

ОС: Manjaro
Пытался поставить cx_freezy:

    gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fPIC -I/usr/include/python3.6m -c source/bases/Console.c -o build/temp.linux-x86_64-3.6/source/bases/Console.o
    creating build/lib.linux-x86_64-3.6/cx_Freeze/bases
    gcc -pthread build/temp.linux-x86_64-3.6/source/bases/Console.o -L/usr/lib/python3.6/config-3.6m-x86_64-linux-gnu -L/usr/lib -lpython3.6m -lpython3.6m -o build/lib.linux-x86_64-3.6/cx_Freeze/bases/Console -Xlinker -export-dynamic -lpthread -ldl -lutil -lm -s
    lto1: критична помилка: bytecode stream generated with LTO version 5.1 instead of the expected 5.2
    компіляцію перервано.
    lto-wrapper: критична помилка: gcc returned 1 exit status
    компіляцію перервано.
    /usr/bin/ld: error: lto-wrapper failed
    collect2: помилка: ld returned 1 exit status
    error: command 'gcc' failed with exit status 1
    
    ----------------------------------------
Command "/home/foozzi/pymine/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-_mlqjdtj/cx-Freeze/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-bubxuy4y-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/foozzi/pymine/include/site/python3.6/cx-Freeze" failed with error code 1 in /tmp/pip-build-_mlqjdtj/cx-Freeze/    
Так и не удалось, да и требуется мне это все дело собрать еще и под win32 и все это из под arch.
Можете что то предложить?

Ответ на: комментарий от I-Love-Microsoft

такс, из репов поставил фризи все же, удалось собрать под арчик, теперь стоит вопрос, реально ли собрать под win32 из под арча?

noname_user ★★★
() автор топика
Ответ на: комментарий от I-Love-Microsoft

кстати, еще интересно:

from cx_Freeze import setup, Executable

# Dependencies are automatically detected, but it might need
# fine tuning.
buildOptions = dict(packages = [], excludes = [])

import sys
base = 'Win32GUI' if sys.platform=='win32' else None

executables = [
    Executable('pymine.py', base=base, icon="favicon.ico")
]

setup(name='PyMine',
      version = '1.0',
      description = 'Mcrcon protocol gui tools for minecraft 1.9 > 1.11.2+',
      options = dict(build_exe = buildOptions),
      executables = executables)

иконку я задал, собираю на арче, все равно иконка обычного бинарника...

noname_user ★★★
() автор топика

cx_freezy

ну это отстойная штукенция, pyInstaller мне больше зашел, но вообще паковать питон в бинарь, слегка ересью тянет, хотя мне не хватает нативной возможности запуска без интерпретатора.

собрать еще и под win32

там кстати не все так гладко. Например мне как-то не хватило каких-то микрософтовских штук которые приходили с обновлениеми винды, но при этом установочник питона подтягивать их умеет. Слыхал их можно паковать вместе с бинарником.

Dred ★★★★★
()
Ответ на: комментарий от Dred

у меня просто гуя, которую будет использовать несколько людей абсолютно не шарящих во всем этом, на линукс. На вин так же, но решил наверное ставить виртуалку и собирать на винде уже.
по поводу pyinstaller, он у меня чет не ставится на арче, ни на одном из 2х арче подобных дистра...

noname_user ★★★
() автор топика
Ответ на: комментарий от noname_user

ну я на арч простым pip install ставил, но это было давненько.

на линукс

а чего, на том линукс нет питона ? если есть, то почему бы просто не сделать requirements.txt, а если нет воможности из сети ставить, то просто сделать pip download (вместо install) и сложить все зависимости рядом, потом просто из wheel поставить тем же pip-ом (правда, я конечно не помню, ставит ли на линуксы с питоном еще и pip, на виндовс точно ставится в дефолтной поставке)

я еще немного поною тут, в этом плане я конкретно завидую джаве с ее jar-файлами. Хотя саму джаву сильно не люблю. (но у Го еще круче, там просто один бинарь), тут питоновские wheel-ы даже близко не стоят.

Dred ★★★★★
()
Последнее исправление: Dred (всего исправлений: 1)
Ответ на: комментарий от Dred

пытаюсь иконку присобачить при билде бинарника, но почему то все тщетно:

from cx_Freeze import setup, Executable

# Dependencies are automatically detected, but it might need
# fine tuning.
buildOptions = dict(packages = [], excludes = [])

import sys
base = 'Win32GUI' if sys.platform=='win32' else None

executables = [
    Executable('pymine.py', base=base, icon="favicon.ico")
]

setup(name='PyMine',
      version = '1.0',
      description = 'Mcrcon protocol gui tools for minecraft 1.9 > 1.11.2+',
      options = dict(build_exe = buildOptions),
      executables = executables)

noname_user ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.