help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Precompiled Emacs


From: Johan Andersson
Subject: Re: Precompiled Emacs
Date: Mon, 4 Nov 2013 20:40:59 +0100

The compile time is an issue on Travis.

If I ./configure, make and re-tar like you say, will there not be any
hard-coded paths that will be incorrect on some other machine.
On Nov 4, 2013 3:39 PM, "Phillip Lord" <phillip.lord@newcastle.ac.uk> wrote:

>
>
> Okay, now I understand. This is a good aim, and would be a good thing to
> do. You are right about wanting to test between point releases -- in
> fact, for testing, this is more valuable than between major releases, I
> think.
>
> In a sense, I am not sure that I would be worried about speed of
> installation -- as this is largely useful for package developers, and
> it's a per emacs release cost (multiplied by the number of machines a
> developer has).
>
> However, given that this is for testing, from my own perspective, I
> would prefer not to mess around with my main installation; that is, I
> want my own version of Emacs and the rest of my system untouched. So,
> why not compile Emacs, and then just launch it from the directory in
> which it is built? To precompile, simply untar the distribution,
> ./configure, make, and then retar everything. This should be pretty
> platform independent, doesn't require root, and if you put everything in
> one place means a simple delete cleans everything up. It also has the
> advantage that the Emacs in question is relative clean (i.e. not patched
> by any downstream distributor) which is a useful test in itself.
>
> Phil
>
>
> Johan Andersson <johan.rejeep@gmail.com> writes:
>
> > Sure, sorry if I am unclear.
> >
> > I have a project called EVM - Emacs Version Manager (
> > https://github.com/rejeep/evm). The idea with the project is that it
> should
> > be possible to install and easily switch between different Emacs version.
> > The primary (but not only) usage of this package is that Emacs developers
> > should be able to test their package against a lot of different versions.
> > Emacs-23 and Emacs-24 is not good enough. I just recently noticed that
> one
> > of my packages worked fine in 24.3, but not in 24.1 and 24.2.
> >
> > EVM in its current state works fine, but you have to compile Emacs from
> > scratch. To allow for setting up this kind of testing on for example
> Travis
> > CI, I want to provide pre compiled binaries, because it takes too long
> time
> > to build Emacs from source.
> >
> > Basically, I want to be able to do this:
> >
> > for version in emacs-23.4*-bin* emacs-24.1*-bin* emacs-24.2*-bin*
> emacs-24.3
> > *-bin* emacs-git-trunk*-bin*; do
> >   evm install $version
> >   evm use $version
> >   cd /path/to/my/project
> >   make test
> > done
> >
> > Hope this makes it a bit more clear of what I'm trying to achieve.
> >
> >
> > On Mon, Nov 4, 2013 at 2:21 PM, Phillip Lord
> > <phillip.lord@newcastle.ac.uk>wrote:
> >
> >>
> >>
> >> Well, I have both emacs23 and emacs24 installed on my machine. And there
> >> is alternatives support. But still this is all black-box guess work.
> >> Instead of saying what you do not way to do, can you explain what you
> >> are trying to achieve in the first place? So far I have got:
> >>
> >> 1) You want to install Emacs on different linux distros
> >> 2) You want to use a precompiled distribution for speed of installation
> >> 3) You want to be able to use different versions
> >> 4) You want to have it work on any distribution
> >>
> >> My own feeling is that 1-3 can be done with a package manager and that
> >> 4 can't be done with anything, but that is irrelevant as someone has
> >> already done it for almost all distros.
> >>
> >> If you can describe what you exact use case is, then you would probably
> >> get better advice.
> >>
> >> Phil
> >>
> >>
> >> Johan Andersson <johan.rejeep@gmail.com> writes:
> >>
> >> > I don't want to use a package manager, because they do not support
> enough
> >> > versions and there is usually no way of switching between different
> >> > versions.
> >> >
> >> >
> >> > On Mon, Nov 4, 2013 at 12:46 PM, Phillip Lord
> >> > <phillip.lord@newcastle.ac.uk>wrote:
> >> >
> >> >>
> >> >> But you don't say why!
> >> >>
> >> >> If you want to build a prebuilt binary which will install in a sane
> way,
> >> >> then building something for the appropriate package management system
> >> >> seems the sensible way. Your only stated aim (fast installations,
> >> >> multiple versions) is fulfilled with this solution.
> >> >>
> >> >> But, emacs packages already exist for most distributions. So using
> one
> >> >> of these makes most sense. Unless you want to extend and modify
> emacs in
> >> >> some way; but if you want to do this, then, probably package.el will
> be
> >> >> enough.
> >> >>
> >> >> Phil
> >> >>
> >> >>
> >> >>
> >> >>
> >> >> Johan Andersson <johan.rejeep@gmail.com> writes:
> >> >>
> >> >> >> You don't say what distribution you are working with.
> >> >> >
> >> >> > Any, that's the idea.
> >> >> >
> >> >> >
> >> >> > On Mon, Nov 4, 2013 at 9:25 AM, Jambunathan K <
> kjambunathan@gmail.com
> >> >> >wrote:
> >> >> >
> >> >> >>
> >> >> >> You don't say what distribution you are working with.  Why not
> mess
> >> >> >> around with the distributed deb-srcs and make a custom .deb out of
> >> it.
> >> >> >>
> >> >> >> As you see below, you can choose one among the many different
> >> >> >> alternatives for emacs.
> >> >> >>
> >> >> >> kjambunathan@debian-6:/usr/bin$ ls -al | grep emacs
> >> >> >>    5792 Dec 11  2010 b2m.emacs23
> >> >> >>   82760 Dec 11  2010 ctags.emacs23
> >> >> >>    3309 Aug  7  2010 dh_installemacsen
> >> >> >>   34780 Dec 11  2010 ebrowse.emacs23
> >> >> >>      23 Aug 18 15:54 emacs -> /etc/alternatives/emacs
> >> >> >>       9 Aug 18 15:54 emacs23 -> emacs23-x
> >> >> >> 6583560 Dec 11  2010 emacs23-x
> >> >> >>      29 Aug 18 15:54 emacsclient -> /etc/alternatives/emacsclient
> >> >> >>   16816 Dec 11  2010 emacsclient.emacs23
> >> >> >>   81064 Dec 11  2010 etags.emacs23
> >> >> >>    7294 Dec 11  2010 grep-changelog.emacs23
> >> >> >>    3983 Dec 11  2010 rcs-checkin.emacs23
> >> >> >>
> >> >> >>
> >> >> >> Johan Andersson <johan.rejeep@gmail.com> writes:
> >> >> >>
> >> >> >> > Well, the thing is that I don't want to install it there. I
> guess
> >> it's
> >> >> >> not
> >> >> >> > possible to compile Emacs, archive it, move to another machine
> and
> >> >> there
> >> >> >> > "make install" to the desired prefix?
> >> >> >> >
> >> >> >> > The purpose of this is to allow for fast installations and at
> the
> >> same
> >> >> >> time
> >> >> >> > allow for multiple Emacs version. So that will not work with
> >> >> >> > "/usr/local/emacs".
> >> >> >> >
> >> >> >> > I guess I could do:
> >> >> >> >
> >> >> >> > $ ./configure --prefix /usr/local/emacs-x.y.z --without-all
> >> >> --without-x
> >> >> >> > $ make bootstrap
> >> >> >> > $ tar ...
> >> >> >> >
> >> >> >> > ... move to another system
> >> >> >> >
> >> >> >> > $ make install
> >> >> >> >
> >> >> >> > That would mean a larger tar-file. But I guess I could "make
> >> install"
> >> >> on
> >> >> >> > the compile system and then tar "/usr/local/emacs-x.y.z".
> >> >> >> >
> >> >> >> > Still... seems a bit weird that this limitation exists. Maybe
> >> there's
> >> >> a
> >> >> >> > good reason for it?
> >> >> >> >
> >> >> >> >
> >> >> >> > On Sun, Nov 3, 2013 at 10:43 PM, Kai Großjohann <
> >> >> kai.grossjohann@gmx.net
> >> >> >> >wrote:
> >> >> >> >
> >> >> >> >> Johan Andersson wrote:
> >> >> >> >> > I've read the instructions in INSTALL, which are very good. I
> >> tried
> >> >> >> and
> >> >> >> >> did
> >> >> >> >> > a build with:
> >> >> >> >> >
> >> >> >> >> > $ ./configure --prefix emacs-install --without-all
> --without-x
> >> >> >> >>
> >> >> >> >> The assumption is that the argument of --prefix is the fully
> >> >> qualified
> >> >> >> >> directory name where Emacs is installed.  If you omit
> --prefix, it
> >> >> will
> >> >> >> >> use /usr/local.
> >> >> >> >>
> >> >> >> >> Conventionally, people are expected to use values such as
> >> >> >> >> /usr/local/emacs or /opt/emacs or something.
> >> >> >> >>
> >> >> >> >> Kai
> >> >> >> >>
> >> >> >> >>
> >> >> >>
> >> >> >
> >> >> >
> >> >>
> >> >> --
> >> >> Phillip Lord,                           Phone: +44 (0) 191 222 7827
> >> >> Lecturer in Bioinformatics,             Email:
> >> >> phillip.lord@newcastle.ac.uk
> >> >> School of Computing Science,
> >> >> http://homepages.cs.ncl.ac.uk/phillip.lord
> >> >> Room 914 Claremont Tower,               skype: russet_apples
> >> >> Newcastle University,                   twitter: phillord
> >> >> NE1 7RU
> >> >>
> >>
> >> --
> >> Phillip Lord,                           Phone: +44 (0) 191 222 7827
> >> Lecturer in Bioinformatics,             Email:
> >> phillip.lord@newcastle.ac.uk
> >> School of Computing Science,
> >> http://homepages.cs.ncl.ac.uk/phillip.lord
> >> Room 914 Claremont Tower,               skype: russet_apples
> >> Newcastle University,                   twitter: phillord
> >> NE1 7RU
> >>
>
> --
> Phillip Lord,                           Phone: +44 (0) 191 222 7827
> Lecturer in Bioinformatics,             Email:
> phillip.lord@newcastle.ac.uk
> School of Computing Science,
> http://homepages.cs.ncl.ac.uk/phillip.lord
> Room 914 Claremont Tower,               skype: russet_apples
> Newcastle University,                   twitter: phillord
> NE1 7RU
>


reply via email to

[Prev in Thread] Current Thread [Next in Thread]