0
|
1 The gSOAP 'soapcpp2' source-to-source code compiler
|
|
2
|
|
3 INSTRUCTIONS
|
|
4
|
|
5 The gSOAP soapcpp2 tool translates annotated C/C++ header files with interface
|
|
6 defitions for services and clients to service and client implementation code.
|
|
7 It also maps the C/C++ types to XML types, with the ability to generate XML
|
|
8 schema and WSDL documents.
|
|
9
|
|
10 When starting from WSDL and/or XML schemas, first use the gSOAP 'wsdl2h' tool
|
|
11 to translate these into C/C++ header file with interface definitions. Then use
|
|
12 'soapcpp2' to translate these into implementation code.
|
|
13
|
|
14 See also the README.txt in the 'wsdl' directory and documentation on the use of
|
|
15 'wsdl2h' with 'soapcpp2'.
|
|
16
|
|
17 CONTENTS
|
|
18
|
|
19 This part of the distribution contains the following files:
|
|
20
|
|
21 README.txt This file
|
|
22 MakefileManual Extra makefile when autoconf/automake fail to produce one
|
|
23 soapcpp2.h Main header file
|
|
24 soapcpp2.c Main application
|
|
25 symbol2.c Symbol table handling and code generation module
|
|
26 error2.h Header file for error2.c
|
|
27 error2.c Error handling routines
|
|
28 init2.c Compiler symbol table initialization
|
|
29 soapcpp2_lex.l Flex/Lex tokens
|
|
30 soapcpp2_yacc.y Yacc/Bison grammar
|
|
31
|
|
32 INSTALLATION
|
|
33
|
|
34 Use './configure' and 'make' in the root directory, as explained in the
|
|
35 installation instructions.
|
|
36
|
|
37 To build 'soapcpp2' when autoconf/automake fail, use:
|
|
38
|
|
39 make -f MakefileManual
|
|
40
|
|
41 The above command assumes you have Bison and Flex installed. For Yacc, please
|
|
42 edit MakefileManual and change as follows:
|
|
43
|
|
44 YACC=yacc -d -v -s soapcpp2_yacc
|
|
45 CMFLAGS=-DWITH_YACC -DWITH_FLEX
|
|
46
|
|
47 QNX INSTALLATION
|
|
48
|
|
49 On QNX the bison.simple file is located in $QNX_HOST/usr/share/bison.simple
|
|
50 Update your .profile to include:
|
|
51
|
|
52 export BISON_SIMPLE=$QNX_HOST/usr/share/bison/bison.simple
|
|
53 export BISON_HAIRY=$QNX_HOST/usr/share/bison/bison.hairy
|
|
54
|
|
55 WIN32 INSTALLATION
|
|
56
|
|
57 You need to install Flex and Bison to build soapcpp2.
|
|
58
|
|
59 An MSN article explains how to do this with MS VS2005:
|
|
60
|
|
61 http://msdn.microsoft.com/en-us/library/aa730877(VS.80).aspx#vccustombr_topic3
|
|
62
|
|
63 The older Bison v1.6 can crash on Win32 systems if YYINITDEPTH is too small:
|
|
64 Compile with /DYYINITDEPTH=5000
|
|
65
|
|
66 COMMAND LINE OPTIONS
|
|
67
|
|
68 -1 generate SOAP 1.1 bindings
|
|
69 -2 generate SOAP 1.2 bindings
|
|
70 -0 remove SOAP bindings, use REST
|
|
71 -C generate client-side code only
|
|
72 -S generate server-side code only
|
|
73 -T generate server auto-test code
|
|
74 -L don't generate soapClientLib/soapServerLib
|
|
75 -a use SOAPAction with WS-Addressing to invoke server-side operations
|
|
76 -A require SOAPAction to invoke server-side operations
|
|
77 -b serialize byte arrays char[N] as string
|
|
78 -c generate C source code
|
|
79 -dpath use path to save files
|
|
80 -e generate SOAP RPC encoding style bindings
|
|
81 -fN file split of N XML serializer implementations per file (N>=10)
|
|
82 -h display help info
|
|
83 -Ipath use path(s) for #import (paths separated with ':', or ';' for windows)
|
|
84 -i generate C++ service proxies and objects inherited from soap struct
|
|
85 -j generate C++ service proxies and objects that share a soap struct
|
|
86 -k generate data structure walkers (experimental)
|
|
87 -l generate linkable modules (experimental)
|
|
88 -m generate Matlab(tm) code for MEX compiler
|
|
89 -n use service name to rename service functions and namespace table
|
|
90 -pname save files with new prefix name instead of 'soap'
|
|
91 -Qname use name as the C++ namespace for decls, including custom serializers
|
|
92 -qname use name as the C++ namespace of all declarations
|
|
93 -s generate deserialization code with strict XML validation checks
|
|
94 -t generate code for fully xsi:type typed SOAP/XML messaging
|
|
95 -u uncomment comments in WSDL/schema output by suppressing XML comments
|
|
96 -v display version info
|
|
97 -w don't generate WSDL and schema files
|
|
98 -x don't generate sample XML message files
|
|
99 -y include C/C++ type access information in sample XML messages
|
|
100 -z1 generate deprecated old-style C++ service proxies and objects
|
|
101 infile header file to parse (or stdin)
|
|
102
|
|
103 DOCUMENTATION
|
|
104
|
|
105 See soapdoc2.pdf for documentation.
|
|
106
|
|
107 LICENSE
|
|
108
|
|
109 The gSOAP 'soapcpp2' tool and (generated) source code are released under GPL or
|
|
110 a commercial license. The commercial license is available from Genivia.
|
|
111 Please visit http://genivia.com/Products/gsoap/contract.html
|
|
112
|
|
113 COPYRIGHT NOTICE
|
|
114
|
|
115 gSOAP XML Web services tools
|
|
116 Copyright (C) 2000-2011, Robert van Engelen, Genivia, Inc. All Rights Reserved.
|