If you guys could put the contents of Jan's simple instructions in the README, boy,
it would be nice....
I know people (serious programmers short on time) who simply gave up on installing
xemacs....
The lack of instructions on where things get untarred were much worse than the number
of tarballs, but I still think you should also offer an xemacs-everything.tgz
Hans
Jan Vroonhof wrote:
The following message is a courtesy copy of an article
that has been posted to comp.emacs.xemacs as well.
[To the XEmacs team. Why is Didier's announcement not on the FTP site?]
Hans Reiser <reiser(a)idiom.com> writes:
> What in the world possessed them to make it necessary to get five
> separate tarballs, and then assemble them together without any
> adequate instructions on how to do it?
In fact can you get away with only two files.
Without documentation of it, a feature does not exist. It does no good for me to not
need the files if I am not told this.
But actually, it was not the number of tarballs but the lack of instruction on where
they go that stopped me.
It is NOT obvious where sumo goes.
Thanks. Why don't you guys put the contents of this on the web page where it will be
seen before downloading.
Note that when I read it I am not sure if I need the info and elc files to get
everything or if they will merely shorten my compile time. You could make this
clear, such that someone can quickly determine what to download if they want
everything, and what to type to make it build.
This is supposed to be available as a README too, but it seems to be
missing. You also seem to be have README.packages which does feature
in at least 3 places. Among others
http://www.xemacs.org/packages/guide.html
> The last thing I want to do is pick and choose elisp packages, do these guys
> have a 386 with a ten meg hard drive on their desks? Do they think I have
> nothing but time on my hands?
No but other people want to. There's more people in the world than
you. If you don't want that, use the Sumo.
I did use Sumo. That left me having to download 5 tar balls, and having no
instructions on what goes where (It has no README saying where it goes), and having
to type something more complicated than "tar xfvz xemacs-everything.tgz; cd xemacs;
./configure; make; make install". Why? Why not just have one tarball for people
like me, and then those of you with more time than RAM and disk can spend days
picking and choosing to your heart's content?
> info, etc., subdirectories in /usr/src/xemacs-21.1.4? I still don't
> know, so I tried both, but if somebody knows, I am curious.
They are prebuild parts of the source. They go wherever you unpackaged
the source. "make install" will copy them to /usr/local/lib
> So now what I have is an xemacs in which nothing autoloads, none of the
> packages. Why? What do I do to get it to load every package?
Read README.packages. If it is in the right place XEmacs will pick
them up automatically.
> Why can't these guys just create one tarball with everything, and let me type
> some finite well documented series of commands, you know, like "cd /usr/src;
tar
> xfvz xemacs-everything-21.1.4.tgz; ./configure; make; make install; xemacs"?
> Why does it have to be more complicated than that?
If you can live with two tarballs here is the complete installation
instructions (for a no-mule XEmacs).
cd /usr/src
tar xzf xemacs-21.1.4.tar.gz
cd xemacs-21.1.4
./configure
make
make install
cd /usr/local/lib/xemacs
tar xzf xemacs-sumo.tar.gz
But please try and read the two links above.
> If there is a README I missed, please let me know, but I fear there is not.
As i said you missed two (with one being not your fault).
Jan
Nit: The web page says the current version is 21.1, but it looks like it is 21.1.4 to
me.... Wouldn't it be better to either not say, or say in full, the name of the
current version?
P.S. The package index signing issues is because we fell into a trap
set for us set for us by RSA inc, The US government and the designers
of PGP all working together. This will (hopefully) soon be resolved.
What happened to that signatures index package? Did you guys take it off the site,
or did I just forget where I saw it?
Ok, so now I tried this set of commands
[root@localhost src]# \rm -r xemacs-21.1.4/
[root@localhost src]# tar xfz old/xemacs-21.1.4.tar.gz
[root@localhost src]# tar xfz old/xemacs-21.1.4-info.tar.gz
[root@localhost src]# tar xfz old/xemacs-21.1.4-elc.tar.gz
[root@localhost src]# cd xemacs-21.1.4
[root@localhost xemacs-21.1.4]# \rm -r /usr/local/lib
here I ran ./configure, it asked for XPM, I installed XPM from your website, then I
continued
[root@localhost xemacs-21.1.4]# ./configure
[root@localhost xemacs-21.1.4]# make
Producing `src/Emacs.ad.h' from `etc/Emacs.ad'.
Resetting `src/puresize-adjust.h'.
Resetting `src/sheap-adjust.h'.
cd ./lib-src && make CC='gcc' CFLAGS='-g -O3 -Wall -Wno-switch'
LDFLAGS=''
CPPFLAGS='' all
make[1]: Entering directory `/usr/src/xemacs-21.1.4/lib-src'
gcc -g -O3 -Wall -Wno-switch -Demacs -I../src -DHAVE_CONFIG_H
/usr/src/xemacs-21.1.4/lib-src/make-path.c -o make-path
In file included from /usr/include/bits/errno.h:25,
from /usr/include/errno.h:36,
from /usr/src/xemacs-21.1.4/lib-src/make-path.c:36:
/usr/include/linux/errno.h:4: asm/errno.h: No such file or directory
make[1]: *** [make-path] Error 1
make[1]: Leaving directory `/usr/src/xemacs-21.1.4/lib-src'
make: *** [lib-src] Error 2
If you guys aspire to configuration perfection, may I suggest you teach configure to
look for asm in /usr/src/linux and warn about it? So I created a link from
/usr/src/linux to a working kernel, and continued (asm is in the kernel source)....
[root@localhost xemacs-21.1.4]# make clean
[root@localhost xemacs-21.1.4]# make
boy, you guys sure ought to clean up a lot of warnings, you know, just so you'll
notice if there is a warning that is significant....
but it worked. Then I did:
[root@localhost xemacs-21.1.4]# make install
[root@localhost xemacs-21.1.4]# cd /usr/local/lib/xemacs
[root@localhost xemacs]# tar xfvz /usr/src/old/xemacs-sumo.tar.gz
and everything seems to work. Yeah! I love vm, and compiling my code using xemacs,
and....
Thanks much,
Hans
PS
I didn't get a chance to try out this script Eric sent me, but thanks for sending the
script. Maybe the developers of xemacs might take a look at it.
#!/bin/csh -fx
#
# xemacs.csh
#
# Auto Configure, Make & Install for XEmacs
# Written by Eric Veum <sysv(a)yahoo.com>
#
# Comments/Usage:
# An automatic recompilation system for XEmacs. Insert all
# the listed packages and this shell script as
#
# Partitioned XEmacs System
#
# $prefix/src/{xemacs.csh,*.tar.gz} Archive Source Location
# /{bin,man,lib} Installation Location
#
# Additional File Requirements:
# texinfo-3.12.tar.gz # TeXInfo (makeinfo reqired by XEmacs
compiliation)
# jpeg-6b.tar.gz # JPEG (Optional Static Library Used in
Compile Only)
# zlib-1.1.3.tar.gz # ZLib (Optional Static Library Used in
Compile Only)
# libpng-1.0.3.tar.gz # LibPNG (Optional Static Library Used in
Compile Only)
# xpm-3.4k.tar.gz # XPM (Optional Static Library Used in
Compile Only)
# tiff-3.4.tar.gz # TIFF Library (Optional Library Used in
Compile Only)
# xemacs-21.1.4.tar.gz # XEmacs (Installable Package)
# xemacs-sumo.tar.gz # XEmacs Sumo (Installable ELisp Component)
# ispell-3.1.20.tar.gz # ISpell (Optional Installable Package)
#
# Running this script will automatically compile any optional
# library packages statically required for linking, as well as
# perform a temporary install of any compilation dependent
# packages required for compilation.
#
# Archive Source Prefix Independent of Calling Prefix
set prog = $0
if( $prog:h == $prog ) then
set arcsrcprefix = $cwd # In Archive Source Already
else
set arcsrcprefix = $prog:h # Not in Archive Source
endif
# Goto Archive Source Prefix
pushd $arcsrcprefix > /dev/null
# Installation Prefix (Parent of Archive Source Prefix)
set prefix = $arcsrcprefix:h
# Dependent Packages Location
# (Temporary Installation Only during Compile)
set tmpprefix = $prefix/tmp
# XEmacs build Dependent Packages
set srctexi = texinfo-3.12 # TeXInfo (makeinfo reqired by XEmacs
compiliation)
# XEmacs Optional Packages
set srcjpg = jpeg-6b # JPEG (Optional Static Library Used in
Compile Only)
set srczlib = zlib-1.1.3 # ZLib (Optional Static Library Used in
Compile Only)
set srcpng = libpng-1.0.3 # LibPNG (Optional Static Library Used
in Compile Only)
set srcxpm = xpm-3.4k # XPM (Optional Static Library Used in
Compile Only)
set srctiff = tiff-3.4 # TIFF Library (Optional Library Used
in Compile Only)
set srcxemacs = xemacs-21.1.4 # XEmacs (Installable Package)
set srcsumo = xemacs-sumo # XEmacs Sumo (Installable Component)
set srcispell = ispell-3.1.20 # ISpell (Optional Installable Package)
# Optional Configure Flags For XEmacs
set xeflags = '--cflags=-O --with-tooltalk=no --with-sparcworks=no
--with-workshop=no --with-sound=no --with-site-lisp'
set siteprefixes =
${prefix}/src/${srcjpg}:${prefix}/src/${srczlib}:${prefix}/src/${srcpng}:${prefix}/src/${srcxpm}:${prefix}/src/${srctiff}
# Extract, Compile TeXInfo
set src = $srctexi # Source Code w/o Tar.gz/Z
Extension
gunzip -f -c $src.tar.gz | tar -xvpf - # Extract
pushd $src > /dev/null # Goto Src Directory
configure --prefix=$tmpprefix # Configure
make # Make
make install # Install
popd > /dev/null
# Add Build Dependents to Path
set path = ( $prefix/tmp/bin $path ); rehash
# Extract, Compile JPEG
set src = $srcjpg # Source Code w/o Tar.gz/Z
Extension
gunzip -f -c $src.tar.gz | tar -xvpf - # Extract
pushd $src > /dev/null # Goto Src Directory
configure # Configure
make # Compile
if ( ! -e include ) then
ln -s . include # Dummy Install on Itself
endif
mkdir -p lib ; mv libjpeg.a lib/libjpeg.a
popd > /dev/null # Return to Storage Dir
# Extract, Compile ZLIB
set src = $srczlib # Source Code w/o Tar.gz/Z
Extension
gunzip -f -c $src.tar.gz | tar -xvpf - # Extract
pushd $src > /dev/null # Goto Src Directory
configure # Configure
make # Compile
if ( ! -e include ) then
ln -s . include # Dummy Install on Itself
endif
mkdir -p lib ; mv libz.a lib/libz.a
popd > /dev/null # Return to Storage Dir
# Extract, Compile PNGLIB, Needs ZLIB Headers
set src = $srcpng # Source Code w/o Tar.gz/Z
Extension
gunzip -f -c $src.tar.gz | tar -xvpf - # Extract
pushd $src > /dev/null # Goto Src Directory
cp scripts/makefile.std ./Makefile # Create Makefile
make "CFLAGS = -O -I../$srczlib/include" libpng.a # Compile
if ( ! -e include ) then
ln -s . include # Dummy Install on Itself
endif
mkdir -p lib ; mv libpng.a lib/libpng.a
popd > /dev/null # Return to Storage Dir
# Extract, Compile Xpm
set src = $srcxpm # Source Code w/o Tar.gz/Z
Extension
gunzip -f -c $src.tar.gz | tar -xvpf - # Extract
pushd $src > /dev/null # Goto Src Directory
xmkmf ; make Makefiles # Create Makefiles
make includes ; make depend ; make # Compile
# Eliminate Shared Object Library, and Create Static Library
rm lib/libXpm.so* ; cd lib ; ar -rv libXpm.a *.o ; cd ..
# Create Standard Setup for Headers
mkdir -p include/X11 ; cp lib/xpm.h include/X11/xpm.h
popd > /dev/null
# Extract, Compile LIBTIFF
set src = $srctiff # Source Code w/o Tar.gz/Z
Extension
gunzip -f -c $src.tar.gz | tar -xvpf - # Extract
pushd $src > /dev/null # Goto Src Directory
configure --noninteractive # Configure
make # Compile
if ( ! -e include ) then
ln -s libtiff include # Dummy Install on Itself
endif
mkdir -p lib ; mv libtiff/libtiff.a lib/libtiff.a
popd > /dev/null # Return to Storage Dir
# Extract, Compile XEmacs
set src = $srcxemacs # Source Code w/o Tar.gz/Z
Extension
gunzip -f -c $src.tar.gz | tar -xvpf - # Extract
pushd $src > /dev/null # Goto Src Directory
# Configure
configure --prefix=$prefix $xeflags --site-prefixes=$siteprefixes
make # Compile
make install # Install
popd > /dev/null # Return to Storage Dir
# Extract, Install LISP Packages
set src = $srcsumo # PACKAGE w/o Tar.gz/Z
Extension
gunzip -f -c $src.tar.gz | tar -xvpf - # Extract
mkdir -p $prefix/lib/xemacs
rm -rf $prefix/lib/xemacs/xemacs-packages # Remove Older Version so
no overwrite as /xemacs-packages/xemacs-packages
mv xemacs-packages $prefix/lib/xemacs/xemacs-packages
# Extract, Compile Ispell
set src = $srcispell # Source Code w/o Tar.gz/Z
Extension
gunzip -f -c $src.tar.gz | tar -xvpf - # Extract
pushd $src > /dev/null # Goto Src Directory
# Create SVS-V local.h with Installation $prefix
sed "s@PREFIX@$prefix@g" ../local.template.h > local.h
make # Compile
mkdir -p $prefix/man/man1 ; mkdir -p $prefix/man/man4
make install
popd > /dev/null # Return to Storage Dir
## Clean Out All Sources & Temporary Dependent Packages
rm -rf $tmpprefix ; rm -rf $srctexi
rm -rf $srcjpg
rm -rf $srczlib
rm -rf $srcpng
rm -rf $srcxpm
rm -rf $srctiff
rm -rf $srcxemacs
rm -rf $srcsumo
rm -rf $srcispell
# End: Return to Original Calling Directory
popd > /dev/null
===
US-Mail: Eric Veum, P.O. Box 131221, Ann Arbor, MI 48113
Home: 2313 Leslie Circle, Ann Arbor, MI 48105
Home Tel: 734-662-8180, Anytime, Voice-Mail
Mobile: 619-884-6040, Anytime, Voice-Mail
Work Tel: 734-994-1200x2398, 0900-1800 EST/EDT, Voice-Mail
_____________________________________________________________
Do You Yahoo!?
Bid and sell for free at
http://auctions.yahoo.com
--
Get Linux (
http://www.kernel.org) plus ReiserFS
(
http://devlinux.org/namesys). If you sell an OS or
internet appliance, buy a port of ReiserFS! If you
need customizations and industrial grade support, we sell them.