S-Function​ビルダーでC++コー​ドをビルドすると,エ​ラー文が文字化けして​しまう

6 ビュー (過去 30 日間)
hiks
hiks 2023 年 4 月 5 日
コメント済み: Hiroshi Iwamura 2023 年 4 月 7 日
S-Functionビルダーを利用してC++で記述したコードをビルドしSimulinkで呼び出そうとしているのですが,エラー文が文字化けしてしまいます。またシミュレーションの実行結果のエラーについても同様に文字化けしてしまいます。解決法などありますでしょうか。
なお,S-Function内では既存の.cpp及び.hファイルをincludeして利用しています。
またMatlab GUIは日本語,当該ソースの文字コードはSJISで設定しています。
文字化け例:
S-Function Builder ブロック 'test/S-Function Builder1' でエラーが発生しました。
原因:
testSFunc_wrapper.cpp
error C2660: 'addNum': �֐��� 1 �‚̈������w��ł��܂���B
note: 'addNum' �̐錾���mF���Ă�������
warning C4244: '����': 'const real_T' ���� 'int' �ւ̕ϊ��ł��B�f�[�^��������”\��������܂��B
warning C4244: '����': 'const real_T' ���� 'int' �ւ̕ϊ��ł��B�f�[�^��������”\��������܂��B

採用された回答

Hiroshi Iwamura
Hiroshi Iwamura 2023 年 4 月 6 日
最近 S-Function は使っていませんが、C Caller / C Function では、
モデルコンフィグレーションパラメータ(Ctrl-E)-> シミュレーションターゲット -> インポート設定 で
「カスタムコードのシミュレーションを別のプロセスで行う」をチェック
でエラーメッセージの文字化けが解決しました。
ご参考までに
  2 件のコメント
hiks
hiks 2023 年 4 月 7 日
ご返信・参考HPを共有いただきありがとうございます。
実は既にこちらのHPを参考にさせていただき,「カスタムレコードのシミュレーションを別プロセスで行う」を試してみたものの,文字化けが解消されず困っていたところでした。
この方法で解消されないということは,そもそもS-FunctionとC-Functionのビルドの仕組みが違うということなのでしょうか。。。
諦めてC-Functionを利用するほうが手っ取り早いかもしれない,と薄々感じております。
Hiroshi Iwamura
Hiroshi Iwamura 2023 年 4 月 7 日
そうでしたか!
S-Function はかなり古くからあるので違うのかもしれませんね・・。
サポートにお問い合わせいただくか、C Function で間にあうのならその方が簡単でよいかもしれません。

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSimulink Function についてさらに検索

製品


リリース

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!