home *** CD-ROM | disk | FTP | other *** search
-
- Sergei Naoumov wrote about "Lemacs on Solaris" on 3 June 1993
- > Hey guys!
- > Is there a bynary code of Lemacs (it'd be nice to have 19.6) for Solaris? I'll run now
- > Solaris 1.1 by certain reasons and Solaris 2.1 later. If no code exists could someone,
- > please, tell what problems took place during compilation of Lemacs under Solaris?
- >
-
-
- Sergei,
-
- I don't know if this is to late to help you or not, but here it is.
-
- This procedure is not from me, but Anne Lewis. She was tasked with
- building lemacs for us. Currently she doen't even have an account on
- our system *sigh*, but our admin people are really behind. She has
- been using my account, thus I'm mailing it for her. But enough of the
- trivia, on to the good stuff....
-
- Oh, I'm also sending to the help system so others may benifit or
- comment and help us...
-
-
- ------- Anne's Notes -------------
-
-
- I have built Lucid Emacs 19.5 under Solaris 2.1 with the benefit of
- Adriaan Joubert's experience and by following the README and MAKEFILE
- instructions fairly closely. At each step I had to figure out which
- information applied to me, as will each builder of Emacs. However, I
- will write the procedure that worked for me, incorporating the parts
- of Mr. Joubert's procedure that I found useful. I will be building
- Emacs under Solaris 2.2 fairly soon and I will report whether or not my
- experience is the same as that under Solaris 2.1.
-
- Note: I am new to Emacs, as well as to building it. Others may have
- far less trouble than I did. I hope so.
-
- I made the following changes to build-install in order to match my
- Emacs directories. This may not apply to you:
-
- changed: set EMACS=/usr/local/lemacs
- to: set EMACS=/export/home/mac/lemacs-19.5
-
- changed: set BIN=/usr/local/bin
- to: set BIN=/export/home/mac/lemacs-19.5/bin
-
- changed: /bin/sed "s;/usr/local/e,acs'$EMACS etc
- to: /bin/sed "s; /export/home/mac/lemacs-19.5
-
- I changed config.h as follows:
-
- changed: #include "s/s-sunos4shr.h"
- to: #include "s/s-solaris2.h"
-
- commented out: #define GNU_MALLOC
-
- commented out: #ifdef HAVE_XPM
- #include <x11/xpm.h>
- #endif
-
- In the lemacs-19.5 directory I changed Makefile as follows:
-
- changed: CC=cc
- to: CC=gcc
-
- changed: LIBDIR=/usr/local/lemacs
- to: LIBDIR=/export/home/mac/lemacs-19.5/src/lwlib
-
- changed: BINDIR=/usr/local/bin
- to: BINDIR=/export/home/mac/lemacs-19.5/bin
-
- In /export/home/mac/lemacs-19.5/src/lwlib I changed Makefile as
- follows:
-
- changed: LIBDIR=/usr/local/lib
- to: LIBDIR=/export/home/mac/lemacs-19.6/src/lwlib
-
- changed: BINDIR=/usr/local/bin
- to: BINDIR=/export/home/mac/lemacs-19.5/bin
-
- changed: CFLAGS= -g
- to: CFLAGS= -O
-
- changed: LOADLIBES= -lx
- to: LOADLIBES= -lkvm -lsocket -lnsl -lelf -lintl -ldl
-
- In malloc.c I changed the following:
-
- commented out: #ifndef_hpux
- char*
- valloc(size)
- unsigned size;
- {
- return memalign(getpagesize(),size);
- }
- #endif /*not hpux*/
-
- I changed -loadup.el as follows:
-
- commented out:
- floating point stuff (I don't need it anyway right now)
-
- You can then build Emacs this way:
-
- First, I tried:
-
- make "CC=gcc" (I know, I must have missed one somewhere or my change
- in Makefile was overidden)
-
- This worked fine and it finished gracefully. However, the executable
- was called emacs-19.5.1-Lucid so I knew something had not been done.
- However, the executable worked fine.
-
- Second, I tried:
-
- build-install (I tried this early on before I had changed everything
- correctly and it didn't work.)
-
- build-install finished gracefully and created the executable lemacs,
- which is as it should be. The only reason I included the command make
- CC=gcc is because it is the first thing I got working and it can be
- used in a pinch.
-
- At this point, Lucid Emacs was built for me. I now include Adriaan
- Joubert's message of 21 May because he advised doing some things I
- found unnecessary. You may need to do these things.
-
-
- ***********************************************************************
-
-
-
-
- From: adriaan@dcs.qmw.ac.uk (Adriaan Joubert)
- Sender: help-lucid-emacs-request@lucid.com
- To: help-lucid-emacs@lucid.com
- Subject: Building lemacs-19.6 on solaris-2.1 without motif or openwin.
- Date: Fri, 21 May 1993 09:06:47 GMT
-
- Hi,
-
- I had a few requests from people who couldn't get lemacs built on solaris
- on how I managed to get it running. I think what follows is a summary
- of the essentials.
-
- Ok, I hope I remember everything, because I had to mess around a bit,
- before I got it running. The first thing seems to be to start with a
- completely new copy of lemacs. It seems to mess itself up after a few
- goes, and I couldn't get it into any acceptable state anymore.
-
- I used gcc 2.3.3, capable of finding its own libraries (I didn't install
- it, so I can't tell you anything about that.) Also X11R5. We have the
- binaries available on the network. As far as I can remember, you have to
- do the following:
-
- 1) Edit the path names in the main Makefile.
- 2) Go to src and edit config.h:
- #define USE_GCC
- #include "s/s-solaris2.h
- #include "m/m-sparc.h"
- #define HAVE_X_WINDOWS
-
- Comment out the gnu/system malloc bit. Use the system malloc.
- You don't need strdup, realpath or rel_alloc.
- No motif or olit.
- Set the LD_SWITCH_SITE and C_SWITCH_SITE to wherever your X files are.
- (X11R5 in our case, you can get the binaries from the net)
-
- 3) You have to edit s/s-solaris2.h if you don't want to use Openwindows.
- Simply do:
- /* Flags for OpenWindows */
- #if 0 <---- replace 1 with 0
- #undef LD_SWITCH_SYSTEM
- #define LD_SWITCH_SYSTEM -L/usr/openwin/lib -R/usr/openwin/lib
- #undef C_SWITCH_SYSTEM
- #define C_SWITCH_SYSTEM -I/usr/openwin/include
- #endif
-
- Set LD_CMD to gcc
-
- 4) Go to lwlib. I defined only USE_LUCID in the Imakefile, and nothing else.
- BUILD_SHARED_LIB also works, but then you have to bother with
- LD_LIBRARY_PATH variables during the linking.
-
- Type xmkmf. I had to edit the makefile to set the paths to X11R5 correctly
- and reset the C compiler to gcc.
-
- Then type make and lwlib should compile without any hassle.
-
- 5) Go to lemacs-19.6/etc. Edit the makefile:
- I set CFlags to -O and
- LOADLIBES = -lkvm -lsocket -lnsl -lelf -lintl -ldl
- You may be able to miss out some of them, because you only need -ldl, but
- it doesn't seem able to find them if you only add -ldl, and with the whole
- lot it works.
- Set the paths of course.
-
- 6) Go to the top directory. I don't think I had to edit the ymakefile in src.
- type
- > make "CC=gcc" "CPP=/lib/cpp"
- and then it should work. WAIT! Read the next 2 point first.
-
- 7) Just remembered. It falls over during the compilation of editfns.c. The
- timezone stuff doesn't work. I tried everything, and I couldn't get it
- going, which is why I put (at line 658)
- #undef EMACS_CURRENT_TIME_ZONE <<<<
- #ifdef EMACS_CURRENT_TIME_ZONE
- int offset, savings_flag;
- char standard[11];
- char savings[11];
-
- I don't know what you need this for, and we'll have to live withou it.
-
- 8) It also falls over when linking, because the size for the lisp code was
- too small. I had to put PURESIZE to 400000 in puresize.h, but we load in
- a few things from the site-init.el. You should initialize the site-init.el
- with whatever you want before you compile.
-
- I think that was about it. No guarantees. If you have more problems, mail me,
- perhaps I'll remember something else. If you manage to fix the TIME_ZONE bit,
- I would be interested.
-
- --
- Mike Battaglia
- DSC Communications Corp
-
- (214) 519-3253
- mbattagl@dsccc.com
-
-
- ==================================================================
-
- "Study what the most respected authorities agree can NOT be done
- - then do it."
-
- (Clarks law)
-
- ==================================================================
-
-