CC-RHで提供しているライブラリは,次のとおりです。
【V1.02.00以降】
|
|
|
標準ライブラリ
(プログラム診断機能関数
可変個引数関数
文字列関数
メモリ管理関数
文字変換関数
文字分類関数
標準入出力関数
標準ユーティリティ関数
周辺装置の初期化関数
RAMセクション領域初期化関数
演算用ランタイム関数)
数学ライブラリ
(数学関数(倍精度,単精度))
|
lib\v850e3v5\rhf8n.lib
|
-Xfloat=fpu,-Xdbl_size=8, -Xround=nearest指定時
|
lib\v850e3v5\rhs8n.lib
|
-Xfloat=soft,-Xdbl_size=8, -Xround=nearest指定時
|
lib\v850e3v5\rhf4n.lib
|
-Xfloat=fpu,-Xdbl_size=4, -Xround=nearest指定時
|
lib\v850e3v5\rhs4n.lib
|
-Xfloat=soft,-Xdbl_size=4, -Xround=nearest指定時
|
lib\v850e3v5\rhf8z.lib
|
-Xfloat=fpu,-Xdbl_size=8,-Xround=zero指定時
|
lib\v850e3v5\rhf4z.lib
|
-Xfloat=fpu,-Xdbl_size=4,-Xround=zero指定時
|
標準ライブラリ
(動的メモリ管理関数)
【V1.04.00以降】
|
lib\v850e3v5\libmalloc.lib
|
常に使用可能
|
lib\v850e3v5\secure\libmalloc.lib
|
セキュリティ機能使用時
【Professional版のみ】
|
標準ライブラリ
(非局所分岐関数)
|
lib\v850e3v5\libsetjmp.lib
|
-Xep=callee指定時
|
lib\v850e3v5\ep\fix\libsetjmp.lib
|
-Xep=fix指定時
|
標準ライブラリ
(プログラム診断機能関数
可変個引数関数
文字列関数
メモリ管理関数
文字変換関数
文字分類関数
標準入出力関数
標準ユーティリティ関数
周辺装置の初期化関数
RAMセクション領域初期化関数
演算用ランタイム関数)
|
lib\v850e3v5\libc.lib
|
常に使用可能(V1.01.00以前の後方互換用)
|
数学ライブラリ
(数学関数(倍精度))
|
lib\v850e3v5\libm.lib
|
-Xfloat=fpu指定時(V1.01.00以前の後方互換用)
|
数学ライブラリ
(数学関数(単精度))
|
lib\v850e3v5\libmf.lib
|
数学ライブラリ
(数学関数(倍精度))
|
lib\v850e3v5\softfloat\libm.lib
|
-Xfloat=soft指定時(V1.01.00以前の後方互換用)
|
数学ライブラリ
(数学関数(単精度))
|
lib\v850e3v5\softfloat\libmf.lib
|
【V1.01.00以前】
標準ライブラリや数学ライブラリを,アプリケーション内で使用するときは,関連するヘッダ・ファイルをインクルードして,ライブラリ関数を使用します。
ただし,プログラム診断機能関数,可変個引数関数,文字変換関数,文字分類関数だけを使用している場合,ライブラリの参照を行う必要はありません。
CS+を使用する場合,これらのライブラリはデフォルトで参照する設定になっています。
演算用ランタイム関数は,浮動小数点演算や整数演算を行うときに,CC-RHが自動的に呼び出すルーチンです。
したがって,“演算用ランタイム関数”は,他のライブラリ関数とは異なり,Cソースやアセンブラ・ソースで記述する関数ではありません。
rh***.lib はlibc.lib, libm.lib, libmf.lib の内容を含む(libmalloc.lib,libsetjmp.libは含まない)ので,rh***.lib 指定時はlibc.lib,libm.lib,libmf.lib を同時に指定しないでください。またrh***.lib は1つだけ指定してください。それ以外の指定をした場合の動作は保証しません。
secure\libmalloc.libはProfessional版ライセンスを持たない場合はリンク時エラーになります。
libmalloc.libをリンクする場合は標準ライブラリ(rh***.lib)も同時にリンクする必要があります。
旧版との互換用ライブラリ(libc.lib)の使用時は,セキュリティ機能用ライブラリは使用できません。