unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Bob Proulx <bob@proulx.com>
To: Harry Putnam <reader@newsguy.com>
Cc: help-gnu-emacs@gnu.org
Subject: Re: Build emacs on debian
Date: Mon, 7 Apr 2014 09:41:00 -0600	[thread overview]
Message-ID: <20140407154100.GA1587@hysteria.proulx.com> (raw)
In-Reply-To: <87ppkuudvs.fsf@newsguy.com>

Harry Putnam wrote:
> For the record, I'm not looking to 'apt-get install' emacs24, although
> I'm pretty sure somewhere along the line apt-get is going to want to.
> I just want to build emacs-24.4 from bzr sources myself.

That is understood.  That is fine.  But you asked:

> There must have been some devel pkgs removed in the interm.
> ...
> Any debian people here who know what I'm missing?

That says that you were looking for a way to install Debian packages
to supply the dependencies for building emacs.  That is good.  That is
what I would do too.  And so we have been talking about how to install
the build dependencies using Debian packages. :-)

Of course if you really want to do it completely outside of the
package system then that is perfectly fine too.  It would be a lot of
time and effort to chase down everything.  But it will definitely
still work okay if you were to install everything in a purely from
scratch build in, say, the /usr/local directory hierarchy.  You can
build all of the dependencies from the bottom up.  That would work
fine too.  But that is a lot of work just to build emacs and it isn't
needed for building emacs.  For example at the very bottom some of the
dependencies are circular and need special attention to get
bootstrapped.  But in my opinion the hard part of the problem is
keeping everything updated after that point.  Doing it once is easy.
Maintaining them up to date is endless tedium.  Which is why I like
the package system.

In any case after you build your own from source emacs build nothing
you need in Debian will want to install emacs24 on your system.  (I
didn't say nothing but nothing you need.  If you try to install
"emacs-goodies.el" then it will try to install an emacs and so on.
But if you build your own emacs from source then you don't need to
install any of the other emacs packages either.)

Some details that most people won't care about...

Installing emacs from the pre-built Debian package would put it in
/usr/bin/emacs and all of its files in /usr/share/emacs/24.3.  Your
scratch built emacs should be anchored in /usr/local/bin/emacs and the
lisp files also anchored in /usr/local/share/emacs/XX.Y.  There won't
be a conflict between the two.  It is okay to have both installed at
the same time.  I dare say that many developers operate this way.  It
allows doing A-B comparison of features and behavior from a previous
version to a newer version easily.  Since your PATH will (or should
IMNHO) have /usr/local/bin ahead of /usr/bin then when you type in
emacs from the command line you will always get your preferred
version.  But they operate independently of each other.

The packaged version does use /usr/local/share/emacs as a place for
the local admin to install whatever they feel like manually installing
and the package version uses it.  This is good and follows the recipe
of package versions allowing the local admin to add manually add stuff
in a way that puts local unpackaged stuff in /usr/local.  I can't
remember if the scratch build emacs uses that same location or not.
Probably does.  In which case that would be a directory owned by the
local admin, will never include any packaged files, which would be
shared between the packaged version and a from scratch built version.
The package will never put anything there.  The direction of control
is from the local admin controlling the packaged version and not the
other way around.

Bob



  parent reply	other threads:[~2014-04-07 15:41 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-06 20:38 Build emacs on debian Harry Putnam
2014-04-06 21:04 ` Sharon Kimble
2014-04-06 23:39   ` Harry Putnam
2014-04-06 21:11 ` Bob Proulx
2014-04-06 21:17   ` Harry Putnam
2014-04-06 23:49     ` Harry Putnam
2014-04-07  0:22       ` Bob Proulx
2014-04-07  0:37       ` hubert
2014-04-07  1:14         ` Harry Putnam
2014-04-07  1:28         ` Harry Putnam
2014-04-07  1:52           ` hubert
2014-04-07 15:41           ` Bob Proulx [this message]
2014-04-07  7:48       ` Sharon Kimble
2014-04-06 21:24 ` Glyn Millington

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140407154100.GA1587@hysteria.proulx.com \
    --to=bob@proulx.com \
    --cc=help-gnu-emacs@gnu.org \
    --cc=reader@newsguy.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).