emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GNUStep build problems


From: Dan Nicolaescu
Subject: Re: GNUStep build problems
Date: Fri, 22 Aug 2008 09:30:17 -0700

Christian Faulhammer <address@hidden> writes:

  > Hi,
  > 
  > we are trying to add GNUstep support for Emacs in Gentoo Linux.
  > Unfortunately Emacs build fails from HEAD during bootstrapping, maybe
  > you can have a look at it, a log of the build process is attached.
  > Also there has been a linker problem as in Gentoo the GNUstep libraries
  > are not in FHS locations but in the ones recommended by GNUstep.  A
  > patch for that is attached.
  > 
  > CCing Gentoo Emacs and GNUstep teams.
  > 
  > V-Li
  > 
  > --- src/Makefile.in.orig    2008-08-14 10:49:19.000000000 +0200
  > +++ src/Makefile.in 2008-08-14 10:49:22.000000000 +0200
  > @@ -938,7 +938,7 @@
  >  temacs${EXEEXT}: $(LOCALCPP) $(STARTFILES) stamp-oldxmenu ${obj} 
${otherobj} OBJECTS_MACHINE prefix-args${EXEEXT}
  >     echo "${obj} ${otherobj} " OBJECTS_MACHINE > buildobj.lst
  >  #ifdef NS_IMPL_GNUSTEP
  > -   $(CC) -rdynamic YMF_PASS_LDFLAGS (${TEMACS_LDFLAGS} -lgnustep-gui 
-lgnustep-base -lobjc $(CONFIG_SYSTEM_LIBS) -lpthread ) -o temacs ${obj} 
${otherobj} OBJECTS_MACHINE ${LIBES}
  > +   $(CC) -rdynamic YMF_PASS_LDFLAGS (${TEMACS_LDFLAGS} address@hidden@ 
[snip]
                                                            
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                                    The recommended way
                                                    is not to substitute
                                                    directly in a make
                                                    rule, but use a
                                                    variable.

  >  #else
  >     $(LD) YMF_PASS_LDFLAGS (${STARTFLAGS} ${TEMACS_LDFLAGS}) $(LDFLAGS) \
  >      -o temacs ${STARTFILES} ${obj} ${otherobj}  \

The best would be to get rid of the #ifdef NS_IMPL_GNUSTEP, and use the
default rule for temacs${EXEEXT}, passing the correct flags in the
existing variables, or add new ones if needed.  Given that not too many
people work/even have access to GNUStep, help getting that right would
be greatly appreciated.

Now looking at the log:

./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man 
--infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc 
--localstatedir=/var/lib --program-suffix=-emacs-23 
--infodir=/usr/share/info/emacs-23 --without-carbon --with-sound --with-x 
--without-toolkit-scroll-bars --with-gif --with-jpeg --with-png --with-rsvg 
--with-tiff --with-xpm --disable-font-backend --without-freetype --without-xft 
--without-libotf --without-m17n-flt --with-x-toolkit=gtk --without-hesiod 
--with-ns --disable-ns-self-contained --without-kerberos --without-kerberos5 
--with-gpm --with-dbus --build=i686-pc-linux-gnu
configure: WARNING: Unrecognized options: --without-carbon, 
--disable-font-backend
^^^^^^^^^^^^^^^^^^
This warning is obvious...

--with-x --with-x-toolkit=gtk make no sense when using --with-ns
--with-gif --with-jpeg etc, are turned on by default, no need to bother with 
them. 

You can try to get around the byte compilation problem by first
configure --with-x, do a make to create the .elc files, and then
reconfigure --with-ns and try again.  It's a hack, but it might help
until someone finds a proper fix.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]