all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Richard Riley <rileyrg@googlemail.com>
To: help-gnu-emacs@gnu.org
Subject: Re: Compiling emacs 24 under Debian
Date: Tue, 04 Jan 2011 11:51:37 +0100	[thread overview]
Message-ID: <ifuu3q$b6m$1@quimby.gnus.org> (raw)
In-Reply-To: 87ei8tgxmz.fsf@puma.rapttech.com.au


Hi Tim,

Thanks for the reply. Some Qs below.

Tim X <timx@nospam.dev.null> writes:

> Richard Riley <rileyrg@googlemail.com> writes:
>
>> Could someone please share the secret for making emacs 24 under Debian
>> (testing) so that it can still see the system installed libraries that
>> are not part of emacs proper?
>>
>> I have this but I'm not altogether sure its good enough:-
>>
>> (setq load-path (append load-path '("/usr/local/emacs/site-lisp"
>> "/usr/share/emacs/site-lisp")))
>> (load-library "debian-startup")
>> (debian-startup 'emacs23)
>> (load-library "/etc/emacs/site-start")
>>
>
> The most reliable way I've found is to edit lisp/startuo.el and add the
> debian-emacs-flavor variable and modify the code further down where the
> site-start library is loaded. If you do a diff on the startup.el file
> from debian's emacs and the one from emacs bzr, you will quickly see the
> necessary changes. 

I just compiled and use only the above as the init : how do you feel
that compares? Certainly Emacs 24 loads and runs  (it compiled and
installed to /usr/local/bin). What would it lack do you think? It uses
the latest emacs installed as its "site lisp" after using the bzr one.

>
> There are some other differences, but I've found these to be cosmetic.
> The startup.el file rarely changes and bzr will auto merge if possible
> when you do a bzr pull to update. 

Thats cool.

>
> As there can be byte code issues between versions of emacs, I also tend
> to install the emacs-snapshot and set the debian-emacs-flavor to
> 'emacs-snapshot. I also have 2 simple bash script that I run to setup

Which repos do you use for emacs-snapshot? emacs-snapshot isn't a part
of Debian Testing, the orebokech one is gone,
http://www.emacswiki.org/emacs/EmacsSnapshotAndDebian isnt really a
snapshot (git head).

> appropriate symlinks and /etc/alternatives. Not necessary, but handy if
> you want to easily and consistently move between different versions of
> emacs such that running 'emacs' will give consistent version results. I
> install emacs into the default /usr/local tree. After running make
> install, I rm /usr/local/share/emacs/24.0.50/site-lisp and replace it
> with a sym link to /usr/share/emacs-snapshot/site-lisp
>
> I use load-path-shadow to verify everything is consistent and loading
> what I think it is after each new build of emacs. 

Crikey, certainly a lot more thorough than my way. I will give this a go
soon : certainly not what I would term simple ;)

>
> #!/bin/bash
>
> #       Filename: setup-emacs.sh
> #  Creation Date: Monday, 05 July 2010 10:33 AM EST
> #  Last Modified: Tuesday, 06 July 2010 06:06 PM EST
> #    Description: Simple script to setup emacs24 and make it the default alterntaive
> # 
>
> if [ -f /usr/local/bin/b2m ]; then
>     if [ -f /usr/local/bin/b2m.emacs24 ]; then
>         rm /usr/local/bin/b2m.emacs24
>     fi
>     mv /usr/local/bin/b2m /usr/local/bin/b2m.emacs24
> fi
>
> if [ -f /usr/local/bin/ctags ]; then
>     if [ -f /usr/local/bin/ctags.emacs24 ]; then
>         rm /usr/local/bin/ctags.emacs24
>     fi
>     mv /usr/local/bin/ctags /usr/local/bin/ctags.emacs24
> fi
>
> if [ -f /usr/local/bin/ebrowse ]; then
>     if [ -f /usr/local/bin/ebrowse.emacs24 ]; then
>         rm /usr/local/bin/ebrowse.emacs24
>     fi
>     mv /usr/local/bin/ebrowse /usr/local/bin/ebrowse.emacs24
> fi
>
> if [ -f /usr/local/bin/emacs ]; then
>     if [ -f /usr/local/bin/emacs24-x ]; then
>         rm /usr/local/bin/emacs24-x
>     fi
>     mv /usr/local/bin/emacs /usr/local/bin/emacs24-x
> fi
>
> if [ -f /usr/local/bin/emacsclient ]; then
>     if [ -f /usr/local/bin/emacsclient.emacs24 ]; then
>         rm /usr/local/bin/emacsclient.emacs24
>     fi
>     mv /usr/local/bin/emacsclient /usr/local/bin/emacsclient.emacs24
> fi
>
> if [ -f /usr/local/bin/etags ]; then
>     if [ -f /usr/local/bin/etags.emacs24 ]; then
>         rm /usr/local/bin/etags.emacs24
>     fi
>     mv /usr/local/bin/etags /usr/local/bin/etags.emacs24
> fi
>
> if [ -f /usr/local/bin/grep-changelog ]; then
>     if [ -f /usr/local/bin/grep-changelog.emacs24 ]; then
>         rm /usr/local/bin/grep-changelog.emacs24
>     fi
>     mv /usr/local/bin/grep-changelog /usr/local/bin/grep-changelog.emacs24
> fi
>
> if [ -f /usr/local/bin/rcs-checkin ]; then
>     if [ -f /usr/local/bin/rcs-checkin.emacs24 ]; then
>         rm /usr/local/bin/rcs-checkin.emacs24
>     fi
>     mv /usr/local/bin/rcs-checkin /usr/local/bin/rcs-checkin.emacs24
> fi
>
> #!/bin/bash
> #       Filename: emacs-alternative.sh
> #  Creation Date: Monday, 05 July 2010 10:54 AM EST
> #  Last Modified: Monday, 05 July 2010 11:38 AM EST
> #    Description: Switch between alternative emacs versions
> # 
>
> if [ $# -ne 1 ]; then
>     echo "Error: Wrong # arguments"
>     echo "Usage: $0 < 23 | 24 | emacs-snapshot >"
>     exit 1
> fi
>
> EMACS_VERSION=$1
>
> echo "Configureing for emacs $EMACS_VERSION"
>
> cd /etc/alternatives
>
> if [ $EMACS_VERSION == "23" ]; then
>     echo "Configureing for Ubuntu emacs 23"
>     rm b2m
>     ln -s /usr/bin/b2m.emacs23 b2m
>     rm ctags
>     ln -s /usr/bin/ctags.emacs23 ctags
>     rm ebrowse
>     ln -s /usr/bin/ebrowse.emacs23 ebrowse
>     rm emacs
>     ln -s /usr/bin/emacs23-x emacs
>     rm emacsclient
>     ln -s /usr/bin/emacsclient.emacs23 emacsclient
>     rm etags
>     ln -s /usr/bin/etags.emacs23 etags
>     rm grep-changelog
>     ln -s /usr/bin/grep-changelog.emacs23 grep-changelog
>     rm rcs-checkin
>     ln -s /usr/bin/rcs-checkin.emacs23 rcs-checkin 
> elif [ $EMACS_VERSION == "emacs-snapshot" ]; then
>     echo "Configureing for Ubuntu emacs-snapshot"
>     rm b2m
>     ln -s /usr/bin/b2m.emacs-snapshot b2m
>     rm ctags
>     ln -s /usr/bin/ctags.emacs-snapshot ctags
>     rm ebrowse
>     ln -s /usr/bin/ebrowse.emacs-snapshot ebrowse
>     rm emacs
>     ln -s /usr/bin/emacs-snapshot-x emacs
>     rm emacsclient
>     ln -s /usr/bin/emacsclient.emacs-snapshot emacsclient
>     rm etags
>     ln -s /usr/bin/etags.emacs-snapshot etags
>     rm grep-changelog
>     ln -s /usr/bin/grep-changelog.emacs-snapshot grep-changelog
>     rm rcs-checkin
>     ln -s /usr/bin/rcs-checkin.emacs-snapshot rcs-checkin 
> elif [ $EMACS_VERSION == "24" ]; then
>     echo "Configuring for local emacs 24"
>     rm b2m
>     ln -s /usr/local/bin/b2m.emacs24 b2m
>     rm ctags
>     ln -s /usr/local/bin/ctags.emacs24 ctags
>     rm ebrowse
>     ln -s /usr/local/bin/ebrowse.emacs24 ebrowse
>     rm emacs
>     ln -s /usr/local/bin/emacs24-x emacs
>     rm emacsclient 
>     ln -s /usr/local/bin/emacsclient.emacs24 emacsclient
>     rm etags
>     ln -s /usr/local/bin/etags.emacs24 etags
>     rm grep-changelog
>     ln -s /usr/local/bin/grep-changelog.emacs24 grep-changelog
>     rm rcs-checkin
>     ln -s /usr/local/bin/rcs-checkin.emacs24 rcs-checkin
> else
>     echo "Unknown emacs version $EMACS_VERSION"
>     exit 1
> fi

-- 
☘ http://www.shamrockirishbar.com, http://splash-of-open-sauce.blogspot.com/ http://www.richardriley.net


  reply	other threads:[~2011-01-04 10:51 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-04  2:56 Compiling emacs 24 under Debian Richard Riley
2011-01-04  3:23 ` Tim X
2011-01-04 10:51   ` Richard Riley [this message]
2011-01-04 22:53     ` Tim X

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

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

  git send-email \
    --in-reply-to='ifuu3q$b6m$1@quimby.gnus.org' \
    --to=rileyrg@googlemail.com \
    --cc=help-gnu-emacs@gnu.org \
    /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.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.