all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [simon@limmat.switch.ch: Re: 22.0.95 fails to link (missing -lX11) on Solaris with Sun cc]
@ 2007-03-05  2:55 Richard Stallman
  2007-03-05  7:09 ` Jan Djärv
  0 siblings, 1 reply; 2+ messages in thread
From: Richard Stallman @ 2007-03-05  2:55 UTC (permalink / raw)
  To: Jan Djärv; +Cc: emacs-devel

Would this change fix the new bug and avoid the old one?

------- Start of forwarded message -------
From: Simon Leinen <simon@limmat.switch.ch>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Sun, 4 Mar 2007 10:41:42 +0100
To: rms@gnu.org
Subject: Re: 22.0.95 fails to link (missing -lX11) on Solaris with Sun cc
In-Reply-To: <E1HNcTp-0004WJ-9O@fencepost.gnu.org>
X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=failed 
	version=3.0.4

Richard Stallman writes:
>     I tried to compile the latest pretest on my SPARC workstation running
>     Solaris post-10 ("Nevada b57"), using this configuration

> What was the last pretest (or CVS Emacs version) that did build?

Hm, hard to say.  I did try 22.0.91, and I don't think I had that
particular problem.  But for some other reasons I abandoned the build.

Now with 22.0.95, I can fix the issue for me by applying this patch:

*** emacs-22.0.95/src/Makefile.in	2007/03/02 16:39:05	1.1
- --- emacs-22.0.95/src/Makefile.in	2007/03/02 16:42:22
***************
*** 405,411 ****
  #if HAVE_XFT
  #undef LIB_X11_LIB /* XFT_LIBS includes -lX11 */
  #define LIB_X11_LIB
! XFT_LIBS=@XFT_LIBS@
  #endif /* HAVE_XFT */
  
  #if HAVE_XPM
- --- 405,411 ----
  #if HAVE_XFT
  #undef LIB_X11_LIB /* XFT_LIBS includes -lX11 */
  #define LIB_X11_LIB
! XFT_LIBS=@XFT_LIBS@ -lX11
  #endif /* HAVE_XFT */
  
  #if HAVE_XPM

and I get a working Emacs binary with Xft support, at least when I
build in 32-bit mode.  I have been using that binary for a couple of
days and it worked very well (I'm using it right now).

When I tried to build in 64-bit mode, "make bootstrap" failed:

    echo Directories: $wins; \
    ../src/bootstrap-emacs -batch --no-site-file --multibyte -l autoload --eval '(setq generated-autoload-file "/test/leinen/emacs-22.0.95/lisp/loaddefs.el")' -f batch-update-autoloads $wins
    find /test/leinen/emacs-22.0.95/lisp -name "*.elc" -print | xargs chmod +w >/dev/null 2>&1 || true; \
    wd=/test/leinen/emacs-22.0.95/lisp; subdirs=`(cd $wd; find . -type d -print)`; for file in $subdirs; do case $file in */Old | */RCS | */CVS | */CVS/* | */.* | */.*/* | */=* ) ;; *) wins="$wins $wd/$file" ;; esac; done;	\
    els=`echo $wins | tr ' \011' '\012\012' | \
    	sed -e 's|\(.\)$|\1/|' -e 's|^\./||' -e 's|$|*.el|'`;	\
    for el in /test/leinen/emacs-22.0.95/lisp/emacs-lisp/byte-opt.el /test/leinen/emacs-22.0.95/lisp/emacs-lisp/bytecomp.el /test/leinen/emacs-22.0.95/lisp/subr.el /test/leinen/emacs-22.0.95/lisp/progmodes/cc-mode.el /test/leinen/emacs-22.0.95/lisp/progmodes/cc-vars.el $els; do \
      if test -f $el; \
      then \
        echo Compiling $el; \
        EMACSLOADPATH=/test/leinen/emacs-22.0.95/lisp ../src/bootstrap-emacs -batch --no-site-file --multibyte -f batch-byte-compile-if-not-done $el || exit 1; \
      fi \
    done
    Directories: /test/leinen/emacs-22.0.95/lisp/. /test/leinen/emacs-22.0.95/lisp/./progmodes /test/leinen/emacs-22.0.95/lisp/./play /test/leinen/emacs-22.0.95/lisp/./calc /test/leinen/emacs-22.0.95/lisp/./emulation /test/leinen/emacs-22.0.95/lisp/./net /test/leinen/emacs-22.0.95/lisp/./mail /test/leinen/emacs-22.0.95/lisp/./international /test/leinen/emacs-22.0.95/lisp/./textmodes /test/leinen/emacs-22.0.95/lisp/./eshell /test/leinen/emacs-22.0.95/lisp/./mh-e /test/leinen/emacs-22.0.95/lisp/./gnus /test/leinen/emacs-22.0.95/lisp/./calendar /test/leinen/emacs-22.0.95/lisp/./language /test/leinen/emacs-22.0.95/lisp/./emacs-lisp /test/leinen/emacs-22.0.95/lisp/./url /test/leinen/emacs-22.0.95/lisp/./erc
    Compiling /test/leinen/emacs-22.0.95/lisp/emacs-lisp/byte-opt.el
    Generating autoloads for ps-print.el...
    Generating autoloads for ps-print.el...done
    Generating autoloads for subdirs.el...
    Generating autoloads for subdirs.el...done
    Generating autoloads for version.el...
    Generating autoloads for version.el...done
    Generating autoloads for eshell/esh-groups.el...
    Generating autoloads for eshell/esh-groups.el...done
    Saving file /test/leinen/emacs-22.0.95/lisp/loaddefs.el...
    Wrote /test/leinen/emacs-22.0.95/lisp/loaddefs.el
    Wrote /test/leinen/emacs-22.0.95/lisp/emacs-lisp/byte-opt.elc
    Compiling /test/leinen/emacs-22.0.95/lisp/emacs-lisp/bytecomp.el
    
    In toplevel form:
    emacs-lisp/bytecomp.el:156:1:Error: Symbol's value as variable is void: defconst-tmp-var
    make[2]: *** [compile] Error 1
    make[2]: Leaving directory `/test/leinen/emacs-22.0.95/lisp'
    make[1]: *** [bootstrap-build] Error 2
    make[1]: Leaving directory `/test/leinen/emacs-22.0.95'
    make: *** [bootstrap] Error 2

When I do the bootstrap in 32-bit mode, and just "make" in 64-bit
mode, I do get an 64-bit Emacs binary, but the binary dumps core.
Unfortunately I don't have a working 64-bit debugging environment.

Note that this is all using Sun's C compiler (Sun C 5.7, not the
latest & greatest).  I haven't tried to build using GCC yet.
- -- 
Simon.
------- End of forwarded message -------

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [simon@limmat.switch.ch: Re: 22.0.95 fails to link (missing -lX11) on Solaris with Sun cc]
  2007-03-05  2:55 [simon@limmat.switch.ch: Re: 22.0.95 fails to link (missing -lX11) on Solaris with Sun cc] Richard Stallman
@ 2007-03-05  7:09 ` Jan Djärv
  0 siblings, 0 replies; 2+ messages in thread
From: Jan Djärv @ 2007-03-05  7:09 UTC (permalink / raw)
  To: rms; +Cc: emacs-devel



Richard Stallman skrev:
> Would this change fix the new bug and avoid the old one?
> 

This is the same fix.  Instead of keeping -lX11 in LIB_X11_LIB it has been 
added to XFT_LIBS.  The net result is something like

   -lXft -lXrender -lfontconfig -lfreetype -lX11

in both cases.

Or

    -lXft -lXrender -lfontconfig -lfreetype -lX11 -lX11

when -lX11 is included in XFT_LIBS.

	Jan D.

> ------- Start of forwarded message -------
> From: Simon Leinen <simon@limmat.switch.ch>
> MIME-Version: 1.0
> Content-Type: text/plain; charset=us-ascii
> Date: Sun, 4 Mar 2007 10:41:42 +0100
> To: rms@gnu.org
> Subject: Re: 22.0.95 fails to link (missing -lX11) on Solaris with Sun cc
> In-Reply-To: <E1HNcTp-0004WJ-9O@fencepost.gnu.org>
> X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=failed 
> 	version=3.0.4
> 
> Richard Stallman writes:
>>     I tried to compile the latest pretest on my SPARC workstation running
>>     Solaris post-10 ("Nevada b57"), using this configuration
> 
>> What was the last pretest (or CVS Emacs version) that did build?
> 
> Hm, hard to say.  I did try 22.0.91, and I don't think I had that
> particular problem.  But for some other reasons I abandoned the build.
> 
> Now with 22.0.95, I can fix the issue for me by applying this patch:
> 
> *** emacs-22.0.95/src/Makefile.in	2007/03/02 16:39:05	1.1
> - --- emacs-22.0.95/src/Makefile.in	2007/03/02 16:42:22
> ***************
> *** 405,411 ****
>   #if HAVE_XFT
>   #undef LIB_X11_LIB /* XFT_LIBS includes -lX11 */
>   #define LIB_X11_LIB
> ! XFT_LIBS=@XFT_LIBS@
>   #endif /* HAVE_XFT */
>   
>   #if HAVE_XPM
> - --- 405,411 ----
>   #if HAVE_XFT
>   #undef LIB_X11_LIB /* XFT_LIBS includes -lX11 */
>   #define LIB_X11_LIB
> ! XFT_LIBS=@XFT_LIBS@ -lX11
>   #endif /* HAVE_XFT */
>   
>   #if HAVE_XPM
> 
> and I get a working Emacs binary with Xft support, at least when I
> build in 32-bit mode.  I have been using that binary for a couple of
> days and it worked very well (I'm using it right now).
> 
> When I tried to build in 64-bit mode, "make bootstrap" failed:
> 
>     echo Directories: $wins; \
>     ../src/bootstrap-emacs -batch --no-site-file --multibyte -l autoload --eval '(setq generated-autoload-file "/test/leinen/emacs-22.0.95/lisp/loaddefs.el")' -f batch-update-autoloads $wins
>     find /test/leinen/emacs-22.0.95/lisp -name "*.elc" -print | xargs chmod +w >/dev/null 2>&1 || true; \
>     wd=/test/leinen/emacs-22.0.95/lisp; subdirs=`(cd $wd; find . -type d -print)`; for file in $subdirs; do case $file in */Old | */RCS | */CVS | */CVS/* | */.* | */.*/* | */=* ) ;; *) wins="$wins $wd/$file" ;; esac; done;	\
>     els=`echo $wins | tr ' \011' '\012\012' | \
>     	sed -e 's|\(.\)$|\1/|' -e 's|^\./||' -e 's|$|*.el|'`;	\
>     for el in /test/leinen/emacs-22.0.95/lisp/emacs-lisp/byte-opt.el /test/leinen/emacs-22.0.95/lisp/emacs-lisp/bytecomp.el /test/leinen/emacs-22.0.95/lisp/subr.el /test/leinen/emacs-22.0.95/lisp/progmodes/cc-mode.el /test/leinen/emacs-22.0.95/lisp/progmodes/cc-vars.el $els; do \
>       if test -f $el; \
>       then \
>         echo Compiling $el; \
>         EMACSLOADPATH=/test/leinen/emacs-22.0.95/lisp ../src/bootstrap-emacs -batch --no-site-file --multibyte -f batch-byte-compile-if-not-done $el || exit 1; \
>       fi \
>     done
>     Directories: /test/leinen/emacs-22.0.95/lisp/. /test/leinen/emacs-22.0.95/lisp/./progmodes /test/leinen/emacs-22.0.95/lisp/./play /test/leinen/emacs-22.0.95/lisp/./calc /test/leinen/emacs-22.0.95/lisp/./emulation /test/leinen/emacs-22.0.95/lisp/./net /test/leinen/emacs-22.0.95/lisp/./mail /test/leinen/emacs-22.0.95/lisp/./international /test/leinen/emacs-22.0.95/lisp/./textmodes /test/leinen/emacs-22.0.95/lisp/./eshell /test/leinen/emacs-22.0.95/lisp/./mh-e /test/leinen/emacs-22.0.95/lisp/./gnus /test/leinen/emacs-22.0.95/lisp/./calendar /test/leinen/emacs-22.0.95/lisp/./language /test/leinen/emacs-22.0.95/lisp/./emacs-lisp /test/leinen/emacs-22.0.95/lisp/./url /test/leinen/emacs-22.0.95/lisp/./erc
>     Compiling /test/leinen/emacs-22.0.95/lisp/emacs-lisp/byte-opt.el
>     Generating autoloads for ps-print.el...
>     Generating autoloads for ps-print.el...done
>     Generating autoloads for subdirs.el...
>     Generating autoloads for subdirs.el...done
>     Generating autoloads for version.el...
>     Generating autoloads for version.el...done
>     Generating autoloads for eshell/esh-groups.el...
>     Generating autoloads for eshell/esh-groups.el...done
>     Saving file /test/leinen/emacs-22.0.95/lisp/loaddefs.el...
>     Wrote /test/leinen/emacs-22.0.95/lisp/loaddefs.el
>     Wrote /test/leinen/emacs-22.0.95/lisp/emacs-lisp/byte-opt.elc
>     Compiling /test/leinen/emacs-22.0.95/lisp/emacs-lisp/bytecomp.el
>     
>     In toplevel form:
>     emacs-lisp/bytecomp.el:156:1:Error: Symbol's value as variable is void: defconst-tmp-var
>     make[2]: *** [compile] Error 1
>     make[2]: Leaving directory `/test/leinen/emacs-22.0.95/lisp'
>     make[1]: *** [bootstrap-build] Error 2
>     make[1]: Leaving directory `/test/leinen/emacs-22.0.95'
>     make: *** [bootstrap] Error 2
> 
> When I do the bootstrap in 32-bit mode, and just "make" in 64-bit
> mode, I do get an 64-bit Emacs binary, but the binary dumps core.
> Unfortunately I don't have a working 64-bit debugging environment.
> 
> Note that this is all using Sun's C compiler (Sun C 5.7, not the
> latest & greatest).  I haven't tried to build using GCC yet.
> - -- 
> Simon.
> ------- End of forwarded message -------

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-03-05  7:09 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-03-05  2:55 [simon@limmat.switch.ch: Re: 22.0.95 fails to link (missing -lX11) on Solaris with Sun cc] Richard Stallman
2007-03-05  7:09 ` Jan Djärv

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.