問題タブ [pynsist]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - NSIS: Tinker をインポートできません
matplotlib
を必要とするを使用するプログラムをビルドしたいと思いますtkinter
。問題は、tkinter
pyPi にない (そして現在は車輪が付いている) ため、含めることができないことです。
Pynsist を使用して NSIS インストーラーをビルドします。cfg は次のとおりです。
ビルドした exe を実行すると、次のように返されます。
また、別のライブラリが必要とするすべてのライブラリをインポートする方法はありますか?
python - GitHub アクション Pynsist NSIS YAML
Pynsist (NSIS と組み合わせた Python パッケージ) を使用して、github リポジトリに私のプロジェクトのセットアップ ファイルを含むビルド フォルダーを生成する GitHub アクションを作成しようとしています。基本的に次のことを実行するために github アクションを使用して実行できる YAML スクリプトの実例があるかどうか疑問に思いました。
- NSIS を GitHub ランナー マシンにインストールします (これを GitHub Ubuntu または Windows で行うべきか、または docker と組み合わせて行うべきかは不明です)。
- Python 3.7 をインストールします。
- pynsist とその他の python 依存関係をインストールします
- python スクリプトを実行して、installer.cfg ファイルを生成し、pynsist を呼び出して、installer.cfg を実行します。
- 追加の追加...次の例を使用して、7zipを使用してNSISビルドフォルダーの自己解凍zipを作成します( https://stackoverflow.com/a/30896241/12446456 )
アドバイスをいただければ幸いです。前もって感謝します。
python - streamlit アプリをパッケージ化し、Windows で実行可能ファイルを実行する
これは Stackoverflow に関する私の最初の質問です。私の質問が明確であることを願っています。
個人プロジェクト用に streamlit アプリをパッケージ化しようとしています。Linux で開発していますが、アプリを Windows にデプロイする必要があります。一度実行するとブラウザー タブを開いてアプリを表示し、タブを閉じると終了するスタンドアロンの実行可能ファイルにしたいと考えています。pynsist
アプリをパッケージ化するためにライブラリを使用したいと思います(すでに別のプロジェクトで使用されており、正常に機能しました)。
このディスカッションで見つかった提案に従いました。アプリをpynsistでパッケージ化した後、ubuntu、および明らかにWindowsでも正常に機能しました。「どうやら」実行可能ファイルは実行されましたが、アプリを表示するためのブラウザー タブが開いていなかったためです。
これが私のコードの一部です。
プロジェクトの構造
main.py
run_app.py ( Thomas K によるコメントの後にEDIT 2 )
EMPORIO_VESTIARIO_DASHBOARD_WORKING_DIR
アプリを Linux と Windows の両方で動作させるための環境変数です (Windows では、インストール ディレクトリに設定されます)。
pynsistインストーラー.cfg
編集:を通じて発見された streamlit の依存関係を含むpip list
編集 2: Jinja2 の依存関係として MarkupSafe を追加
Windows で実行可能な出力を見ると、現在の作業ディレクトリは正しく出力されていますが、他の出力 (streamlit アプリの初期化メッセージまたはエラー メッセージ) は出力されていません。ブラウザを開いて にアクセスしようとしましたlocalhost:8501
が、接続エラーが発生しました。
コードを実行してブラウザタブを自動的に開く方法に関するヒントはありますか? どんな助けでも大歓迎です!
編集:の最後のパッケージへのコメントで指摘されているようにinstaller.cfg
、アプリ (Jinja2 依存関係を持つ) は Windows に正しくインストールされていますが、アプリを起動すると、まだ Jinja2 依存関係が見つかりません。これはトレースバックです:
編集 2:トーマス K による役立つヒントのおかげで、解決策の半分を思いつきました。アプリが実行され、streamlit が開始されます。
しかし。
ログ メッセージは次のとおりです。
資格情報を待機しているため、アプリの実行が停止しているようです。ここで aを追加できることがわかりました.streamlit/credentials.toml
が、Windows の正確な場所はわかりません。--server.headless=false
また、subprocess.run
コマンドに明示的に追加しようとしましたが、効果はありません。
Linux のようにアプリが自動的に起動しないのはなぜですか? ユーザーが追加の構成を行わずにアプリを起動する方法はありますか?