[SUMMARY]: Making Apache 1.3.6 with the native C compiler (4.0D)

From: Irene A. Shilikhina <irene_at_alpha.iae.nsk.su>
Date: Wed, 30 Jun 1999 14:29:37 +0700 (NSD)

Hello Managers,

yesterday I wrote I wasn't able to have compiled Apache 1.3.6 with the
native C compiler because of compilation errors and I didn't want to
install GCC. At the same time I had tried it on my old 3.2C, and it had
been success. I asked for any options for the compilation. My thanks to:

Hugues Talbot <Hugues.Talbot_at_cmis.CSIRO.AU>
Paul A Sand <pas_at_unh.edu>
Paul Crittenden <crittend_at_storm.simpson.edu>
Frank Wortner <frank_at_bondnet.com>
Kevin Oberman <oberman_at_es.net>
Rick Beebe <richard.beebe_at_yale.edu>.

The cause of my difficulty was the difference between the default behaviour
of the compilers in 4.0D and 3.2C versions. I was advised various compilation
flags. I used '-oldc' offered by Hugues Talbot (%make CC='cc -oldc'), and
everything has been OK.

I think the other offers would be effectual as well. Here are some
extracts from the responses.

**********
From oberman_at_es.net :

Irene,

This needs to go into a FAQ somewhere.

By default the DEC C compiler in V4.0 uses K&R syntax. Whenever you
build code on a DU4.0 system that was written for gcc or any ANSI
compiler, use the -std CFLAG. I normally build everything "-fast
-std". Very seldom do I see any problems.

Under DU5.0 (Steel), the default will be changed to -std, so things
will build better "out of the box".

R. Kevin Oberman, Network Engineer
Energy Sciences Network (ESnet)
Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab)
E-mail: oberman_at_es.net Phone: +1 510 486-8634

**********
From richard.beebe_at_yale.edu :

I didn't have any problems--we're running 1.3.6 on three 4.0D machines. One
problem I did have (in running it) was with the HSREGEX library, so I turned
that off. Basically, I used this config:

CC=cc ./configure --with-layout=Apache --disable-rule=WANTHSREGEX
make

  _______________________________________________________________________

    Rick Beebe (203) 785-6416
    Manager, Systems & Network Engineering FAX: (203) 785-3978
    ITS-Med Client & Technology Services Richard.Beebe_at_yale.edu
    Yale University School of Medicine
    P.O. Box 208078, New Haven, CT 06520-8078
  _______________________________________________________________________
**********

My original mail is at the and of the message.
Thanks again,
Irene
*************************************************************************
* *
* Irene A. Shilikhina e-mail: irene_at_alpha.iae.nsk.su *
* System administrator, *
* Institute of Automation & Electrometry, *
* Siberian Branch of Russian Academy of Sciences, *
* Novosibirsk, Russia *
* http://www.iae.nsk.su/~irene *
*************************************************************************
* *
* The road to hell is paved with good intentions. *
* *
* [...has proved to be as actual at the end of XX as ages before...] *
* *
*************************************************************************

On Tue, 29 Jun 1999, Irene A. Shilikhina wrote:

>
> Hello Managers,
>
> I've got difficulty in compiling Apache 1.3.6 on 4.0D because of a number of
> compilation errors (I'll include these messages beneath my signature). At the
> same time I'm not inclined to install GNU compilers (at least I haven't been
> so far).
>
> >From curiosity, I passed this procedure on my old still running system
> (3.2c, which I'm planning to replace by the new one). I had some warnings,
> a kind of the following:
> -----------------------^
> /usr/lib/cmplrs/cc/cfe: Warning: ap_md5c.c, line 487: Incompatible
> pointer type
> assignment
> ap_MD5Update(&ctx, apr1_id, strlen(apr1_id));
> -----------------------
>
> Nevertheless, I installed it successfuly, and everything seemed to run OK
> (on an alternative port).
>
> Since the C compilers on these systems are different (and have different
> defaults), I guess, on 4.0D some environment variables should be set to
> override the corresponding default ones, shouldn't they? I mean such as
> CFLAGS, INCLUDES, I don't know what it's exactly.
>
> Is anyone there in the list who has passed this on 4.0D? I would be happy
> to hear from you...
>
> Thanks,
> Irene
>
> *************************************************************************
> * *
> * Irene A. Shilikhina e-mail: irene_at_alpha.iae.nsk.su *
> * System administrator, *
> * Institute of Automation & Electrometry, *
> * Siberian Branch of Russian Academy of Sciences, *
> * Novosibirsk, Russia *
> * http://www.iae.nsk.su/~irene *
> *************************************************************************
> * *
> * The road to hell is paved with good intentions. *
> * *
> * [...has proved to be as actual at the end of XX as ages before...] *
> * *
> *************************************************************************
>
> alpha:../src>make
> ===> regex
> sh ./mkh -i _REGEX_H_ regex2.h regcomp.c regerror.c regexec.c regfree.c > ../include/hsregex.h
> sh ./mkh -p regcomp.c >regcomp.ih
> cc -I. -I../os/unix -I../include -DOSF1 -DUSE_HSREGEX -DPOSIX_MISTAKE -c regcomp.c
> cc -I. -I../os/unix -I../include -DOSF1 -DUSE_HSREGEX -DPOSIX_MISTAKE -c regexec.c
> cc -I. -I../os/unix -I../include -DOSF1 -DUSE_HSREGEX -DPOSIX_MISTAKE -c regerror.c
> cc -I. -I../os/unix -I../include -DOSF1 -DUSE_HSREGEX -DPOSIX_MISTAKE -c regfree.c
> rm -f libregex.a
> ar cr libregex.a regcomp.o regexec.o regerror.o regfree.o
> ranlib libregex.a
> <=== regex
> ===> os/unix
> cc -c -I../../os/unix -I../../include -DOSF1 -DUSE_HSREGEX os.c
> cc: Warning: /usr/include/sys/cdefs.h, line 118: The redefinition of the macro "__attribute__" conflicts with a current definition because the spelling of one or more parameters is different. The redefinition is now in effect.
> #define __attribute__(x) /* delete __attribute__ if non-gcc or gcc1 */
> ----------------------^
> cc: Error: os.c, line 91: In this declaration, parameter 1 has a different type than specified in an earlier declaration of this function.
> void *ap_os_dso_load(const char *path)
> ------^
> cc: Error: os.c, line 91: In this declaration, the type of "ap_os_dso_load" is not compatible with the type of a previous declaration of "ap_os_dso_load" at line number 139 in file ../../os/unix/os.h.
> void *ap_os_dso_load(const char *path)
> ------^
> cc: Error: os.c, line 129: In this declaration, parameter 2 has a different type than specified in an earlier declaration of this function.
> void *ap_os_dso_sym(void *handle, const char *symname)
> ------^
> cc: Error: os.c, line 129: In this declaration, the type of "ap_os_dso_sym" is not compatible with the type of a previous declaration of "ap_os_dso_sym" at line number 141 in file ../../os/unix/os.h.
> void *ap_os_dso_sym(void *handle, const char *symname)
> ------^
> cc: Error: os.c, line 162: In this declaration, the type of "ap_os_dso_error" is not compatible with the type of a previous declaration of "ap_os_dso_error" at line number 142 in file ../../os/unix/os.h.
> const char *ap_os_dso_error(void)
> ------------^
> *** Exit 1
> Stop.
> *** Exit 1
> Stop.
Received on Wed Jun 30 1999 - 07:37:11 NZST

This archive was generated by hypermail 2.4.0 : Wed Nov 08 2023 - 11:53:39 NZDT