すべてのLinuxベースのオペレーティングシステムで実行する必要があるPythonスクリプトを作成しようとしています。 Pythonスクリプトは、私がコンパイルしてスクリプトに含めたいくつかの既存のツール(pathloadやiperfなど)の実行可能ファイルを呼び出します。
これを行うには、すべてのLinuxオペレーティングシステムとアーキテクチャで実行される実行可能ファイルをコンパイルする必要があります。私は現在32ビットと64ビットのUbuntu用にコンパイルしていますが、Redhatシステムでは動作しません(依存関係の問題)。実行可能ファイルをコンパイルするために広く使用されているすべてのOSタイプ(debianベース、redhatベース、archlinuxベースなど)に何があるのか教えてください。
また、これを行うより良い方法はありますか?
質問を変更する必要がある場合は、お知らせください。
答え1
Also, is there any better way of achieving this task?
はい、私は少なくとも2つのアプローチを考えました。
- ソースコードを配布できます。 「Unix」は、ソースコードから「移植」する長い伝統を持っています。 iperfとpathloadは両方ともソースごとに割り当てられ、両方とも
autoconf
移植性を「付与」するために使用されます(これは偶然ではありません)。アプリケーション インストーラのプロセス中にコンパイルを「のみ」自動化する必要があります。 - アプリケーションがLinuxでのみ実行されている場合は、次のツールを使用できます。openSUSEビルドサービスそうかもしれません
used for development of the openSUSE distribution and to offer packages from same source for Fedora, Debian, Ubuntu, SUSE Linux Enterprise and other distributions
。構成ファイルのみを作成すると、OBSはさまざまなUNIXディストリビューション用にアプリケーションをコンパイルしてパッケージ化します。
明らかに、両方のソリューションを実装するには時間と労力が必要です。
答え2
Linuxカーネルは多くのアーキテクチャで動作し、arch
ソースコードのディレクトリには32個がリストされています(一部は実際にはx86とx86_64のようないくつかあり、armはまさに動物園です)。総合はおそらく50に近いでしょう。