0

この質問は、私が遭遇した状況のために提起されました

これらの外部ファイルと、その中にいくつかの宣言または定義があるとします。

  1. foo1.h

    extern void ext_func();

  2. foo1.c

    void ext_func(){ .... }

  3. foo2.c

        #include "foo1.h"
    
       int Modelica_func(){
          ext_func(); 
         }
    

foo1.c でext_func()を定義しました。次に、foo1.h でexternとして宣言しました。これは、foo2.c で使用したいからです。Modelica_func()は、Modelica で使用する関数です。

コンパイラは常にエラー LNK2019をスローして、未解決の外部シンボルを訴えます。おそらく、ヘッダー ファイルが一致する c ファイルを見つけられないことが原因だと思います。私は Dymola で作業しており、これらのファイルをすべてWorkingFolder/Sources/Includeに配置しました。しかし、それでも同じエラーが発生しました。他の人に自分のコードを見てもらいたいので、静的または動的ライブラリを使用できません。

誰かが私にこれを少し手伝ってくれたら大歓迎です。ありがとう!

4

1 に答える 1