7.29 ARM C++ ライブラリコードの配置例

スキャッタファイルを使用して C++ ライブラリコードを配置できます。

以下の例は、スキャッタロードが行われる C++ プログラムです。

#include <iostream> using namespace std; extern "C" int foo () {   cout &lt;&lt; "Hello" &lt;&lt; endl;   return 1; }

C++ ライブラリコードを配置するには、以下のようにスキャッタファイルを定義します。

LR 0x0 {     ER1 0x0     {         *armlib*(+RO)     }     ER2 +0     {         *cpplib*(+RO)         *(.init_array)   ; セクション .init_array は明示的に配置する必要があります。                          ; そうしないと、2 つの領域で共有され、                          ; リンカは配置先を決定できなくなります。}     ER3 +0     {         *(+RO)     }     ER4 +0     {         *(+RW,+ZI)     } }

install_directory\lib\armlib という名前は、armlib ディレクトリにある ARM C ライブラリファイルを示しています。

install_directory\lib\cpplib という名前は、cpplib ディレクトリにある ARM C++ ライブラリファイルを示しています。

関連する概念
7.26 ARM C および C++ ライブラリコードの配置
7.27 ルート領域へのコードの配置例
7.28 ARM C ライブラリコードの配置例
関連情報
C および C++ ライブラリの命名規則
非機密扱いPDF file icon PDF 版ARM DUI0474JJ
Copyright © 2010-2013 ARM.All rights reserved.