All Forums |
Register |
Login |
Search |
Subscriptions |
My Profile |
Inbox |
Tool Warehouse |
FAQs |
Resources |
Help |
Member List |
Address Book |
Logout |
|
|
How to install emacs
|
Logged in as: Guest |
Users viewing this topic: none |
|
Login |
|
|
How to install emacs - Jul. 8, '04, 12:42:31 PM
|
|
|
wri6067
Posts: 6
Joined: Jun. 3, '04,
Status: offline
|
I tried using pkg_add to install emacs-21.2.tar.gz, but pkg_add didn't like it, so I opened the .gz file and realized there was an entire directory structure in there. So, do I have to run the emacsinstall.ksh or just copy the directory somewhere and start using it?
|
|
|
RE: How to install emacs - Jul. 8, '04, 5:19:44 PM
|
|
|
Rodney
Posts: 3728
Joined: Jul. 9, '02,
From: /Tools lab
Status: offline
|
I'm changing emacs to a real package right now.
I'm just in the middle of testing it. The package is a
small 16M versus the 32M the tarball is. It'll still have
the outstanding errors. But at least it'll be an easier
installation for people and a lot smaller/faster download.
I'll post once it looks good to go.
|
|
|
RE: How to install emacs - Jul. 9, '04, 8:57:55 AM
|
|
|
DonatR
Posts: 38
Joined: Mar. 19, '04,
Status: offline
|
I was wishful thinking (dispite the strong disclaimer) that the emacs21.2 package would be workable for me. It still has the same sudden death that the beta tarball produced for me.
On my fully patched Win2K Pro system with Desktop-X 2.0, ksh, and SFU3.5, the emacs splash screen appears (it's much prettier with those added graphics libs ), but as soon as a window event occurs (mouse movement, keyboard press) the emacs window dies. This happens even when emacs is not the focus window. The error message I get is:
[shell_id#] proc#
[new_shell_id#] - Done (70) emacs
Sigh... I am a long time convert to emacs. Most of the Bell Labs R&D engineers I was sysadmin for were MIT post graduates and insisted I get Athena Poject religion to support them. That was almost two decades ago. I'm getting more comfortable with the MSWindows feel of Nedit, but still find myself using emacs key bindings in Nedit
- Don
|
|
|
RE: How to install emacs - Jul. 9, '04, 9:52:23 AM
|
|
|
DonatR
Posts: 38
Joined: Mar. 19, '04,
Status: offline
|
I'm using Desktop-X 2.0 purchased from you folks.
Ya, I'm using the /Tools Nedit. My reference to MSWindows key bindings was because Nedit uses the MSWindows cut and paste shortcut key bindings. You can't image the fun I have when issuing a "^K" emacs line kill when using nedit-5.4-bin
What makes it more fun is that I use ksh with VISUAL set to emacs, so I'm constently reminded of the emacs bindings.
- Don
|
|
|
RE: How to install emacs - Jul. 9, '04, 10:10:39 AM
|
|
|
Rodney
Posts: 3728
Joined: Jul. 9, '02,
From: /Tools lab
Status: offline
|
> I'm using Desktop-X 2.0 purchased from you folks.
Okay, I've tried it with this and it seems okay here.
What about the exit status of emacs?
|
|
|
RE: How to install emacs - Jul. 9, '04, 11:33:18 AM
|
|
|
DonatR
Posts: 38
Joined: Mar. 19, '04,
Status: offline
|
I did a truss of emacs. Truss incidently gave me enough time to actually load a file into emacs before it died.
Here's the end of a truss of emacs:
sigprocmask() sigprocmask returned 0
getids() getids returned 0
kill() kill returned 0
signal 19 SIGIO code=0
ioctl(4, 0x40046601, 0xCB143C) ioctl returned 0
sigprocmask() sigprocmask returned 0
sysconf() sysconf returned 1024 0x400
select() select returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB13E8) ioctl returned 0
read(4, 0xCB15EC, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB12E8) ioctl returned 0
ioctl(4, 0x40046601, 0xCB13E8) ioctl returned 0
sigprocmask() sigprocmask returned 0
getids() getids returned 0
kill() kill returned 0
signal 19 SIGIO code=0
ioctl(4, 0x40046601, 0xCB143C) ioctl returned 0
sigprocmask() sigprocmask returned 0
sysconf() sysconf returned 1024 0x400
select() select failed: errno 4, Interrupted function call
signal 14 SIGALRM code=1
itimer() itimer returned 0
sigprocmask() sigprocmask returned 0
sysconf() sysconf returned 1024 0x400
select() select returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB13E8) ioctl returned 0
read(4, 0xCB15EC, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB12E8) ioctl returned 0
ioctl(4, 0x40046601, 0xCB13E8) ioctl returned 0
sigprocmask() sigprocmask returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB12C8) ioctl returned 0
read(4, 0xCB14CC, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB11C8) ioctl returned 0
ioctl(4, 0x40046601, 0xCB12C8) ioctl returned 0
read(4, 0xCB14CC, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB11C8) ioctl returned 0
ioctl(4, 0x40046601, 0xCB12C8) ioctl returned 0
sigprocmask() sigprocmask returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB11A8) ioctl returned 0
read(4, 0xCB13AC, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB10A8) ioctl returned 0
signal 14 SIGALRM code=1
itimer() itimer returned 0
sigprocmask() sigprocmask returned 0
ioctl(4, 0x40046601, 0xCB11A8) ioctl returned 0
read(4, 0xCB13AC, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB10A8) ioctl returned 0
ioctl(4, 0x40046601, 0xCB11A8) ioctl returned 0
sigprocmask() sigprocmask returned 0
itimer() itimer returned 0
sigprocmask() sigprocmask returned 0
sigprocmask() sigprocmask returned 0
sigprocmask() sigprocmask returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB1088) ioctl returned 0
read(4, 0xCB128C, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB0F88) ioctl returned 0
read(4, 0xCB118C, 32) read returned 32 0x20
ioctl(4, 0x40046601, 0xCB0F88) ioctl returned 0
ioctl(4, 0x40046601, 0xCB1088) ioctl returned 0
sigprocmask() sigprocmask returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB0F68) ioctl returned 0
read(4, 0xCB116C, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB0E68) ioctl returned 0
ioctl(4, 0x40046601, 0xCB0F68) ioctl returned 0
read(4, 0xCB116C, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB0E68) ioctl returned 0
ioctl(4, 0x40046601, 0xCB0F68) ioctl returned 0
sigprocmask() sigprocmask returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB0E48) ioctl returned 0
read(4, 0xCB104C, 32) read returned 32 0x20
ioctl(4, 0x40046601, 0xCB0E48) ioctl returned 0
sigprocmask() sigprocmask returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB0D28) ioctl returned 0
sigprocmask() sigprocmask returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB0C08) ioctl returned 0
read(4, 0xCB0E0C, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB0B08) ioctl returned 0
ioctl(4, 0x40046601, 0xCB0C08) ioctl returned 0
read(4, 0xCB0E0C, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB0B08) ioctl returned 0
ioctl(4, 0x40046601, 0xCB0C08) ioctl returned 0
sigprocmask() sigprocmask returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB0AE8) ioctl returned 0
read(4, 0xCB0CEC, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB09E8) ioctl returned 0
ioctl(4, 0x40046601, 0xCB0AE8) ioctl returned 0
sigprocmask() sigprocmask returned 0
getids() getids returned 0
kill() kill returned 0
signal 19 SIGIO code=0
ioctl(4, 0x40046601, 0xCB143C) ioctl returned 0
sigprocmask() sigprocmask returned 0
sysconf() sysconf returned 1024 0x400
select() select returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB13E8) ioctl returned 0
read(4, 0xCB15EC, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB12E8) ioctl returned 0
ioctl(4, 0x40046601, 0xCB13E8) ioctl returned 0
sigprocmask() sigprocmask returned 0
getids() getids returned 0
kill() kill returned 0
signal 19 SIGIO code=0
ioctl(4, 0x40046601, 0xCB143C) ioctl returned 0
sigprocmask() sigprocmask returned 0
sysconf() sysconf returned 1024 0x400
select() select failed: errno 4, Interrupted function call
signal 14 SIGALRM code=1
itimer() itimer returned 0
sigprocmask() sigprocmask returned 0
sysconf() sysconf returned 1024 0x400
select() select returned 0
write(4, 0xF03000, 72) write returned 72 0x48
sysconf() sysconf returned 1024 0x400
select() select returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB13E8) ioctl returned 0
signal 14 SIGALRM code=1
itimer() itimer returned 0
sigprocmask() sigprocmask returned 0
read(4, 0xCB15EC, 32) read returned 32 0x20
write(4, 0xF03000, 16) write returned 16 0x10
ioctl(4, 0x40046601, 0xCB12E8) ioctl returned 0
ioctl(4, 0x40046601, 0xCB13E8) ioctl returned 0
sigprocmask() sigprocmask returned 0
itimer() itimer returned 0
sigprocmask() sigprocmask returned 0
sigprocmask() sigprocmask returned 0
sigprocmask() sigprocmask returned 0
null() null returned 0
signal 19 SIGIO code=1
ioctl(4, 0x40046601, 0xCB0C64) ioctl returned 0
shutdown() shutdown returned 0
close(4) close returned 0
getids() getids returned 0
tcgetpgrp() tcgetpgrp returned 0
lseek(0, 1, 0) lseek returned 0
lseek(0, 0, 0) lseek returned 0
exit(70) process exited with status 70
|
|
|
RE: How to install emacs - Jul. 11, '04, 1:28:59 PM
|
|
|
DonatR
Posts: 38
Joined: Mar. 19, '04,
Status: offline
|
When running emacs in "non-X11 windows" mode it works properly for me.
emacs -nw
Does this apply?
http://lists.gnu.org/archive/html/bug-gnu-emacs/2004-04/msg00193.html
|
|
|
RE: How to install emacs - Jul. 12, '04, 10:46:47 AM
|
|
|
DonatR
Posts: 38
Joined: Mar. 19, '04,
Status: offline
|
Since my problem appears to be X11 related ("emacs -nw" works), I'm trying to use the xlib debug hints in /usr/local/share/emacs/21.2/etc/DEBUG to isolate the actual xlib routine that is failing on my system.
GDB seems to choke on emacs. Any suggestions?
This GDB was configured as "i586-pc-interix3"...The debugging information in `/usr/local/bin/emacs' is corrupted.
The file has a `.stabs' section, but no `.stabstr' section.
|
|
|
RE: How to install emacs - Jul. 12, '04, 2:34:57 PM
|
|
|
Rodney
Posts: 3728
Joined: Jul. 9, '02,
From: /Tools lab
Status: offline
|
It's likely that gdb is hitting the load of a shared library and
getting confused. Nothing to be done about it really.
> When running emacs in "non-X11 windows" mode it works properly for me.
Do you have a resource file for emacs ?
I'm wondering if you've set it to do something at startup.
> Does this apply?
Here's the part that it refers to:
** If you encounter X protocol errors
Try evaluating (x-synchronize t). That puts Emacs into synchronous
mode, where each Xlib call checks for errors before it returns. This
mode is much slower, but when you get an error, you will see exactly
which call really caused the error.
You can start Emacs in a synchronous mode by invoking it with the -xrm
option, like this:
emacs -xrm "emacs.synchronous: true"
Setting a breakpoint in the function `x_error_quitter' and looking at
the backtrace when Emacs stops inside that function will show what
code causes the X protocol errors.
Some bugs related to the X protocol disappear when Emacs runs in a
synchronous mode. To track down those bugs, we suggest the following
procedure:
- Run Emacs under a debugger and put a breakpoint inside the
primitive function which, when called from Lisp, triggers the X
protocol errors. For example, if the errors happen when you
delete a frame, put a breakpoint inside `Fdelete_frame'.
- When the breakpoint breaks, step through the code, looking for
calls to X functions (the ones whose names begin with "X" or
"Xt" or "Xm").
- Insert calls to `XSync' before and after each call to the X
functions, like this:
XSync (f->output_data.x->display_info->display, 0);
where `f' is the pointer to the `struct frame' of the selected
frame, normally available via XFRAME (selected_frame). (Most
functions which call X already have some variable that holds the
pointer to the frame, perhaps called `f' or `sf', so you shouldn't
need to compute it.)
If your debugger can call functions in the program being debugged,
you should be able to issue the calls to `XSync' without recompiling
Emacs. For example, with GDB, just type:
call XSync (f->output_data.x->display_info->display, 0)
before and immediately after the suspect X calls. If your
debugger does not support this, you will need to add these pairs
of calls in the source and rebuild Emacs.
Either way, systematically step through the code and issue these
calls until you find the first X function called by Emacs after
which a call to `XSync' winds up in the function
`x_error_quitter'. The first X function call for which this
happens is the one that generated the X protocol error.
- You should now look around this offending X call and try to figure
out what is wrong with it.
|
|
|
New Messages |
No New Messages |
Hot Topic w/ New Messages |
Hot Topic w/o New Messages |
|
Locked w/ New Messages |
Locked w/o New Messages |
|
Post New Thread
Reply to Message
Post New Poll
Submit Vote
Delete My Own Post
Delete My Own Thread
Rate Posts |
|
|
|