問題タブ [buildroot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
buildroot - カスタム パッケージを開発し、ビルド ディレクトリへのソースの再同期を回避する
ソースコードがパッケージディレクトリに直接あるカスタムパッケージがあります。現時点では、buildroot はソースコードを builddirectory にコピーします。
この不必要なオーバーヘッドを回避することは可能ですか? Makefile は srcdir != builddir をサポートします。< 2011 buildroot では、SRCDIR を指定できましたが、何も再同期されませんでした。
c - Buildroot : クロス コンパイル用の gcc は?
私はビルドルートの初心者です。buildroot に複数の gcc が表示されます。すべてクロスコンパイル用だと思います。それらの違いは何ですか?
linux - パッケージをBuidrootに追加できません
buildrootにパッケージを追加しようとしていますが、あまり成功していません。追加しようとしているautotoolsパッケージは、という名前のパッケージですscew。パッケージの追加に関するbuildrootガイドラインに従いました。パッケージmake menuconfigは実行時にリストされていますが、makeを実行すると、パッケージがfinalから欠落していrootfs.tarます。
.mkまた、インストールに使用した別の単純なファイルをコピーしwhich、それに応じて変数名とURLを変更しました。これが私のコピーですscew.mk:
同じディレクトリにConfig.in、次のように表示されます。
また、次の行を追加しましたpackage/Config.in:
パッケージが一覧表示され、選択できるため、この部分は機能しているようです。helloおよびhelloworldパッケージは、パッケージを追加するためのガイドからのコピーであり、このWebサイト(フランス語で書かれています)から取得したものです: HelloWorldの追加。
helloworldパッケージも機能しません。私はこれについてただ輪になって回っているようで、私が間違っていることを見ることができないので、私はどんなアドバイスも喜んでいます。
cross-compiling - Buildroot クロスコンパイル
次のコマンドを使用してクロスコンパイルすると問題が発生します。
次のコンソール出力を使用します。
うまくコンパイルできたようです。出力ファイルを実行すると、警告によって問題が発生する可能性があります。何も表示されません。何が問題で、どのように修正すればよいですか?
linux - SVC ARM 命令 (gcc、ulibc、buildroot) を無効にする方法は?
ビルドルートを使用しています。コンパイルは正常に機能しますが、ターゲット システムのバイナリには「不正な命令」と表示されます
私はstraceを使用しました:
execve("/opt/busybox", ["/opt/busybox"], [/* 8 変数 */]) = 0 brk(0)
= 0 --- SIGILL {si_signo=SIGILL, si_code=ILL_ILLTRP, si_addr= 0xa3f20} --- +++ SIGILL によって強制終了 +++ 不正な命令
次にIDA。
その理由は SVC 命令です (si_addr は、私が試したすべてのバイナリでそれを指していました)
GCC でこの命令を使用しないようにするにはどうすればよいですか?
buildroot - Buildroot に OpenEmbedded パッチを適用する
OpenEmbedded 用に作成されたパッチを BuildRoot に変更するにはどうすればよいですか? それらの違いは何ですか?
arm - fakeroot/fakechroot を使用する ARM Linux rootfs でネットワークが機能しない
buildrootを使用してrootfsを作成しましたが、 glibcでcrosstool-ngツール チェーンを使用しています。これにより、必要な最小限のファイル セットが表示されました。次に、すべてのライブラリを、squeeze の.debパッケージから直接取得したものに置き換えました。次に、ミックスにandを追加しました(これも.debパッケージから)。、、およびファイルも好みに合わせて変更しました。これを私のデバイスにアップロードした後、多くのことが機能しています。 正しい場所に連れて行ってくれます。 ルートを返します。しかし、DNS に関連するものは何も機能していません。たとえば、不正なアドレスを返します。私はコピーしましたarmelfakerootfakechrootresolv.confhostsnsswitch.confcd /whoamiping google.comlibnss_*とlibresolv のライブラリ、その他すべて必要だと思います。同じセットアップに入りますが、ホスト マシンでqemuとchrootを使用すると機能しますが、ターゲット デバイスで何が機能していないのかを把握しようとしています。
実行するstrace ping google.comと、次のようになります。
多くのことがうまくいきました。実行可能ファイルとライブラリを検索するときに、/data/local/targetをパスに追加することがわかっていました。さまざまなlibnss_*ライブラリが検出され、ホスト ファイルが単純に ではないことがわかりました/etc/hostsが、なぜ と の正しい場所が見つからなかったと思いますnsswitch.confかresolv.conf? これは、fakechroot私がそれをどのように使用しているかの問題または問題のようです。
gcc - open vm ツールの buildroot コンパイル
buildroot 環境で open-vm-toos パッケージ (9.0.0-782409) をコンパイルしようとしましたが、1 つのファイルで失敗しました。以下はエラーのログです。ロケールインクルードに関係するものに絞り込みました。標準ロケールのインクルードと buildroot 環境で利用可能なものを切り離そうとしましたが、違いはありません。不足しているインクルードはどれですか (open-vm-tools のスクリプトを構成するために CFLAGS に明示的に渡すものがあるかもしれません)?
....
エラーが発生したファイルのコード スニペットを次に示します。