4

我按照gSoap 页面上的步骤操作,并尝试使用 Mingw32 编译器在 Qt/Windows 中运行示例代码。但是,如文档中所述,我无法将 lgsoap++ 添加到链接器,因为它不在源包中

要完成构建,请编译并链接生成的soapC.cpp、soapcalcProxy.cpp 和运行时gSOAP 引擎-lgsoap++(或在未安装libgsoap++.a 的情况下使用源stdsoap2.cpp)与您的代码。

然后我尝试将 stdsoap2.cpp 添加到 SOURCES 中,结果是编译输出。所以我的问题是我将如何使用 Mingw32 编译器在 Qt 中运行这个示例代码片段,或者我将如何生成该 lgsoap++。以下是我的专业和源文件:

QT -= gui
TARGET = SoapCalc
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp \
    ../Console/gsoap/stdsoap2.cpp
OTHER_FILES += ../../../../../gsoap/gsoap-2.7/gsoap/calc.nsmap
HEADERS += ../../../../../gsoap/gsoap-2.7/gsoap/soapcalcProxy.h


#include"C:/gsoap/gsoap-2.7/gsoap/soapcalcProxy.h"
#include"C:/gsoap/gsoap-2.7/gsoap/calc.nsmap"


int main(int argc, char *argv[])
{
    calcProxy service;
    return 0;
}
4

1 回答 1

5

最后,我已经解决了。遵循gSoap 页面上的指南。将以下文件添加到您的项目中:生成的 *.cpp、*.h、*.nsmap、服务定义文件 - 您在命令行中键入的名称,例如指南中的 calc.h - 和 stdsoap2.h/cpp 文件下载的 zip 文件的 gsoap 目录。在将代理文件 - 例如 soapcalcProxy.h - 和 *.nsmap 包含到您的主文件之后,还有一件事我之前忘记意识到:

LIBS += C:\MinGW\lib\libws2_32.a 添加到您的 *.pro 文件中。libws32_a 是已弃用的 libwsock32.a 文件的当前版本。

于 2010-05-30T15:41:27.620 回答