2011-10-24 67 views
-1

在Ubuntu 10.10上使用Netbeans IDE 6.9和G ++ Compilingtools。如果我嘗試編譯我的web服務,我得到了以下錯誤:gSOAP Webservice,編譯時出錯

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 

在我的main.cpp我包括那些人在那裏功能位於.h文件。我的錯誤在哪裏? makefile由netbeans生成!

+0

這是一個鏈接器錯誤,你鏈接到gSOAP庫嗎?它是否存在於makefile中指定的路徑中? –

+0

不,makefile是由Netbeans生成的,如何在gsoap庫? – user1010775

+0

查看NetBeans的文檔,瞭解如何通過在google上搜索來設置庫。我不使用netBeans,因此我無法說明這些步驟。 –

回答

0

我發現我的問題的解決方案,這是因爲我沒有在我的main.cpp wsdl文件中的所有功能!

2

您必須將創建的文件添加到netbeans項目(使用添加現有文件)。

然後,在該項目的禮儀,你必須:在預處理器定義

  • 使用WITH_PURE_VIRTUAL(可選的);
  • 在庫中添加-lgsoap ++以鏈接;

這應該做到這一點。至少,它對我有用。