使用 gsoap 编译时出错

Error in compiling using gsoap

我正在尝试通过这些步骤生成文件后进行编译:- (1) wsdl2h -o calc.h http://www.genivia.com/calc.wsdl (2) soapcpp2 -j -CL calc.h (3) 使用以下代码创建 main.cpp:-

#include "calc.nsmap"      // XML namespace mapping table (only needed once at the global level)
#include "soapcalcProxy.h" // the proxy class, also #includes "soapH.h" and "soapStub.h"

int main()
{
  calcProxy calc;
  double sum;
  if (calc.add(1.23, 4.56, sum) == SOAP_OK)
    std::cout << "Sum = " << sum << std::endl;
  else
    calc.soap_stream_fault(std::cerr);
  calc.destroy(); // same as: soap_destroy(calc.soap); soap_end(calc.soap);
}
  1. 之后我编译发出命令:- g++ -o calcclient main.cpp soapcalcProxy.cpp soapC.cpp -lgsoap++

我收到以下错误:-

/tmp/ccA5Ergj.o: In function `soap_ignore_element(soap*)':
soapC.cpp:(.text+0x112d): undefined reference to `soap_ignore'
/tmp/ccA5Ergj.o: In function `soap_putelement':
soapC.cpp:(.text+0x149b): undefined reference to `soap_element_empty'
collect2: error: ld returned 1 exit status

请帮忙编译

我解决了这个问题。我以为该库在 /usr/lib 中,但它在 /usr/local/lib 中。我在编译时加入了 -L/usr/local/lib,它起作用了。