問題タブ [musl]

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.

0 投票する
2 に答える
3727 参照

c - 実際にmusl libcを検出する方法は?

musl チームは、musl libc を検出する方法は必要ないと主張しています。なぜなら、musl libc は標準機能のみを実装しており、検出が必要な癖がないからです。

今日まで、その主張は十分に真実だったかもしれませんが、もはや真実ではありません。機能はあるが壊れているため、通常の機能検出は機能していません。コンパイル時にルートを要求したくないため、クロスコンパイルを許可しないため、プローブしたくありません。バグは最小化されたサンプル コードで報告されており、メンテナーはそれを修正することをまったく望んでおらず、私のパッチも受け取りません。

musl には壊れた機能があるため、他のすべての libc にペナルティを課すつもりはありません。

論理的に言えばやりたい

#if APPLEMac OSXには信頼できないvfork().

vfork()悪いと言われても仕方がない。状況は 2008 年以降変化しておりvfork()、関係する複雑さに関係なく、可能な限りより良い選択です。ソース: https://gist.github.com/nicowilliams/a8a07b0fc75df05f684c23c18d7db234

0 投票する
1 に答える
381 参照

gcc - QEMU を使用して Newlib アプリケーションを実行するには?

いくつかの三角関数 (sin、tan、cos など) を使用するアプリケーションを作成しました。私の目的は、GNU C ライブラリ、MUSL、および Newlib でのこれらの関数のさまざまな実装を調べることです。

これを行うには、glibcBuildrootmuslを使用して Linux GCC ツールチェーンを構築し、適切なコンパイラを使用してアプリをコンパイルし、QEMU (ユーザー モード) を使用して実行します。これは簡単です。

次に、アプリケーションの結果を Newlib バージョンと比較したいと思います。

私の特定のケースでは、RISC-VRV64GCアーキテクチャとlp64dABI 用にコンパイルしています。私の理解では、Newlib ライブラリを使用するということは、riscvv64-unknown-elf-gccコンパイラでコンパイルすることを意味します。proxy-kernel従来、Spike ISS シミュレーターを使用して、軽量 OSを使用してアプリケーションを実行できました。QEMUでそれを使用する方法はありますか? それとも、完全なベアメタル アプリケーションを構築する必要がありますか?