未定义的引用"fun2()"

Alv*_*vin 1 c c++

我有ac b.cpp文件.

/****** a.c ******/
fun1(...)
{
     ..........

     fun2(...); /* function present in b.cpp */

     ..........
}

/******* b.cpp *******/
extern "C" int fun2(...);
int fun2(...)
{
    ..........

}
Run Code Online (Sandbox Code Playgroud)

我已编译代码如下:

a.o:a.c b.o
    gcc -c -o a.o a.c b.o

b.o:b.cpp
    g++ -c -o b.o b.cpp
Run Code Online (Sandbox Code Playgroud)

但我得到的错误是未定义的引用"fun2()".这是正确的编译方式还是我需要更改任何内容.

rem*_*s4e 5

您需要在ac中添加该函数的原型