問題タブ [upx]
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.
c++ - UPX は動的にリンクされたバイナリを静的にリンクされたライブラリに魔法のように変換しますか?
gnu/linux amd64 で静的ライブラリを使用して qt ベースのソフトウェアを構築しようとしていますが、成功していません (qt は静的に構築されています)。
現在、一部の人々が UPX を使用していることがわかります。だから私は動的ビルドを試してみましたが、実際、「ファイル」コマンドはバイナリを静的にリンクされていると認識します。私はそれを信頼できますか?代わりに statifier の使用を検討する必要がありますか?
前もって感謝します
編集
申し訳ありませんが、私は十分に明確ではありませんでした。QT フレームワークを使用してアプリケーションをビルドしようとしていますが、ビルド スクリプトが複雑で、共有ライブラリ用に作成されています。動的にリンクされたバイナリでアプリケーションをビルドできますが、動作していますが、静的にリンクされたライブラリを含むバイナリを取得したいと考えています。UPX ソフトウェア ( http://upx.sourceforge.net/ ) を試してみましたが、他のトピックで見たように、動的ライブラリを含むバイナリを静的ライブラリを含むバイナリに変換するために使用されていました。
しかし、それは私にはあまりにも魔法のようです.それは本当に機能していますか?
回答ありがとうございます。
nsis - NSIS UPX 圧縮された EXE のファイル バージョンを取得します。
インストーラーのウェルカム テキストに表示できるように、EXE のバージョンを取得する小さな NSIS スクリプトを数年間使用しています。
ここでスクリプトを取得しました: http://nsis.sourceforge.net/Invoking_NSIS_run-time_commands_on_compile-time
最近、UPX を使用してアプリケーションの EXE を圧縮し始めました。
UPX 圧縮されたので、ファイル バージョン スクリプトが機能しなくなりました。おそらく、非標準のヘッダー レイアウトが原因だと思います。
UPX で圧縮された EXE からファイルのバージョンを読み取るにはどうすればよいですか?
更新: これは現在クローズされていますが、これは何らかの昇格されたアクセス許可の問題と、マップされたドライブでのコマンドの実行に関係している可能性が高いことを後で発見しました。
delphi - UPX を安全に使用するにはどうすればよいですか?
圧縮方法をupx
使用してアプリケーションのサイズを縮小しようとしています。--lzma
しかし、upx
圧縮後にアプリケーションを使用してスキャンすると、このアプリケーションがウイルスに感染していることがわかります。これは出てくるウイルスの結果です
Gen:Adware.Heur.RmTfWDj6fzli
を使用する前にアプリケーションをスキャンするとupx
、アプリケーションは完全にクリーンで、ウイルスは検出されませんでした。
この問題を回避するにはどうすればよいですか?
ここからupx 391を使用していますhttp://upx.sourceforge.net/
android - UPX は、Android の -fPIE および ARM では機能しません
-static でコンパイルしたマルチスレッド C++ プログラムが Android で正しく動作しません。-fPIE でコンパイルすると、期待どおりに動作します。理由はわかりません。私の問題は、実行可能形式が不明であると表示されているため、UPX で PIE 実行可能ファイルを圧縮できないことです。解決策はありますか?ありがとう。
よろしく
common-lisp - UPX がコンパイルされた SBCL アプリを壊すのはなぜですか?
UPX (実行可能ファイルから余分なバイトを絞り出すツール) は、buildappツールに組み込まれている圧縮よりもわずかなスペースを節約するため、これはほとんどばかげた質問です。
非常に小さなデモ アプリケーションでは、42 メガバイトのファイルが作成されます。SBCL 環境は小さくないので、理解できます。
--compress-core
オプションを に渡すと、buildapp
それが 9.2MB に縮小されます。
結果のバイナリに UPX を投げてみようと思ったのですが、節約できるのはあと数バイトだけです。9994288 -> 9871360
ただし、結果のファイルはもう実行されません。SBCL REPL にジャンプするだけです (エラーなしで、sbcl
手動で実行したかのようです)。
UPX は、この破損の原因となったバイナリに対して何を行いましたか?
python - pyInstaller/UPX で作成された実行可能ファイルで QtCore4.dll エラーが発生する
pyInstallerでコンパイルした python プログラムは、400 MB を超えることが判明しました。プログラムの GUI は、「PySide の QtWebKit ライブラリのラッパー」であるhtmlPYに基づいています。プログラムのサイズが大きいのは、一部には numpy、scipy、および nltk を使用しているという事実と、一部にはグラフィック ライブラリが原因です。
プログラムのサイズを最小化するために、UPXをインストールしました。これにより、プログラムのサイズが 100MB をわずかに超えるまで減少しました。これは大きいですが、許容範囲内です。
最初の問題は、pyInstaller が htmlPy を検出せず、コンパイルされたプログラムにインクルードしなかったことです。これは、htmlPy モジュールを Python インストールから pyInstaller によって作成された「dist」ディレクトリにコピーすることで修正できます。これを行った後、UPX なしでコンパイルされたバージョンのプログラムは正常に動作していました。
htmlPy を「dist」ディレクトリに追加した後、実行可能ファイルを実行すると、GUI が作成された時点でプログラムがクラッシュします。これが UPX と QT の間、または UPX、QT、および htmlPy の間の相互作用の問題によるものかどうかはわかりません。Windows の「問題の署名」は次のとおりです。
ここで何が起こっているのか、それを修正する方法についてのアイデアはありますか?
編集:
これらは私の .spec ファイルの内容です:
これらは rthook_pyqt4.py の内容です:
編集2:
初期化コードの一部を次に示します (標準の htmlPy 運賃)。
ステップ 3 に進む前に、プログラムがクラッシュします。
binary - シェルスクリプトを実行する Applescript ドロップレット
次のことを行う Automator で Applescript ドロップレットを作成したいと思います:ドロップレットに「Application.app」をドロップすると、スクリプトが実行されます
ここで、「Application.app」とバイナリは変数であり、upx.out は Automator ドロップレットの Resources サブフォルダーに含まれています。