GNU makeを4.1から3.81にダウングレードした後、makeは機能しなくなりました。ダウングレード方法は次のとおりです。
- に
/usr/bin
名前を変更した後make
make-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/bin
make
./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
。十分な注意と注意、リソースを通じてこのように構築されたソフトウェアリポジトリは、次のように発展することができます。アポロ、特定のサイトに対するソフトウェアライブラリの理想的な形式は、サイトのサイズ、ベンダーが制御しないソフトウェアをどれだけインストールするかなどによって異なります。