質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
PyInstaller

PyInstallerは、Pythonのスクリプトを一括でWindowsなどで動く実行可能ファイルに変換できるツールです。このツールを用いることで自作のPythonプログラムを別で使用する場合でもPythonをインストールする必要がありません。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

335閲覧

pyinstallerでライブラリも含めて実行アプリを作りたい

miraimirai

総合スコア39

PyInstaller

PyInstallerは、Pythonのスクリプトを一括でWindowsなどで動く実行可能ファイルに変換できるツールです。このツールを用いることで自作のPythonプログラムを別で使用する場合でもPythonをインストールする必要がありません。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2024/01/23 08:46

編集2024/01/25 00:54

実現したいこと

pyinstallerで実行アプリを作成したい

前提

QtDesignerでGUIソフトを作っています。.uiを.pyに変換したものとそれを利用して実行するファイルがあります。つまり、2つに分かれています。
参考サイト
https://qiita.com/kenmaro/items/5a3ecc2073500653b625

発生している問題・エラーメッセージ

質問へのコメント参照

該当のソースコード

mozitameshi.py

1# -*- coding: utf-8 -*- 2 3# Form implementation generated from reading ui file 'mozitameshi.ui' 4# 5# Created by: PyQt5 UI code generator 5.15.10 6# 7# WARNING: Any manual changes made to this file will be lost when pyuic5 is 8# run again. Do not edit this file unless you know what you are doing. 9 10 11from PyQt5 import QtCore, QtGui, QtWidgets 12 13 14class Ui_MainWindow(object): 15 def setupUi(self, MainWindow): 16 MainWindow.setObjectName("MainWindow") 17 MainWindow.resize(800, 600) 18 self.centralwidget = QtWidgets.QWidget(MainWindow) 19 self.centralwidget.setObjectName("centralwidget") 20 self.pushButton = QtWidgets.QPushButton(self.centralwidget) 21 self.pushButton.setGeometry(QtCore.QRect(450, 160, 100, 32)) 22 self.pushButton.setObjectName("pushButton") 23 self.label = QtWidgets.QLabel(self.centralwidget) 24 self.label.setGeometry(QtCore.QRect(280, 340, 58, 16)) 25 self.label.setObjectName("label") 26 self.lineEdit = QtWidgets.QLineEdit(self.centralwidget) 27 self.lineEdit.setGeometry(QtCore.QRect(240, 170, 113, 21)) 28 self.lineEdit.setMaxLength(5) 29 self.lineEdit.setObjectName("lineEdit") 30 self.layoutWidget = QtWidgets.QWidget(self.centralwidget) 31 self.layoutWidget.setGeometry(QtCore.QRect(470, 250, 71, 66)) 32 self.layoutWidget.setObjectName("layoutWidget") 33 self.verticalLayout = QtWidgets.QVBoxLayout(self.layoutWidget) 34 self.verticalLayout.setContentsMargins(0, 0, 0, 0) 35 self.verticalLayout.setObjectName("verticalLayout") 36 self.pushButton_2 = QtWidgets.QPushButton(self.layoutWidget) 37 self.pushButton_2.setObjectName("pushButton_2") 38 self.verticalLayout.addWidget(self.pushButton_2) 39 self.pushButton_3 = QtWidgets.QPushButton(self.layoutWidget) 40 self.pushButton_3.setObjectName("pushButton_3") 41 self.verticalLayout.addWidget(self.pushButton_3) 42 MainWindow.setCentralWidget(self.centralwidget) 43 self.menubar = QtWidgets.QMenuBar(MainWindow) 44 self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 24)) 45 self.menubar.setObjectName("menubar") 46 MainWindow.setMenuBar(self.menubar) 47 self.statusbar = QtWidgets.QStatusBar(MainWindow) 48 self.statusbar.setObjectName("statusbar") 49 MainWindow.setStatusBar(self.statusbar) 50 51 self.retranslateUi(MainWindow) 52 self.lineEdit.textChanged['QString'].connect(self.label.setText) # type: ignore 53 self.pushButton_3.clicked.connect(MainWindow.close) # type: ignore 54 self.pushButton_2.clicked.connect(MainWindow.close) # type: ignore 55 self.pushButton.clicked.connect(self.lineEdit.clear) # type: ignore 56 QtCore.QMetaObject.connectSlotsByName(MainWindow) 57 58 def retranslateUi(self, MainWindow): 59 _translate = QtCore.QCoreApplication.translate 60 MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow")) 61 self.pushButton.setText(_translate("MainWindow", "clear")) 62 self.label.setText(_translate("MainWindow", "TextLabel")) 63 self.pushButton_2.setText(_translate("MainWindow", "OK")) 64 self.pushButton_3.setText(_translate("MainWindow", "close")) 65

mozitamehsi_main.py

1import sys 2from PyQt5.QtCore import * 3from PyQt5.QtWidgets import * 4from mozitameshi import Ui_MainWindow 5 6class Test(QMainWindow): 7 def __init__(self,parent=None): 8 super(Test, self).__init__(parent) 9 self.ui = Ui_MainWindow() 10 self.ui.setupUi(self) 11 12 13if __name__ == '__main__': 14 app = QApplication(sys.argv) 15 window = Test() 16 window.show() 17 sys.exit(app.exec_())

試したこと

何度か変えて実行してみましたが上手くいきませんでした。

補足情報(FW/ツールのバージョンなど)

pyenv
anaconda3-2023.09-0
(pip でCythonをインストールしました。)
macM1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

miraimirai

2024/01/23 08:47

エラー内容 6157 INFO: Processing module hooks... 6157 INFO: Loading module hook 'hook-PyQt5.py' from '/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/hooks'... 6208 WARNING: Hidden import "sip" not found! 6227 INFO: Loading module hook 'hook-PyQt5.QtWidgets.py' from '/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/hooks'... 6259 INFO: Loading module hook 'hook-PyQt5.QtCore.py' from '/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/hooks'... 6290 INFO: Loading module hook 'hook-PyQt5.QtGui.py' from '/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/hooks'... 6324 INFO: Performing binary vs. data reclassification (111 entries) 6359 INFO: Looking for ctypes DLLs 6364 INFO: Analyzing run-time hooks ... 6364 INFO: Including run-time hook '/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/hooks/rthooks/pyi_rth_inspect.py' 6365 INFO: Including run-time hook '/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pyqt5.py' 6366 INFO: Processing pre-find module path hook _pyi_rth_utils from '/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/hooks/pre_find_module_path/hook-_pyi_rth_utils.py'. 6367 INFO: Loading module hook 'hook-_pyi_rth_utils.py' from '/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/hooks'... 6367 INFO: Including run-time hook '/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pkgutil.py' 6371 INFO: Looking for dynamic libraries 6451 WARNING: Library not found: could not resolve '@rpath/QtPdf.framework/Versions/5/QtPdf', dependency of '/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyQt5/Qt5/plugins/imageformats/libqpdf.dylib'. 6461 INFO: Warnings written to /Users/mirai/プログラミング/Mercurial用/qt/GUI(pyQt)/ 画像表示/真画像表示/文字ためし/pyinstaller/myapp/build/mozitamehsi_main/warn-mozitamehsi_main.txt 6465 INFO: Graph cross-reference written to /Users/mirai/プログラミング/Mercurial用/qt/GUI(pyQt)/ 画像表示/真画像表示/文字ためし/pyinstaller/myapp/build/mozitamehsi_main/xref-mozitamehsi_main.html 6512 INFO: checking PYZ 6512 INFO: Building PYZ because PYZ-00.toc is non existent 6512 INFO: Building PYZ (ZlibArchive) /Users/mirai/プログラミング/Mercurial用/qt/GUI(pyQt)/ 画像表示/真画像表示/文字ためし/pyinstaller/myapp/build/mozitamehsi_main/PYZ-00.pyz 6628 INFO: Building PYZ (ZlibArchive) /Users/mirai/プログラミング/Mercurial用/qt/GUI(pyQt)/ 画像表示/真画像表示/文字ためし/pyinstaller/myapp/build/mozitamehsi_main/PYZ-00.pyz completed successfully. 6629 INFO: EXE target arch: arm64 6629 INFO: Code signing identity: None 6630 INFO: checking PKG 6630 INFO: Building PKG because PKG-00.toc is non existent 6630 INFO: Building PKG (CArchive) mozitamehsi_main.pkg 6636 INFO: Building PKG (CArchive) mozitamehsi_main.pkg completed successfully. 6636 INFO: Bootloader /Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/bootloader/Darwin-64bit/run 6636 INFO: checking EXE 6636 INFO: Building EXE because EXE-00.toc is non existent 6636 INFO: Building EXE from EXE-00.toc 6636 INFO: Copying bootloader EXE to /Users/mirai/プログラミング/Mercurial用/qt/GUI(pyQt)/ 画像表示/真画像表示/文字ためし/pyinstaller/myapp/build/mozitamehsi_main/mozitamehsi_main 6638 INFO: Converting EXE to target arch (arm64) 6646 INFO: Removing signature(s) from EXE Traceback (most recent call last): File "/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/bin/pyinstaller", line 8, in <module> sys.exit(_console_script_run()) ^^^^^^^^^^^^^^^^^^^^^ File "/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/__main__.py", line 214, in _console_script_run run() File "/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/__main__.py", line 198, in run run_build(pyi_config, spec_file, **vars(args)) File "/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/__main__.py", line 69, in run_build PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs) File "/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/building/build_main.py", line 1071, in main build(specfile, distpath, workpath, clean_build) File "/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/building/build_main.py", line 1011, in build exec(code, spec_namespace) File "/Users/mirai/プログラミング/Mercurial用/qt/GUI(pyQt)/ 画像表示/真画像表示/文字ためし/pyinstaller/myapp/mozitamehsi_main.spec", line 18, in <module> exe = EXE( ^^^^ File "/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/building/api.py", line 628, in __init__ self.__postinit__() File "/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/building/datastruct.py", line 184, in __postinit__ self.assemble() File "/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/building/api.py", line 805, in assemble osxutils.remove_signature_from_binary(build_name) File "/Users/mirai/.pyenv/versions/anaconda3-2023.09-0/lib/python3.11/site-packages/PyInstaller/utils/osx.py", line 364, in remove_signature_from_binary raise SystemError(f"codesign command ({cmd_args}) failed with error code {p.returncode}!\noutput: {p.stdout}") SystemError: codesign command (['codesign', '--remove', '--all-architectures', '/Users/mirai/プログラミング/Mercurial用/qt/GUI(pyQt)/\xa0画像表示/真画像表示/文字ためし/pyinstaller/myapp/build/mozitamehsi_main/mozitamehsi_main']) failed with error code 106! output: --sign is required Run with --help for more information.
hiroki-o

2024/01/23 13:13

pyinstaller mozitamehsi_main.py --onefileで何の問題もなくexeが生成され、動いています。
miraimirai

2024/01/24 09:13

エラーが発生し、ファイルも実行できなくなりました。。venvで仮想環境を作っています。 エラー qt.qpa.plugin: Could not find the Qt platform plugin "cocoa" in "" This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. [1] 2542 abort python mozitameshi_main.py 入れたパッケージ Package Version ------------------------- ------- altgraph 0.17.4 macholib 1.16.3 packaging 23.2 pip 23.3.2 pyinstaller 6.3.0 pyinstaller-hooks-contrib 2024.0 PyQt5 5.15.10 PyQt5-Qt5 5.15.12 PyQt5-sip 12.13.0 setuptools 65.5.0
miraimirai

2024/01/24 09:17

(pyinstaller) (base) ~/フ/M/q/G/ /真/文/p/myapp ❯❯❯ python mozitameshi_main.py qt.qpa.plugin: Could not find the Qt platform plugin "cocoa" in "" This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. [1] 3289 abort python mozitameshi_main.py
guest

回答1

0

自己解決

venvではなくanacondaで仮想環境を作ると解決しました。pipでパッケージをインストールしたため毎回リセットインストールしないといけないかもしれないです。

投稿2024/01/25 01:40

編集2024/01/25 01:52
miraimirai

総合スコア39

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問