Kunihiko IMAI <bak@d2.dion.ne.jp>2009 年 1 月 11 日 ARM gcc にまつわるいやらしい現象とその対策をまとめてみました. 1. はじめに 2. 責任の放棄 3. 想定している読者と環境 4. アラインメント 4.1 アラインメント条件を満たさないと 4.2 由緒正しい対策 4.3 バッドノウハウな対策 5. パディング 5.1 例 5.2 由緒正しい対策 5.3 バッドノウハウな対策 6. char 型 6.1 例 6.2 由緒正しい対策 6.3 バッドノウハウな対策 7. soft fp と hard fp 7.1 一般的な問題 7.2 ARM 固有の問題 8. EABI と legacy ABI 8.1 ABI とは 8.2 ABI の種類 8.3 違い 8.4 見分けかた 8.5 Debian での対応状況 8.6 影響と対策 8.7
Data::MessagePackのテストが ARM環境でテストをパスしていませんでした. これはバージョン 0.38では解決された問題です. @__gfx__さんが msgpack本体の問題を修正し, 私が PP版の 修正を行いました. 結論から言うと, ABIの問題です. ARMには OABIと EABIがあり, OABIの環境でテストをパスしていませんでした. それについて 示していきます. エンディアン ビッグエンディアン, リトルエンディアンという言葉はコンピュータに ついて勉強をしたことがある人であれば聞いたことがあると思います. 当然 msgpackもその 2つのエンディアンを考慮していました. でも ARM OABI環境ではそれだけでは対応できていませんでした. 具体例を示します. 以下のようなプログラムを用意します. #include <stdio.h> int main
BeagleBoardとは,BeagleBoard.orgが開発・販売している小型のマザー・ボードです。約8cm四方という手のひらサイズの基板上に,高性能プロセッサ「OMAP3」と128Mまたは256Mバイトのメモリーを搭載しています。OMAP3は,ARMベースのCPUコアとDSP(Digital Signal Processor)コア,2D/3Dグラフィックス・アクセラレータ・コアを統合した米Texas Instruments社製のチップです。 小型にもかかわらず,ディジタル映像出力(HDMI)やSDカード・スロット,USB2.0ポート,RS-232Cポート,オーディオ入出力などの豊富な外部インタフェースを備えています(写真)。 これほどの機能を備えた組み込みボードが,2008年後半にわずか149ドルという組み込み機器分野でのそれまでの常識を破る低価格で発売されたため,従来組み込みボード
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く