Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ gSOAP Webservice,编译时出错_C++_Gsoap - Fatal编程技术网

C++ gSOAP Webservice,编译时出错

C++ gSOAP Webservice,编译时出错,c++,gsoap,C++,Gsoap,我在Ubuntu 10.10上使用带有G++编译工具的Netbeans IDE 6.9。如果我尝试编译我的Web服务,会出现以下错误: build/Debug/GNU-Linux-x86/main.o: In function `main': /home/mark/NetBeansProjects/stonService/main.cpp:11: undefined reference to `stonSoapBindingService::stonSoapBindingService()' /

我在Ubuntu 10.10上使用带有G++编译工具的Netbeans IDE 6.9。如果我尝试编译我的Web服务,会出现以下错误:

build/Debug/GNU-Linux-x86/main.o: In function `main':
/home/mark/NetBeansProjects/stonService/main.cpp:11: undefined reference to `stonSoapBindingService::stonSoapBindingService()'
/home/mark/NetBeansProjects/stonService/main.cpp:16: undefined reference to `stonSoapBindingService::serve()'
/home/mark/NetBeansProjects/stonService/main.cpp:18: undefined reference to `stonSoapBindingService::run(int)'
/home/mark/NetBeansProjects/stonService/main.cpp:19: undefined reference to `stonSoapBindingService::soap_stream_fault(std::basic_ostream<char, std::char_traits<char> >&)'
/home/mark/NetBeansProjects/stonService/main.cpp:24: undefined reference to `stonSoapBindingService::~stonSoapBindingService()'
/home/mark/NetBeansProjects/stonService/main.cpp:24: undefined reference to `stonSoapBindingService::~stonSoapBindingService()'
collect2: ld returned 1 exit status
make[2]: *** [dist/Debug/GNU-Linux-x86/stonservice] Fehler 1
make[1]: *** [.build-conf] Fehler 2
build/Debug/GNU-Linux-x86/main.o:在函数“main”中:
/home/mark/NetBeansProjects/stonService/main.cpp:11:对“stonSoapBindingService::stonSoapBindingService()”的未定义引用
/home/mark/NetBeansProjects/stonService/main.cpp:16:对“stonSoapBindingService::service()”的未定义引用
/home/mark/NetBeansProjects/stonService/main.cpp:18:对“stonSoapBindingService::run(int)”的未定义引用
/home/mark/NetBeansProjects/stonService/main.cpp:19:未定义对“stonsoabindingservice::soap\u stream\u fault(std::basic\u ostream&)”的引用
/home/mark/NetBeansProjects/stonService/main.cpp:24:对`stonSoapBindingService::~stonSoapBindingService()'的未定义引用
/home/mark/NetBeansProjects/stonService/main.cpp:24:对`stonSoapBindingService::~stonSoapBindingService()'的未定义引用
collect2:ld返回了1个退出状态
make[2]:***[dist/Debug/GNU-Linux-x86/stonservice]Fehler 1
make[1]:***[.build conf]Fehler 2

在我的main.cpp中,我包含了那些函数所在的.h文件。我的错误在哪里?生成文件是由netbeans生成的

您必须将gSoap创建的文件添加到netbeans项目中(使用添加现有文件)

然后,在项目礼仪中,您必须:

  • 在预处理器定义中与_PURE_VIRTUAL一起使用(这是可选的)
  • 在要链接的库中添加-lgsoap++

应该这样做。至少,它对我起了作用。

我找到了解决问题的方法,这是因为我在main.cpp中没有wsdl文件中的所有函数

这是一个链接器错误,您正在链接到gSOAP库吗?它是否存在于makefile中指定的路径中?否,makefile是由Netbeans生成的,如何在gsoap库中创建?检查Netbeans的文档,查看如何通过在google上搜索来通过设置添加库。我不使用Netbeans,因此无法说出步骤。我使用创建的makefile进行了尝试。我有stdsoap2.cpp文件,但有相同的错误。