Renesas Synergy™

FAQ 3000113 : memcpy関数とmemset関数のE056231メッセージ(CC-RL)

Q : 質問

RL78コンパイラCC-RLを使用しています。標準・数学ライブラリを使用しない設定にすると、次のエラーになります。
プログラム中にmemcpy関数とmemset関数を使用していないのですが、なぜエラーになるのでしょうか?

「E0562310:Undefined external symbol "_memcpy" referenced in "DefaultBuild\main.obj"」
「E0562310:Undefined external symbol "_memset" referenced in "DefaultBuild\main.obj"」


A : 回答

CC-RLでは、memcpy関数とmemset関数をランタイムライブラリとして使用します。お客様のプログラムをコンパイルする際にmemcpy関数、または、memset関数を使用するコードを出力しているために、エラーになっています。
CC-RLでは、memcpy関数とmemset関数は、ランタイムライブラリ関数用のライブラリファイル(*.lib)関数にて定義していますので、このランタイムライブラリ(*.lib)をリンカで指定してください。
ランタイムライブラリを使用したくない場合は、memcpy,memset関数を自作してください。

適用製品

e² studio
CS+ (旧 CubeSuite+)
RL78ファミリ用Cコンパイラパッケージ
他にご質問がございましたら、リクエストを送信してください