ダウングレードされたGNU makeは機能しません。

ダウングレードされたGNU makeは機能しません。

GNU makeを4.1から3.81にダウングレードした後、makeは機能しなくなりました。ダウングレード方法は次のとおりです。

  • /usr/bin名前を変更した後makemake-4.1
  • gnu.orgからmake 3.81をダウンロードしてください。
  • make-3.81.tar.bz2次へ抽出/usr/bin
  • make-3.81に名前が変更されましたmake

今実行すると、存在しないように見えます。 GNU make 3.81を動作させるにはどうすればよいですか?

ベストアンサー1

まず、サプライヤ空間(ここでは/usr/binディレクトリ)を壊すのは悪い考えです。他のベンダーパッケージは、make利用可能な4.1に依存する可能性があり、ベンダーの更新がベンダースペースmakeへの手動変更によってクラッシュまたは中断される可能性があるため、変更を取り消す可能性があるためです。より良いオプションは、バージョンを別の場所にインストールすることですmake。たとえば、/usr/local/bin* BSDシステムではこの領域がパッケージで使用されているため、ベンダーの文書を調べて、そのバージョンをどこに配置する必要があるかを確認してから、独自のソフトウェアストアを作成するときに別の場所を選択してください。/optまたは環境に適した仮想の名前などです。もちろん、これはソフトウェアストア(特にセキュリティアップデート)でソフトウェアを更新する責任があることを意味し、ソフトウェアとサイトによっては、これらの欠点は無視または非常に深刻な場合があります。

コンパイルステップは/usr/local次のように実行されます(カスタムライブラリパスを使用)。

tar xjf make-3.81.tar.bz2
cd make-3.81
./configure --prefix=/usr/local && make && make install

以前のバージョンを必要とするすべてのアプリケーションは、makeディレクトリの前に(または現在の一部のLinuxでも)リストされるように環境変数を設定する必要がありますPATH/usr/local/bin/usr/bin/bin

env PATH=/usr/local/bin:$PATH yoursoftwarethatneedsmake3.81 ...

または、シェルrc、Webサーバー、またはその他の構成で手動で実行できます。アプリケーションに以前のバージョンが必要ですが、make他のソフトウェアによってブロックされる追加のコンテンツが必要な場合は、問題になる可能性があります。これを防ぐには、バージョンディレクトリにインストールしてください。/usr/bin/usr/local/binmake

./configure --prefix=/opt/`uname -m`/make-3.81

その後、アプリケーションは/opt/x86_64/make-3.81/bin最初にそのアプリケーションで実行する必要があります(Linuxではamd64と仮定)PATH。あるいは、1つのアーキテクチャしか実行していない場合は、パスを単純化するか、単一のツリーで複数のオペレーティングシステムをサポートするように/opt/make-3.81複雑にすることもできます。/opt/centos7/x86_64/make-3.81アドインがこのようにインストールされると、次のようになります。拾って入れる面倒ではなく、バージョン管理されたインストールを管理するのに役立ちますPATH。十分な注意と注意、リソースを通じてこのように構築されたソフトウェアリポジトリは、次のように発展することができます。アポロ、特定のサイトに対するソフトウェアライブラリの理想的な形式は、サイトのサイズ、ベンダーが制御しないソフトウェアをどれだけインストールするかなどによって異なります。

おすすめ記事