web-dev-qa-db-ja.com

GentooでABI_X86を使用する

Gentooシステムを更新してから数か月が経ちました。そして、ご想像のとおり、これは私がやり直す必要のあるパッケージ(およびUSEの変更)がたくさんあることを意味します。私のシステムは「AMD64」(multilib)ですが、「〜AMD64」から手動でキーワードを付けたパッケージがたくさんあります。

とにかく、この更新では、 "ABI_X86" USEフラグが何度も表示されます。これは何ですか?これは、新しい。それについての「eselectニュースリスト」には何もありません。

私はこのトピックを見つけました: http://forums.gentoo.org/viewtopic-t-953900-start-0.html 。それはそれを使用する方法を示しているように見えましたが、これに関する「実際の」ドキュメントはありますか?それは何をするためのものか? 「ABI_X86」を設定するために私が仮定するものは何ですか? multilibシステムがあります。 「64」が必要だと思いますが、「32」と「x32」は何ですか。ここで何をする必要があるのか​​混乱しています。

Emergeはスロットの競合について多くのことを叫んでおり、それらは「ABI_X86」に関連しているようです(エラーを正確に忘れてしまいましたが、zlibがあったことを覚えています)。

では、ABI_X86とは何か、およびその使用方法についての「公式」ドキュメントはありますか?

リンクしたスレッドから、このページを見つけました: http://kicherer.org/joomla/index.php/en/blog/liste/29-transition-of-emul-packages-to-true-multilib ですが、たくさんのキーワードを付けてmake.confを編集する前に、自分が何をしているかを知りたいです。

追伸ほとんどの「app-emulation/emul-linux-x86」パッケージ(当時必要だったもの)が「package.keywords」ファイルにあります。

24
Rocket Hazmat

また、abi_x86_x32(abi_x86_32と同じではありません)使用フラグもあります。これは実験的なもので、セミ64ビットアプリケーションを構築するためのものです。唯一の違いは、4バイトのポインタを持っていることです。これにより、メモリ使用量が4GiBに制限され、ほとんどの場合オーバーヘッドが削減され、すべての64ビット命令を使用できます。

2
Nick

現在の状況は本当の地獄です。問題は、多くのパッケージが「ハーフマスク」のようなものであるようです...正確な用語はわかりませんが、一部のパッケージには、「〜AMD64」というキーワードがあり、「abi_x86_32」使用フラグがあり、「AMD64」はありません。その使用フラグ...結果は、更新中に「abi_x86_32」を有効にしますが、emergeは、各パッケージに「〜AMD64」を追加しない限り、ABI_X86 = "(64)(-32)"のパッケージをインストールします。そして、直接emergeではなく依存関係としてプルされた場合、その変更をautounmask-writeする提案はありません。emergeは、必要な「abi_x86_32」使用フラグでそのパッケージの依存関係を満たすことができないことを通知するだけです。したがって、「〜AMD64」を含むpackage.keywordsに各パッケージを1つずつ追加する必要があります。それは多くの手作業です...そして、どのパッケージバージョンに対してそれを行うべきですか?私が実際に何を望んでいるのか、つまり「使用フラグのない「AMD64」とマークされているバージョンの場合」はわかりません。現在表示されている特定の最新バージョンを入れて将来の更新を複雑にするか、すべてのバージョンを入れて、64ビットでも安定とマークされていないバージョンをインストールすることができます...

0
user73010

間接的に関連する情報:現在のところ、systemd上の完全なKDEデスクトップシステムは、純粋なmultilibの方法(エミュレーションパッケージなし)でコンパイルできます。唯一の問題は独自のnvidia-driversパッケージですが、これは今のところオープンソースパッケージを使用することで解決できます。

開始方法(そこに含まれる他のリンク): https://forums.gentoo.org/viewtopic-t-985380-highlight-.html

Gentoo Multilibの移植ステータス https://wiki.gentoo.org/wiki/Multilib_porting_status

0
kensai