こんにちは。NoMaYです。例えば以下のようなシンボル重複リンクエラーに関しては、以下のスレッドに投稿されていたように、L2300エラーメッセージをワーニングレベルに変更することで当該シンボルを定義した全てのファイルに対してメッセージを表示するようになりますので修正対象のファイルを確認し易くなります。最近、ベクタ重複リンクエラーも、同様に、E0562142エラーメッセージをワーニングレベルに変更することで幾らか原因を調べ易くなりそうなことに気付きましたので、参考までに投稿します。シンボル重複リンクエラーの調査方法例)
L2300 Duplicate symbol "_Excep_CMTU0_CMT0"
初めてのビルドjapan.renesasrulz.com/cafe_rene/f/002-2095199602/5401/thread/30511#30511ベクタ重複リンクエラーの調査方法例)
E0562142:Interrupt number "27" of "vector" has multiple definition
以下の画面コピーのようにE0562142エラーメッセージをワーニングレベルに変更する→そうすると詳細MAPファイルが最後まで出力されるようになるので該当するベクタの割り込み関数を調べる→→調べて見付けた割り込み関数が所望の割り込み関数で無ければその関数が原因である→→調べて見付けた割り込み関数が所望の割り込み関数で有ればその関数のベクタ設定の#pragma interruptをコメント化する→→→ビルドし直すと詳細MAPファイルの該当するベクタに別の割り込み関数が表示される筈なのでその関数が原因であるCS+のリンカ設定e2 studioのリンカ設定エラー時の詳細MAPファイル例(エラーなので初めの方しかない)
*** Options ***-subcommand=DefaultBuild\sim_rx65n_freertos_full_demo.clnk...略...-show=all...略...-change_message=warning=2300-total_size-nologo-end*** Error information ***E0562142:Interrupt number "27" of "vector" has multiple definition
ワーニング化時の詳細MAPファイル例(一応リンク完了するので最後まで出力される)
*** Options ***-subcommand=DefaultBuild\sim_rx65n_freertos_full_demo.clnk...略...-show=all...略...-change_message=warning=2300,2142-total_size-nologo-end*** Error information ***W0562142:Interrupt number "27" of "vector" has multiple definition*** Mapping List ***...略......略...*** Variable Vector Table List ***NO. SYMBOL/ADDRESS 0 _undefined_interrupt_source_isr...略... 27 _r_Config_ICU_software_interrupt ← これが所望の割り込み関数ではなかった...略...*** Cross Reference List ***...略......略...
NoMaY様
リプライありがとうございます。
早速試してみて、エラーがワーニングにはなりましたが、Mapファイルには、「Mapping List」は書かれてますが、
それ以下の「Variable Vector Table List」などが書かれてませんでした。
何かオプションがひつようなのでしょうか。
えんどう さん、こんにちは。NoMaYです。すみません、もしかすると、リンクオプション設定でマップファイルの出力内容を"すべて出力する"にしないと出ないかも知れません。試してみて頂けませんか。(この設定が自分のデフォルトでしたので気付かなかった。)
NoMay様
リンクオプション設定にマップファイルの設定が見当たりません。
誠に申し訳ないのでそうが、詳しい場所を教えていただけないでしょうか。
えんどう さん、こんにちは。NoMaYです。以下のオンラインヘルプの箇所です。CC-RXのプロパティのリンクオプションタブにあります。ビルド・ツール操作編 > 機能 > 出力ファイルの種類を設定する > マップ情報を出力する2.3.3 マップ情報を出力するtool-support.renesas.com/autoupdate/support/onlinehelp/ja-JP/csp/V8.06.00/CS+.chm/BuildToolOperation-CCRX.chm/Output/bd_function_intro11.html
おかげでICUの割り込み設定にミスがあったことが判明し、修正することができました。
無事にエラーがなくなり、コンパイルが可能となりました。
ありがとうございます。