[EMAIL PROTECTED] wrote:
Now with the workaround of knowing to run startx -- :0 to get X to start, I thought I'd have a poke about to see what exactly makes it crash. I came up with several interesting problems.
In my .xinitrc I *don't* have an explicit path for xterm. However, I see xterm has moved from /usr/X11R6/bin to /usr/bin! Did many other X applications also move into there?
My system does not have a problem finding xterm in /usr/bin because /usr/bin should always be in your Cygwin shell path... something else is wrong with your Cygwin setup if that is not the case.
I only noticed that xterm had moved because when I start X with -multiwindow (or with -clipboard), it complains like this and exits:
$ PATH="$PATH:/usr/X11R6/bin" startx -multiwindow -- :0
You shouldn't have to set the PATH to include /usr/X11R6/bin... as you said, it cannot find /usr/bin/xterm.
XCOMM: not found
Oops... that isn't supposed to be in the startx script. Those XCOMMs are supposed to be replaced with # signs at the beginning of the line. I've fixed this in a new version of the script.
cat: /cygdrive/d/home/luke/.Xauthority: No such file or directory
xinit: No such file or directory (errno 2): no program named
"/usr/X11R6/bin/xterm" in PATH
Something else must be wrong with your path.
However if I start it the same way, but without the -multiwindow, X starts successfully. (PATH="$PATH:/usr/X11R6/bin" startx -- :0)
If I try to start it with a plain startx (no "--"), I get the usual illegal option messages (related to having some kind of "traditional" Chinese or Japanese font installed, I vaguely think), and then it dies because it thinks a window manager is already running:
$ PATH="$PATH:/usr/X11R6/bin" startx cat: /cygdrive/d/home/luke/.Xauthority: No such file or directory
: illegal option -- t
: illegal option -- r
: illegal option -- a
: illegal option -- d
: illegal option -- i
: illegal option -- t
: illegal option -- i
: illegal option -- o
: illegal option -- n
: illegal option -- a
DISPLAY is :0
wmaker fatal error: it seems that there is already a window manager running
xinit: Bad file descriptor (errno 9): can't send HUP to process group 3904
waiting for X server to shut down
I think you have a custom ~/.xinitrc or your /etc/X11/xinit/xinitrc has been modified. Or, you might have ~/.xserverrc or /etc/X11/xinit/xserverrc (which are not installed by anything I have written). Please send in any of these files if you find them so that we can see what they are doing. For starters, they are obviously starting a window manager, which is not something that the version from X-startup-scripts-1.0.5-1 does.
So if I remove the "exec wmaker" from .xinitrc, X starts and stops instantly. So I add an "xterm" at the end of .xinitrc (since X doesn't realise the wmaker would have started lots of windows from its saved workspace state if it had been given a few seconds to run).
Yeah, you have to have a "magic client" that is started with an exec at the end of your .xinitrc, otherwise the behavior that you described is exactly what is supposed to happen.
I think you can override the defaultserverargs in your .xinitrc so that you could have a .xinitrc that both starts its own wm and prevents startx from passing "-multiwindow" to XWin.exe. I'm not an xinit/startx expert, so you'll have to look for docs on that elsewhere.
It looks like no window manager is running at all.
I wonder how I can run multiwindow with wmaker as my window manager? Maybe keep the "exec wmaker" and set display to :1 ... No, "startx -multiwindow -- :1" triggers the "no program named "/usr/X11R6/bin/xterm" in PATH" crash. So I don't quite see how to achieve that. I tried xinit -multiwindow but that started up a full desktop.
Seriously, the easiet way is to use startxwin.bat and modify it according to the instructions in that file. Or, if you really want to start from a Cygwin shell, use startxwin.sh and modify it accorinding to its instructions. There are pre-made lines that are just commented out that start a window manager etc.
Lets have you try these things first and see where it goes.
Harold
