Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Nov 2002 16:18:03 +0200
From:      Giorgos Keramidas <keramida@freebsd.org>
To:        Mike Loiterman <mike@ascendency.net>
Cc:        "'Anish Mistry'" <mistry.7@osu.edu>, freebsd-questions@freebsd.org
Subject:   Re: Recompiling Sendmail?
Message-ID:  <20021115141802.GB576@gothmog.gr>
In-Reply-To: <000001c28ba2$82c708c0$0302a8c0@mike>
References:  <200211140030.06242.mistry.7@osu.edu> <000001c28ba2$82c708c0$0302a8c0@mike>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2002-11-13 23:55, Mike Loiterman <mike@ascendency.net> wrote:
> Anish Mistry [mailto:mistry.7@osu.edu] wrote:
> > On Wednesday 13 November 2002 10:00 pm, Mike Loiterman wrote:
> > > I suppose this might be better suited to the comp.mail.sendmail,
> > > but I'm posting it here because I believe my error is ultimately
> > > rooted in my use faulty use of FreeBSD rather then incorrect use
> > > of Sendmail.

Indeed.

> > > I'm trying to add SMTP AUTH to my base installation of Sendmail
> > > installation without breaking anything!
> > >
> > > I installed cyrus-sasl without any problems.
> > > Now I need to add, according to the Sendmail.readme included with
> > > the cyrus-sasl, the following lines to my /etc/make.conf file:
> > >
> > > # Add SMTP AUTH support to Sendmail
> > >     SENDMAIL_CFLAGS+=   -I/usr/local/include/sasl -DSASL
> > > - -D_FFR_UNSAFE_SASL
> > >     SENDMAIL_LDFLAGS+=  -L/usr/local/lib
> > >     SENDMAIL_LDADD+=    -lsasl
> > >
> > > I did that.
> > > 
> > > Now the README says I need to "Rebuild FreeBSD".  I thought
> > > there would be a way around rebuilding the entire world when I
> > > just need to rebuild Sendmail

You should really follow the instructions, and build world :)

> > > so I tried going into /usr/src/usr.sbin/sendmail and did a "make
> > > all install" but I got this error:
> >
> > This is how I do it:
> > In make.conf:
> > SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL1
> > SENDMAIL_LDFLAGS=-L/usr/local/lib
> > SENDMAIL_LDADD=-lsasl
> > 
> > from a shell:
> > cd /usr/src/usr.sbin/sendmail
> > make cleandir
> > make obj
> > make
> > make install

This won't work either, if you don't have an old libsm library lying
around in /usr/obj/usr/src/lib/libsm, and even in that case you should
probably rebuild libsm anyway.

> I used my original config flags with your make commands and got this
> error:
> 
> cc: /usr/src/usr.sbin/sendmail/../../lib/libsmutil/libsmutil.a: No
> such file or directory
> *** Error code 1

The sendmail installation that is part of the base system uses libsm.a
which is not built when you cd into /usr/src/usr.sbin/sendmail, but is
built separately from /usr/src/lib/libsm.  The same libsm.a that is
built as part of the buildworld process is then used to link sendmail
and src/bin/rmail.

The manual way out of this error that is stopping you is to build a
clean copy of libsm.a and then rebuilt sendmail and rmail:

    # cd /usr/src/lib/libsm
    # make cleandir && make cleandir
    # make obj && make depend && make all
    
    # cd /usr/src/usr.sbin/sendmail
    # make cleandir && make cleandir
    # make obj && make depend && make all
    
    # cd /usr/src/bin/rmail
    # make cleandir && make cleandir
    # make obj && make depend && make all

All these steps and many more[1] will be taken care of if you use the
recommended `make buildworld' procedure for upgrading.

I hope this helps a bit,
Giorgos.


[1] Such as building the proper bits for the SSL support when this is
required, and making sure that the changes to the libraries you have
compiled don't cause build problems to the rest of the `world'.

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?20021115141802.GB576>