You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by Andrew Erlichson <aj...@erlichson.net> on 2004/03/03 17:20:47 UTC

porting axis-c++ to Mac OS 10.3

Hi all,
  I am trying to port Axis-C++ to mac os 10.3.2 (panther). I am running 
in to some difficulties and wanted to know if anyone out there had some 
advice.

  My basic approach has been to take the linux released source 
(axis-c-src-1-0-linux), compile xerces-c for the mac, get apache 1.3.29 
source from apache, copy in the header files to the apache 1_3 
directory in axis-c++, configure and run. I had to make one small 
change in src/engine/Axis.cpp (change #include of malloc.h to 
sys/malloc.h) to get past an early include problem. Now, it looks like 
I am running into some undefined values for INLINE being defined deep 
in libkern includes. one guess is that apache 1.3.29 is different 
enough from 1.3.27 in its config that axis-c++ won't build against it.

Here is the error I am getting on compilation (description of build 
process below)
--
Making all in server
Making all in apache
source='mod_axis.c' object='mod_axis.lo' libtool=yes \
depfile='.deps/mod_axis.Plo' tmpdepfile='.deps/mod_axis.TPlo' \
depmode=gcc3 /bin/sh ../../../depcomp \
/bin/sh ../../../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. 
-I../../.. -I/Users/aje/src/axis-c-src-1-0-linux/include -Wshadow -Wall 
-pedantic -ansi   -Wall -Wshadow -c -o mod_axis.lo `test -f 
'mod_axis.c' || echo './'`mod_axis.c
  gcc -DHAVE_CONFIG_H -I. -I. -I../../.. 
-I/Users/aje/src/axis-c-src-1-0-linux/include -Wshadow -Wall -pedantic 
-ansi -Wall -Wshadow -c mod_axis.c -MT mod_axis.lo -MD -MP -MF 
.deps/mod_axis.TPlo  -fno-common -DPIC -o .libs/mod_axis.o
In file included from /usr/include/libkern/OSByteOrder.h:35,
                  from /usr/include/mach/ndr.h:93,
                  from /usr/include/mach/clock_priv.h:7,
                  from /usr/include/mach/mach_interface.h:37,
                  from /usr/include/mach/mach.h:62,
                  from /usr/include/sys/event.h:154,
                  from /usr/include/sys/select.h:71,
                  from 
/Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/ap_config.h:1137,
                  from 
/Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/httpd.h:72,
                  from mod_axis.c:1:
/usr/include/libkern/ppc/OSByteOrder.h:42: error: syntax error before 
"uint16_t"
/usr/include/libkern/ppc/OSByteOrder.h:57: error: syntax error before 
"uint32_t"
/usr/include/libkern/ppc/OSByteOrder.h:72: error: syntax error before 
"uint64_t"
/usr/include/libkern/ppc/OSByteOrder.h:93: error: syntax error before 
"void"
/usr/include/libkern/ppc/OSByteOrder.h:107: error: syntax error before 
"void"
/usr/include/libkern/ppc/OSByteOrder.h:121: error: syntax error before 
"void"
/usr/include/libkern/ppc/OSByteOrder.h:143: error: syntax error before 
"uint16_t"
/usr/include/libkern/ppc/OSByteOrder.h:153: error: syntax error before 
"uint32_t"
/usr/include/libkern/ppc/OSByteOrder.h:163: error: syntax error before 
"uint64_t"
In file included from /usr/include/mach/ndr.h:93,
                  from /usr/include/mach/clock_priv.h:7,
                  from /usr/include/mach/mach_interface.h:37,
                  from /usr/include/mach/mach.h:62,
                  from /usr/include/sys/event.h:154,
                  from /usr/include/sys/select.h:71,
                  from 
/Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/ap_config.h:1137,
                  from 
/Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/httpd.h:72,
                  from mod_axis.c:1:
/usr/include/libkern/OSByteOrder.h:49: error: syntax error before 
"int32_t"
/usr/include/libkern/OSByteOrder.h:105: error: syntax error before 
"uint16_t"
/usr/include/libkern/OSByteOrder.h:115: error: syntax error before 
"uint32_t"
/usr/include/libkern/OSByteOrder.h:125: error: syntax error before 
"uint64_t"
/usr/include/libkern/OSByteOrder.h:137: error: syntax error before 
"void"

(and so on..)
--
Here was my exact build process:
   untar axis-c-src-1-0-linux
   untar xerces-c-src-2_5_0\
     build that according to directions in
         http://xml.apache.org/xerces-c/build-other.html#Mac
   cd axis-c-src-1-0-linux/include
   ln -s xerces-c-src-2_5_0/src/xercesc
   untar apache_1_3_29
   config apache:
     ./configure --prefix=/path/to/apache \
                   --enable-module=most \
                   --enable-shared=max
     make
   now go back to axis source/include dir
   cd axis-c-src-1-0-linux/include
   cp apache_1_3_29/src/include/*.h .
   cd $AXISCPP_HOME (which is axis-c-src-1-0-linux/include)
   ./configure
   make
    then it goes along a while and finally hits the errors above.

Thanks in advance,

Andrew

--
Andrew Erlichson
732.549.9678 (voice)
732.549.9679 (fax)
aje@erlichson.net


Re: porting axis-c++ to Mac OS 10.3

Posted by da...@opensource.lk.
Hi Andrew,

In your build process you mentioned

>    cp apache_1_3_29/src/include/*.h .

instead do
cp apache/include/*.h .

Now when you install apache it will get installed in a folder called
apache or any other name given by you in prefix option.
inside apache/include you will find files like os.h which is not in
apache_1_3_29/src/include.





>      ./configure --prefix=/path/to/apache \
>                    --enable-module=most \
>                    --enable-shared=max

By the way what does --enable-module=most do?. Does it also enable module so?

cheers
damitha


-------------------------------------------------------------------


>      make
>    now go back to axis source/include dir

>    cd $AXISCPP_HOME (which is axis-c-src-1-0-linux/include)
>    ./configure
>    make


> Hi all,
>   I am trying to port Axis-C++ to mac os 10.3.2 (panther). I am running
> in to some difficulties and wanted to know if anyone out there had some
> advice.
>
>   My basic approach has been to take the linux released source
> (axis-c-src-1-0-linux), compile xerces-c for the mac, get apache 1.3.29
> source from apache, copy in the header files to the apache 1_3
> directory in axis-c++, configure and run. I had to make one small
> change in src/engine/Axis.cpp (change #include of malloc.h to
> sys/malloc.h) to get past an early include problem. Now, it looks like
> I am running into some undefined values for INLINE being defined deep
> in libkern includes. one guess is that apache 1.3.29 is different
> enough from 1.3.27 in its config that axis-c++ won't build against it.
>
> Here is the error I am getting on compilation (description of build
> process below)
> --
> Making all in server
> Making all in apache
> source='mod_axis.c' object='mod_axis.lo' libtool=yes \
> depfile='.deps/mod_axis.Plo' tmpdepfile='.deps/mod_axis.TPlo' \
> depmode=gcc3 /bin/sh ../../../depcomp \
> /bin/sh ../../../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I.
> -I../../.. -I/Users/aje/src/axis-c-src-1-0-linux/include -Wshadow -Wall
> -pedantic -ansi   -Wall -Wshadow -c -o mod_axis.lo `test -f
> 'mod_axis.c' || echo './'`mod_axis.c
>   gcc -DHAVE_CONFIG_H -I. -I. -I../../..
> -I/Users/aje/src/axis-c-src-1-0-linux/include -Wshadow -Wall -pedantic
> -ansi -Wall -Wshadow -c mod_axis.c -MT mod_axis.lo -MD -MP -MF
> .deps/mod_axis.TPlo  -fno-common -DPIC -o .libs/mod_axis.o
> In file included from /usr/include/libkern/OSByteOrder.h:35,
>                   from /usr/include/mach/ndr.h:93,
>                   from /usr/include/mach/clock_priv.h:7,
>                   from /usr/include/mach/mach_interface.h:37,
>                   from /usr/include/mach/mach.h:62,
>                   from /usr/include/sys/event.h:154,
>                   from /usr/include/sys/select.h:71,
>                   from
> /Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/ap_config.h:1137,
>                   from
> /Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/httpd.h:72,
>                   from mod_axis.c:1:
> /usr/include/libkern/ppc/OSByteOrder.h:42: error: syntax error before
> "uint16_t"
> /usr/include/libkern/ppc/OSByteOrder.h:57: error: syntax error before
> "uint32_t"
> /usr/include/libkern/ppc/OSByteOrder.h:72: error: syntax error before
> "uint64_t"
> /usr/include/libkern/ppc/OSByteOrder.h:93: error: syntax error before
> "void"
> /usr/include/libkern/ppc/OSByteOrder.h:107: error: syntax error before
> "void"
> /usr/include/libkern/ppc/OSByteOrder.h:121: error: syntax error before
> "void"
> /usr/include/libkern/ppc/OSByteOrder.h:143: error: syntax error before
> "uint16_t"
> /usr/include/libkern/ppc/OSByteOrder.h:153: error: syntax error before
> "uint32_t"
> /usr/include/libkern/ppc/OSByteOrder.h:163: error: syntax error before
> "uint64_t"
> In file included from /usr/include/mach/ndr.h:93,
>                   from /usr/include/mach/clock_priv.h:7,
>                   from /usr/include/mach/mach_interface.h:37,
>                   from /usr/include/mach/mach.h:62,
>                   from /usr/include/sys/event.h:154,
>                   from /usr/include/sys/select.h:71,
>                   from
> /Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/ap_config.h:1137,
>                   from
> /Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/httpd.h:72,
>                   from mod_axis.c:1:
> /usr/include/libkern/OSByteOrder.h:49: error: syntax error before
> "int32_t"
> /usr/include/libkern/OSByteOrder.h:105: error: syntax error before
> "uint16_t"
> /usr/include/libkern/OSByteOrder.h:115: error: syntax error before
> "uint32_t"
> /usr/include/libkern/OSByteOrder.h:125: error: syntax error before
> "uint64_t"
> /usr/include/libkern/OSByteOrder.h:137: error: syntax error before
> "void"
>
> (and so on..)
> --
> Here was my exact build process:
>    untar axis-c-src-1-0-linux
>    untar xerces-c-src-2_5_0\
>      build that according to directions in
>          http://xml.apache.org/xerces-c/build-other.html#Mac
>    cd axis-c-src-1-0-linux/include
>    ln -s xerces-c-src-2_5_0/src/xercesc
>    untar apache_1_3_29
>    config apache:
>      ./configure --prefix=/path/to/apache \
>                    --enable-module=most \
>                    --enable-shared=max
>      make
>    now go back to axis source/include dir
>    cd axis-c-src-1-0-linux/include
>    cp apache_1_3_29/src/include/*.h .
>    cd $AXISCPP_HOME (which is axis-c-src-1-0-linux/include)
>    ./configure
>    make
>     then it goes along a while and finally hits the errors above.
>
> Thanks in advance,
>
> Andrew
>
> --
> Andrew Erlichson
> 732.549.9678 (voice)
> 732.549.9679 (fax)
> aje@erlichson.net
>
>
>


Re: porting axis-c++ to Mac OS 10.3

Posted by Roshan Weerasuriya <ro...@opensource.lk>.
Hi Andrew,

 >one guess is that apache 1.3.29 is different enough from 1.3.27 in its 
config that axis-c++ won't build against it.

So did you try on Apache 1.3.27 also, to verify this Andrew.

It is much better if you use the CVS Head Axic CPP source file instead of 
using 1.0 relese source files, if you need to get the latest source.

rgds,
roshan

At 11:20 AM 3/3/2004 -0500, you wrote:
>Hi all,
>  I am trying to port Axis-C++ to mac os 10.3.2 (panther). I am running in 
> to some difficulties and wanted to know if anyone out there had some advice.
>
>  My basic approach has been to take the linux released source 
> (axis-c-src-1-0-linux), compile xerces-c for the mac, get apache 1.3.29 
> source from apache, copy in the header files to the apache 1_3 directory 
> in axis-c++, configure and run. I had to make one small change in 
> src/engine/Axis.cpp (change #include of malloc.h to sys/malloc.h) to get 
> past an early include problem. Now, it looks like I am running into some 
> undefined values for INLINE being defined deep in libkern includes. one 
> guess is that apache 1.3.29 is different enough from 1.3.27 in its config 
> that axis-c++ won't build against it.
>
>Here is the error I am getting on compilation (description of build 
>process below)
>--
>Making all in server
>Making all in apache
>source='mod_axis.c' object='mod_axis.lo' libtool=yes \
>depfile='.deps/mod_axis.Plo' tmpdepfile='.deps/mod_axis.TPlo' \
>depmode=gcc3 /bin/sh ../../../depcomp \
>/bin/sh ../../../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. 
>-I../../.. -I/Users/aje/src/axis-c-src-1-0-linux/include -Wshadow -Wall 
>-pedantic -ansi   -Wall -Wshadow -c -o mod_axis.lo `test -f 'mod_axis.c' 
>|| echo './'`mod_axis.c
>  gcc -DHAVE_CONFIG_H -I. -I. -I../../.. 
> -I/Users/aje/src/axis-c-src-1-0-linux/include -Wshadow -Wall -pedantic 
> -ansi -Wall -Wshadow -c mod_axis.c -MT mod_axis.lo -MD -MP -MF 
> .deps/mod_axis.TPlo  -fno-common -DPIC -o .libs/mod_axis.o
>In file included from /usr/include/libkern/OSByteOrder.h:35,
>                  from /usr/include/mach/ndr.h:93,
>                  from /usr/include/mach/clock_priv.h:7,
>                  from /usr/include/mach/mach_interface.h:37,
>                  from /usr/include/mach/mach.h:62,
>                  from /usr/include/sys/event.h:154,
>                  from /usr/include/sys/select.h:71,
>                  from 
> /Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/ap_config.h:1137,
>                  from 
> /Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/httpd.h:72,
>                  from mod_axis.c:1:
>/usr/include/libkern/ppc/OSByteOrder.h:42: error: syntax error before 
>"uint16_t"
>/usr/include/libkern/ppc/OSByteOrder.h:57: error: syntax error before 
>"uint32_t"
>/usr/include/libkern/ppc/OSByteOrder.h:72: error: syntax error before 
>"uint64_t"
>/usr/include/libkern/ppc/OSByteOrder.h:93: error: syntax error before "void"
>/usr/include/libkern/ppc/OSByteOrder.h:107: error: syntax error before "void"
>/usr/include/libkern/ppc/OSByteOrder.h:121: error: syntax error before "void"
>/usr/include/libkern/ppc/OSByteOrder.h:143: error: syntax error before 
>"uint16_t"
>/usr/include/libkern/ppc/OSByteOrder.h:153: error: syntax error before 
>"uint32_t"
>/usr/include/libkern/ppc/OSByteOrder.h:163: error: syntax error before 
>"uint64_t"
>In file included from /usr/include/mach/ndr.h:93,
>                  from /usr/include/mach/clock_priv.h:7,
>                  from /usr/include/mach/mach_interface.h:37,
>                  from /usr/include/mach/mach.h:62,
>                  from /usr/include/sys/event.h:154,
>                  from /usr/include/sys/select.h:71,
>                  from 
> /Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/ap_config.h:1137,
>                  from 
> /Users/aje/src/axis-c-src-1-0-linux/include/apache1_3/httpd.h:72,
>                  from mod_axis.c:1:
>/usr/include/libkern/OSByteOrder.h:49: error: syntax error before "int32_t"
>/usr/include/libkern/OSByteOrder.h:105: error: syntax error before "uint16_t"
>/usr/include/libkern/OSByteOrder.h:115: error: syntax error before "uint32_t"
>/usr/include/libkern/OSByteOrder.h:125: error: syntax error before "uint64_t"
>/usr/include/libkern/OSByteOrder.h:137: error: syntax error before "void"
>
>(and so on..)
>--
>Here was my exact build process:
>   untar axis-c-src-1-0-linux
>   untar xerces-c-src-2_5_0\
>     build that according to directions in
>         http://xml.apache.org/xerces-c/build-other.html#Mac
>   cd axis-c-src-1-0-linux/include
>   ln -s xerces-c-src-2_5_0/src/xercesc
>   untar apache_1_3_29
>   config apache:
>     ./configure --prefix=/path/to/apache \
>                   --enable-module=most \
>                   --enable-shared=max
>     make
>   now go back to axis source/include dir
>   cd axis-c-src-1-0-linux/include
>   cp apache_1_3_29/src/include/*.h .
>   cd $AXISCPP_HOME (which is axis-c-src-1-0-linux/include)
>   ./configure
>   make
>    then it goes along a while and finally hits the errors above.
>
>Thanks in advance,
>
>Andrew
>
>--
>Andrew Erlichson
>732.549.9678 (voice)
>732.549.9679 (fax)
>aje@erlichson.net
>