小弟初学,在编译程序时遇到不明白的地方,特来请教:同样一段程序调用cgi提供的函数,用c编译器编译通过,用c++编译则不行(内附代码)
#include <stdio.h>
#include <stdlib.h>
#include <cgi.h>
s_cgi *cgi;
void LoginError_Form()
{
.....................
}
int main (int argc, char **argv, char **env)
{
char *path_info = NULL;
char *user = NULL;
char *username = NULL;
char *password = NULL;
cgiDebug(0, 0);
cgi = cgiInit();
username = cgiGetValue(cgi, "user");
password = cgiGetValue(cgi, "password");
cgiHeader();
LoginError_Form();
return 0;
}
////////////////////////////////////////////////////////////////
gcc -g -o checkin CheckIn.c -lcgi 编译通过
g++ -g -o checkin CheckIn.c -lcgi 报错如下:
undefined reference to 'cgiDebug(int , int)'
undefined reference to 'cgiInit(void)'
undefined reference to 'cgiGetValue(...)' 等等
就是所有的cgi中的函数都不可用,这是怎么回事呢?