libONVIF icon indicating copy to clipboard operation
libONVIF copied to clipboard

Will the following commands cause an error?

Open wexbyte opened this issue 7 months ago • 3 comments

COMMAND ${Gsoap_soapcpp2_PATH} -Ed -Ec -c++11 -z4 -a -j -L -x -n -d ${CMAKE_CURRENT_SOURCE_DIR}/generated -I ${GSOAP_DIRS} generated.h Based on the generated.h file, when executing the soapcpp2 command to generate more files, will there be no errors? For example: soapcpp2 -Ed -Ec -c++11 -z4 -a -j -L -x -n -d ./generated -I ./gsoap/:./gsoap/import/:./gsoap/custom/:./gsoap/plugin/ generated.h

** The gSOAP code generator for C and C++, soapcpp2 release 2.8.138 ** Copyright (C) 2000-2025 Genivia Inc. All Rights Reserved. ** The soapcpp2 tool and its generated software are released under the GPL. ** ---------------------------------------------------------------------------- ** A commercial use license is available from Genivia Inc., [email protected] ** ----------------------------------------------------------------------------

qdatetime.h(74): WARNING: invalid type specified (missing ';' or type name used as non-type identifier?)

generated.h(326): ERROR: class 'SOAP_ENV__Envelope' already declared at generated.h:280 (redundant 'class' specifier here?)

generated.h(92724): ERROR: faultcode member missing in SOAP_ENV__Fault declared at wsa5.h:290

generated.h(92724): ERROR: faultstring member missing in SOAP_ENV__Fault declared at wsa5.h:290

generated.h(92724): ERROR: SOAP_ENV__Code member missing in SOAP_ENV__Fault declared at wsa5.h:290

generated.h(92724): ERROR: SOAP_ENV__Reason member missing in SOAP_ENV__Fault declared at wsa5.h:290

generated.h(92724): ERROR: SOAP_ENV__Node member missing in SOAP_ENV__Fault declared at wsa5.h:290

generated.h(92724): ERROR: SOAP_ENV__Role member missing in SOAP_ENV__Fault declared at wsa5.h:290

Using project directory path: ./generated/ Saving ./generated/soapStub.h annotated copy of the source interface header file Saving ./generated/soapH.h serialization functions to #include in projects 段错误 (核心已转储)

wexbyte avatar Jun 27 '25 08:06 wexbyte

libONVIF is only compatible with gsoap version 2.8.88. You are using latest gsoap version 2.8.138. To make libONVIF compatible with newer gsoap versions is not so easy! I created a new branch and started to adopt libONVIF to latest gsoap version: wsdl2h and soapcpp2 run without errors on this branch. But when I try to compile libONVIF with the newly generated code I get a compiler error:

home/bjoern/dev/source/libONVIF/src/gsoap/qdatetime.cpp:93:56: error: could not convert ‘* a’ from ‘const QDateTime’ to ‘timeval’
   93 |    || soap_string_out(soap, soap_xsd__dateTime2s(soap, *a), 0))
      |                                                        ^~
      |                                                        |
      |                                                        const QDateTime

It seems like the QDateTime replacement of xsd__dateTime is broken in gsoap.

Tereius avatar Jul 05 '25 18:07 Tereius

libONVIF is only compatible with gsoap version 2.8.88. You are using latest gsoap version 2.8.138. To make libONVIF compatible with newer gsoap versions is not so easy! I created a new branch and started to adopt libONVIF to latest gsoap version: wsdl2h and soapcpp2 run without errors on this branch. But when I try to compile libONVIF with the newly generated code I get a compiler error:

home/bjoern/dev/source/libONVIF/src/gsoap/qdatetime.cpp:93:56: error: could not convert ‘* a’ from ‘const QDateTime’ to ‘timeval’
   93 |    || soap_string_out(soap, soap_xsd__dateTime2s(soap, *a), 0))
      |                                                        ^~
      |                                                        |
      |                                                        const QDateTime

It seems like the QDateTime replacement of xsd__dateTime is broken in gsoap.

I thought the gsoap version wouldn't have such a big impact?

wexbyte avatar Jul 10 '25 14:07 wexbyte

I thought the gsoap version wouldn't have such a big impact?

wexbyte avatar Jul 10 '25 14:07 wexbyte