0

I have to create SOAP services in C using axis2C. But since axis2C is kind of not maintained properly as per this question, I have to use axis2C unofficial source code. But I could not see configure file to build the sources. How should I build this. I checked all the documentation both in here and in the github repo but no luck. All points to the axis2C official documentation. Should I copy the sources from unofficial to official code and try with the configure script in official folder ?

Bill Goldberg
  • 1,699
  • 5
  • 26
  • 50
  • Is there a `configure.ac`? Then install `autoconf`, `automake` and `libtool` and try the command `autoreconf -i` –  Jun 14 '17 at 15:27
  • Thanks @FelixPalmen it did the trick. Also I found one autogen.sh script in source as per this [wiki](https://code.google.com/archive/p/axis2c-unofficial/wikis/InstallationManualLinux.wiki). Could you please post this as answer ? – Bill Goldberg Jun 14 '17 at 15:57
  • Glad it helped. I wrote an answer hopefully explaining enough to be useful to future readers. –  Jun 15 '17 at 07:55

1 Answers1

1

This project probably uses the GNU build system. In this system, ./configure is a portable shell script that is automatically generated from hand-written input files, the main file is configure.ac.

So, distribution packages of the source will contain ./configure, therefore enabling anyone on any platform with a sh-compatible shell and a make utility to build the software. But as it is a generated file, you will not find it in source-code repositories, e.g. on github.

To build a package using the GNU build system directly from source controls, you have to use the GNU autotools yourself to generate ./configure. In order to do this, install the following packages:

  • autoconf -- generates ./configure from ./configure.ac.
  • automake -- generates portable makefile templates Makefile.in from Makefile.am (those templates are then filled with values by the ./configure script to write the final Makefiles)
  • libtool -- tools for building dynamic shared objects on different platforms

Then, the command autoreconf -i given in the root of your source package should generate the ./configure script for you.

Note that there are packages providing a script ./autogen.sh (or similarly named). If this is there, you should call it instead of running autoreconf -i yourself, it might contain additional necessary preparation steps. ./autogen.sh will typically directly run the generated ./configure for you.