コンパイラ/リンカのエラーが発生しましたが、続行するための正しい方法がわかりません。私はこの状況にあります:
- ah:このファイルでは、「インライン」として宣言された関数が定義されています。例:inline void foo1();
- bh:このファイルでは、foo1()を呼び出す「インライン」として宣言された関数が定義されています。inlinevoid foo2();
- main.c:foo1とfoo2()の両方の関数呼び出しがいくつかあります。
ここで、ahとbhのfoo1とfoo2をextern inline voidとして宣言すると、次のエラーが発生します。
prj / src / bo:関数
foo1': (.text+0x0): multiple definition of
foo1'でprj/ src / main.o:(。text + 0x0):ここで最初に定義されたmake:* [kernel]エラー1
私が説明した状況でエラー/警告なしにコンパイルおよびリンクできるようにする方法は何ですか?