Skip site navigation (1)Skip section navigation (2)
Date:      25 May 2002 18:05:54 -0400
From:      Joe Marcus Clarke <marcus@marcuscom.com>
To:        Giorgos Keramidas <keramida@ceid.upatras.gr>
Cc:        Lukas Karlsson <karlsson@panix.com>, FreeBSD User Questions List <freebsd-questions@freebsd.org>
Subject:   Re: conflicting types for `strcasestr'
Message-ID:  <1022364354.21495.17.camel@shumai.marcuscom.com>
In-Reply-To: <20020525202259.GF7356@hades.hell.gr>
References:  <20020525133253.A72218-100000@starship.alienwebshop.com>  <20020525202259.GF7356@hades.hell.gr>

next in thread | previous in thread | raw e-mail | index | archive | help

--=-4X5aY/8FkuJ3TW0lbuYG
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

On Sat, 2002-05-25 at 16:22, Giorgos Keramidas wrote:
> On 2002-05-25 13:38, Lukas Karlsson wrote:
> >=20
> > I have two systems that are nearly identical FreeBSD 4.2 systems.  One =
was
> > built a year and a half ago and the other was built in the last three
> > months.  They have exactly the same pacakges installed, and the only
> > things that were installed on the systems without using packages were
> > OpenSSH and Apache.  However, for some reason, when I build the tin and
> > nmap ports on one of the machines, the compile fails, while it works on
> > the other system.
> >=20
> > Here is the part of the tin build that fails:
> >=20
> > creating ./config.status
> > creating po/Makefile.in
> > creating pcre/Makefile
> > creating pcre/pcre.h
> > creating src/Makefile
> > creating include/autoconf.h
> > if nm /usr/lib/libc.a | /usr/bin/grep -q strcasestr; then  echo "#defin=
e
> > HAVE_STRCASESTR 1"  >>
> > /usr/ports/news/tin/work/tin-1.5.11/include/autoconf.h;  fi
> > =3D=3D=3D>  Building for tin-1.5.11_1
> > cc -DHAVE_CONFIG_H -I. -I../include -I../pcre -I../pcre
> > -DLOCALEDIR=3D\"/usr/local/share/locale\" -I../include
> > -I/usr/local/include -O -pipe
> > -DNNTP_SERVER_FILE=3D"\"/usr/local/etc/nntpserver\"" -c ././active.c
> > In file included from ../include/tin.h:1953,
> >                  from ././active.c:42:
> > ../include/proto.h:632: conflicting types for `strcasestr'
> > /usr/include/string.h:86: previous declaration of `strcasestr'
> > *** Error code 1
>=20
> The file active.c includes ../include/tin.h which in turn includes
> ../include/proto.h which defines strcasestr() with a prototype that
> doesn't match the system prototype of strcasestr() as it is defined in
> /usr/include/string.h.
>=20
> This is a problem with the tin sources, IMHO.

Are you sure this is 4.2-RELEASE.  4.2 didn't have a strcasestr() in
string.h.  I saw this recently on a 4.5-RELEASE system.  Seems like libc
and libc_r weren't built correctly, and strcasestr() was missing from
libc, and strerror_r was missing from libc_r.

The fix for that situation was to get the 4.5-RELEASE sources, then
rebuild libc and libc_r:

# cd /usr/src/lib/libc
# make clean
# make install
# cd /usr/src/lib/libc_r
# make clean
# make install

Afterwards, all ports built like a champ.

If this is a 4.2 system, did you add a 4.5 string.h?  If so, replace it
with the one from 4.2-RELEASE, and the conflict should go away.

Joe

>=20
> --=20
> Giorgos Keramidas    - http://www.FreeBSD.org
> keramida@FreeBSD.org - The Power to Serve
>=20
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-questions" in the body of the message
>=20


--=-4X5aY/8FkuJ3TW0lbuYG
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (FreeBSD)

iD8DBQA88ArCb2iPiv4Uz4cRAgv/AJ43OjZGNn64ZTpzY78O9HZ9mv4+eACff48X
U7dO0WQziuoWLXTR5hFsnRk=
=AcV1
-----END PGP SIGNATURE-----

--=-4X5aY/8FkuJ3TW0lbuYG--


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1022364354.21495.17.camel>