はじめまして、ヨッシーと申します。
freeRTOSを検討したいと、sampleのプロジェクトをダウンロードして
確認を進めようとしています。
ターゲットはRX65Nとして、FS2021_RX65N_FreeRTOPSとFS2021_RX65N_FreeRTOS_GCCを
e2studioでインポートしてコンパイルしているのですが
FS2021_RX65N_FreeRTOS_GCCだけ、vecttle.cの
R_BSP_ATTRIB_SECTION_CHANGE_EXCEPTVECT void (* const Except_Vectors[])(void) ={ ***** 省略};
で、下記エラーとなります。
../src/smc_gen/r_bsp/mcu/rx65n/vecttbl.c:175:39: error: expected ';' before 'void' R_BSP_ATTRIB_SECTION_CHANGE_EXCEPTVECT void (* const Except_Vectors[])(void) = ^~~~~
どの様に解決するのでしょうか?
どなたか、ご教授頂けると有難いです。
ヨッシーです。
(1) e2 studio
2021-10(21.10.0)
(2) GCC for Renesas RX
8.3.0.202102
です。
宜しく、お願いします。
ヨッシーさん、こんにちは。NoMaYです。ごめんなさい、ルネサスさんのセンサソフトウェアのウェブページからダウンロード出来ると思っていたのですけれど、HS3001やZMOD○○○のサンプルプログラムはあったのですが、FS2012のものがありませんでした。(FITの単品しか置かれていなかった。) ヨッシーさんがダウンロードされた場所を教えて頂けませんか?
ヨッシーさん
こんにちは、シェルティです。ルネサスの中の人です。
RX65Nマイコンやセンサをご検討いただきありがとうございます。
ご提示いただいたサンプルを正しくビルドするためには一度スマートコンフィグレータでコード生成しなおしてみてください。NoMaYさんのご推察の通りコード生成で自動生成させるコードはサンプルダウンロード時に時間がかかるので削除しています。
以下、実際にうまくいくのか試してみました。以下手順でビルドOKになりました。
①FS2012_RX65N_FreeRTOS_GCC を e2 studio にインポート
②プロジェクトエクスプローラにある「FS2012_RX_FreeRTOS.scfg」をダブルクリックしスマートコンフィグレータを起動
③コンポーネントタブに以下のようにmissing parts (灰色のキューブ型アイコン)があれば「コンポーネントをダウンロード」をクリックして「OK」ボタン
⇒GitHubから適切なコンポーネントの適切なバージョンを自動ダウンロードしてきます。
④スマートコンフィグレータ右上の「コードの生成」を押す
⑤ビルドする⇒OK
以上です
NoMayさん
シェルティさんの回答に有りますが、
FS2012_RX_FreeRTOS.scfgでコード生成し
それでも、インクルドPATHがたりなかったので、
プロジェクト ⇒ プロパティ ⇒ C/C++一般 ⇒ パスおよびシンボル で
RTOS関係のディレクトリーを追加しました。
それで、たりないファイルはインクルード出来たのですが
お尋ねしたエラーが残りました。
何かが、たりないのだと思いますので、シェルティさんのご提示通り実行してみます。
以上、有り難うございます。
シェルティさん。ヨッシーです。
ご提示の通りを行った心算ですが、エラーが解消されません。
コンポーネントですが、グレーアウトではなく、ビックリマークが付いている状態です。
コンポーネントにマウスを合わせるとポップアップで
>サンプルプロジェクトが利用可能です
ダウンロードするには、コンポーネントを右クリックし、サンプルプロジェクトのダウンロードとインポートを選択します。
と表示します。
以前は何もしていませんでしたが、ダウンロードとインポートを行いましたが、
ビックリマークは消えませんでした。
この状態でコード生成したら、それなりにディレクトリーとファイルが出来ます。
それで、インクルードファイルが無いエラーは出ない状態です。
すべてビルドで、プロジェクトのビルドを行いますが
vecttble.c の
R_BSP_ATTRIB_SECTION_CHANGE_EXCEPTVECT void (* const Except_Vectors[])(void) =
の行で、次のエラーとなります。
なにか、足りないのでしょうか?
以上、宜しくお願い致します。
ヨッシーさん、こんにちは。NoMaYです。> それでも、インクルドPATHがたりなかった> RTOS関係のディレクトリーを追加しましたここが何かおかしいですね。最初の投稿に、プロジェクトをインポートされた、とありましたので、新規にプロジェクトを作成して、FS2012_RX_FreeRTOS.scfgをコピーして、ファイルを生成させて、では無いのですよね?、、、e2 studioに用意されているプロジェクトのインポート機能を使われた、ということですよね?、、、(プロジェクトをインポートする、という操作のイメージが私達と合ってるかな?の確認です、、、)また、可能なら以下のファイルをzipファイルに固めて投稿に添付して投稿して頂くことは出来ませんか?(1) .project(2) .cprojct(3) FS2012_RX_FreeRTOS.scfg(4) ビルドログ(ビルド時にConsoleビューに表示されたものをテキストファイルにコピペしたもの)
NoMayさん。ヨッシーです。
いろりろ試して、最初が解らなくなってしまいましたが
『FS2012_RX_FreeRTOS.scfgをコピーして、ファイルを生成させて』はしていませんので
インポート機能を使ったと思います。
e2 studioは初めてですので、今一つ勝手がわからず、申し訳ありません。
コンポーネント.zip
ヨッシーさん、こんにちは。NoMaYです。どうもzipファイルをありがとうございました。ただ、頂いたGNURXプロジェクトの.cprojectファイルですが、e2 studio 2021-07からでは、プロジェクトのプロパティのコンパイラ設定のタブを開こうとするとエラーが発生して正しくタブを開けませんでした。また、.cprojectをエディタで開いて中を見ると、プロジェクトの対象デバイス名とかCPUコアバージョンとか欠落していると見受けられましたので、先ほど頂いたリプライの内容と合わせて考えると、これはe2 studio 2021-10のGNURXプロジェクトのインポート機能に不具合が生じている可能性が疑われます。(実は予感的には、また互換性を捨てたプロジェクトフォーマットの変更をやらかしたのでは?とも思っていますけども、、、)今の印象では、これは自分でもe2 studio 2021-10をインストールしてみないといけないかな、というところですので、暫く待って頂けますか。(その前にe2 studio 2021-10のリリースノートを確認しなくては、、、)
ヨッシーさん、こんにちは。NoMaYです。自分でもe2 studio 2021-10をインストールしてやってみましたが、問題無く出来ました。一応、以下の3つをzipファイルに固めて添付しておきます。そちらの環境に上書きして試してもらえますか。issue_20211012_e2_import.zip(1) .project ← ルネサスさんのサイトからダウンロードしたもののままで変化無しです(2) .cprojct(3) FS2012_RX_FreeRTOS.scfg ← ルネサスさんのサイトからダウンロードしたもののままで変化無しです
ヨッシーさん、こんにちは。NoMaYです。> いろいろ試して、最初が解らなくなってしまいましたが思ったのですが、これは即ち、シェルティさんからアドバイスがあったやりかたを試した時にインポート手順からやり直したわけでは無かった、ということなんですね?試しに、ルネサスさんのサイトからダウンロードしたものを使って、最初から、つまりインポート手順から、やり直してみるとどうなりますでしょうか?
頂いたファイルをコピーして、ビルドが通りました。
有り難うございました。
今一度、試してみます。