This is the mail archive of the
mailing list for the Cygwin project.
Re: How do I build the non-X version of rxvt.exe?
- From: Igor Pechtchanski <pechtcha at cs dot nyu dot edu>
- To: Francis Litterio <franl at world dot std dot com>
- Cc: cygwin at cygwin dot com
- Date: Sat, 3 May 2003 21:37:04 -0400 (EDT)
- Subject: Re: How do I build the non-X version of rxvt.exe?
- Reply-to: cygwin at cygwin dot com
On Sat, 3 May 2003, Francis Litterio wrote:
> Igor Pechtchanski wrote:
> > On Sat, 3 May 2003, Francis Litterio wrote:
> >> Here's the exact sequence of commands I'm using:
> >> bzcat rxvt-2.7.10-3-src.tar.bz2 | tar xvf -
> >> cd rxvt
> >> ./configure --prefix=/usr/local
> >> make
> >> unset DISPLAY
> >> env | grep DISPLAY # To verify previous command.
> >> src/rxvt.exe
> >> Then there's a pause for six or seven seconds, and I see:
> >> rxvt: can't open display :0
> > IIRC, the W11 library is built as a DLL (libW11.dll), so you won't find
> > the string W11_LIBRARY in rxvt.exe.
> Yes, you're right. Sorry about that mistake.
> > For rxvt to find the DLL, it has to
> > either be in your path, or in the same directory as rxvt.exe. It's quite
> > possible that if rxvt doesn't find this DLL it reverts to X11 code.
> Reading the code, I see that's not the logic. In rxvt/W11/wrap/wrap.c,
> XOpenDisplay() does:
> when DISPLAY is unset or set to ":0", otherwise it does:
> Then _libname is used to generate the name of a library passed to
> LoadLibrary(). I'm seeing this after my make completes:
> bash$ strings -a src/rxvt.exe | grep libW11
> Because the code in wrap.c is never linked into rxvt.exe, it doesn't
> even know about libW11.dll, and it always uses
> I made this patch to rxvt/src/Makefile and got a working non-X version
> of rxvt.exe:
> --- src/Makefile.orig 2003-05-03 20:41:30.000000000 -0400
> +++ src/Makefile 2003-05-03 20:56:22.000000000 -0400
> @@ -58,7 +58,7 @@
> CPPFLAGS =
> LDFLAGS =
> DEFS = -DHAVE_CONFIG_H
> -LIBS =
> +LIBS = ../W11/lib/libX11.a
> DINCLUDE =
> DLIB =
> but I'm not sure that's the right way to solve it, because the resulting
> rxvt.exe still requires that libX11.dll is in my PATH, even though it
> properly loads libW11.dll.
> Am I missing something obvious, or is the failure to link against
> W11/lib/libX11.a really the heart of the problem?
> If so, why don't the Cygwin developers run into this problem? Perhaps
> the rxvt source tarball I downloaded using setup.exe does not match the
> CVS sources?
> Francis Litterio
The following is from /usr/doc/Cygwin/rxvt-2.7.10.README (also in
./configure --enable-utmp --enable-wtmp --enable-lastlog \
--enable-xpm-background --enable-menubar --enable-rxvt-scroll \
--enable-next-scroll --enable-xterm-scroll --enable-frills \
--enable-linespace --enable-mousewheel --enable-keepscrolling \
--enable-old-selection --enable-transparency \
--with-xpm-includes=`pwd`/W11/X11 --with-xpm-library=`pwd`/W11/lib \
--enable-languages --with-encoding=noenc \
CFLAGS="-O -g -W -I`pwd`/W11" \
LDFLAGS="-mwindows -Wl,--subsystem,console" \
2) run make
I'm guessing you were missing the "--with-x-library=`pwd`/W11/lib",
although I would look carefully through configure options to make sure you
won't need the others.
|\ _,,,---,,_ email@example.com
ZZZzz /,`.-'`' -. ;-;;,_ firstname.lastname@example.org
|,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski
'---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow!
Knowledge is an unending adventure at the edge of uncertainty.
-- Leto II
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html