Как создать файл .app из файла .py и каталога изображений - PullRequest
0 голосов
/ 21 июня 2020

У меня есть программа, которая правильно работает с файлом .py и файлом .exe, созданным с помощью pyinstaller (заставляет игру отображать изображения из 5 папок в папке ресурсов, которая находится в том же месте, что и файл .py. Это код для получения моих изображений.

    for path in glob.glob('assets/*/'):  # In all folders in 'assets':
        for picture in glob.glob(f'{path}*.png'):  # For all images in path:
            screen = pygame.transform.scale(pygame.image.load(picture), (100,100))
            pictures.append(screen)

Моя проблема заключалась в создании ma c версии моей программы. Я создал ma c VM, загрузил python и pyinstaller, перенес файлы ( вышеупомянутую папку main.py и assets) и запустил в консоли в каталоге, содержащем main.py, следующее :

pyinstaller main.py

Я также попытался добавить теги --onefile и --windowed (отдельно и вместе) и переместил файл main.app в тот же каталог, что и main.py, и он не запустился, и я получил следующую ошибку при открытии его с консоли

LSOpenURLsWithRole() failed with error -10810 for the file /Users/username/Desktop/main/main.app. 

Я также попытался использовать py2app и выполнил следующее в console в каталоге с main.py

% py2applet --make-setup main.py 
% nano setup.py 
% python3 setup.py py2app -A 

Это создало main.app и позволило мне запустить его, и он открыл мое приложение, но не использовал в нем ни одного из моих изображений как если бы они были недоступны.

Я также попытался отредактировать DATA_FILES = [] в setup.py на все следующие, но безуспешно:

'assets'
'assets/'
'assets/*'
'assets/**'
'assets/*/'
'assets/*/*'
'assets/*/*.png'
'*'

Сообщите мне, если вам нужна другая информация или какие-либо решения для использования pyinstaller или py2app для создания файла .app для моей программы и использования изображений в каталогах в моем каталоге «assets».

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

...