インストールの指示に従いました。ラズベリーパイ2のFedora。 MATEデスクトップイメージをダウンロードしました。ここ利用可能な署名で確認してください。ここを押してから私のSDカードにコピーしました。
その後、QEMU ARMの静的ビルドを使用してchroot環境を設定し、イメージchroot
で正常に起動できました。 ARM バイナリを実行してネットワークに接続できます。
chroot
ただし、次のような奇妙なエラーのため、パッケージをインストールできませんdnf
。
# dnf update
Error: Failed to synchronize cache for repo 'fedora' from 'https://mirrors.fedoraproject.org/metalink?repo=fedora-23&arch=arm': Cannot prepare internal mirrorlist: file "repomd.xml" was not found in metalink
このURLから返されたメタリンクを見ると、armhfp
リポジトリが1つしかないことがわかります。
これが誤った設定であると仮定しているので、代わりにbasearch
YUM定義変数をに変更する方法はありますか?私はもっとやるべきことがありますか、それとも私が欠けていますか?armhfp
arm
uname -m
報告構造:
# uname -m
armv7l
file
コンパイルされたファイルについて教えてください。
# file /bin/bash
/bin/bash: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 2.6.32, BuildID[sha1]=04f0998ecd3bfaea23bab0223f7ce1f602296085, stripped
答え1
これはあまりにも明白でシンプルに見えるかもしれませんが、私にとっては効果的です。
sed -r -e 's/\$basearch/armhfp/g' -i /etc/yum.repos.d/*.conf
これは $basearch のすべてのインスタンスのデフォルトの「検索と置換」で、これを armhfp に置き換えます。
技術的には、ユーザーが要求したように変数を上書きせず、そうする必要がなくなるだけです。 HTH。