Several compile issues



Hi everyone.
I'm trying to get a clean compile of most of the CVS tree.
I found several small issues.

First of all the CVS tree contains a lot of things that IMHO shouldn't be there.
If I understand at all the directory structure should *not* contain any Makefile
(made from Makefile.in), no Makefile.in (made from Makefile.am), no configure
(made from configure.in), no ltmain.sh and ltconfig (made by libtoolize).
Several packages have dome of those files.
Is it possible to remove them from the CVS tree?

As far as I could determine some symlinks are necessary to compile.
Most notably:
ORBit needs a link to ../libIDL
baboon needs a link to ../gnome-libs/libgnorba
libPropList does not have a autogen.sh
libgtop needs a link to ../gnome-common/support
lots of packages need a link to ../gnome-common/macro
lots of packages need a link to ../gnome-common/intl

Other tweaks I found necessary to *compile*:

'e':
========================================
diff -ru GNOME/e/src/ttfont.c GNOME.build/e/src/ttfont.c                        
--- GNOME/e/src/ttfont.c        Sun Oct 11 23:08:14 1998                        
+++ GNOME.build/e/src/ttfont.c  Fri Oct 16 14:49:32 1998                        
@@ -738,8 +738,9 @@                                                             
    TT_Set_Instance_Resolutions(f->instance, dpi, dpi);                         
    TT_Set_Instance_CharSize(f->instance, size * 64);                           
                                                                                
-   n = f->properties.num_CharMaps;                                             
-                                                                               
+   // n = f->properties.num_CharMaps;                                          
+   n = TT_Get_CharMap_Count(f->face);                                          
+                                                                               
    for (i = 0; i < n; i++)                                                     
      {                                                                         
        TT_Get_CharMap_ID(f->face, i, &platform, &encoding);                    
========================================
is this correct? the error i got was:
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I/opt/GNOME/include -I/opt/GNOME/include -I/usr/X11R6/include -I/opt/GNOME/include -DENLIGHTENMENT_ROOT=\"/opt/GNOME/enlightenment\" -g -O2 -c ttfont.c
ttfont.c: In function `Efont_load':
ttfont.c:741: structure has no member named `num_CharMaps'
make[2]: *** [ttfont.o] Error 1
-------------------------------------------------------------------------------

'form-maker':
i got the following error:
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/X11R6/include -I/opt/GNOME/lib/glib/include -I/opt/GNOME/include -I..  -g -O2 -c main.c 
main.c: In function `main':                                                     
main.c:52: `TEMPLATE_CONF' undeclared (first use this function)                 
main.c:52: (Each undeclared identifier is reported only once                    
main.c:52: for each function it appears in.)                                    
make[2]: *** [main.o] Error 1          
This results from the fact main.c includes "paths.h", which is *not* present in the
current dir because it must be built from paths.h.in, before doing so make finds
/usr/include/paths.h (standard in my debian hamm distribution) and uses that 
instead, whence the error.                                         
I also changed the (IMHO sucking) default for the template dirs/
========================================
diff -ru GNOME/form-maker/app/Makefile.am GNOME.build/form-maker/app/Makefile.am                                                                           
--- GNOME/form-maker/app/Makefile.am    Sun Oct 11 23:08:15 1998                                                                                           
+++ GNOME.build/form-maker/app/Makefile.am      Fri Oct 16 18:53:40 1998                                                                                   
@@ -36,7 +36,7 @@                                                                                                                                          
            < $(srcdir)/paths.h.in >paths.h.tmp \                                                                                                          
            && mv -f paths.h.tmp paths.h                                                                                                                   
                                                                                                                                                           
-BUILT_SOURCES = formyacc.h                                                                                                                                
+BUILT_SOURCES = formyacc.c formyacc.h paths.h                                                                                                             
                                                                                                                                                           
 INCLUDES = \                                                                                                                                              
        $(X_CFLAGS)     \                                                                                                                                  
diff -ru GNOME/form-maker/configure.in GNOME.build/form-maker/configure.in                                                                                 
--- GNOME/form-maker/configure.in       Sun Oct 11 23:08:15 1998                                                                                           
+++ GNOME.build/form-maker/configure.in Fri Oct 16 15:45:36 1998                                                                                           
@@ -27,8 +27,8 @@                                                                                                                                          
 fi)                                                                                                                                                       
                                                                                                                                                           
 dnl Possibly change the default template dir.                                                                                                             
-templatedir="/mnt/engineering/templates"                                                                                                                  
-AC_ARG_ENABLE(templatedir, [  --enable-templatedir=DIR    Change the default templatedir from /mnt/engineering/templates to DIR],                         
+templatedir="$prefix/var//templates"                                                                                                                      
+AC_ARG_ENABLE(templatedir, [  --enable-templatedir=DIR    Change the default templatedir from $prefix/share/templates to DIR],                            
 if eval "test x$enable_templatedir != x"; then                                                                                                            
   if eval "test x$enable_templatedir != xyes"; then                                                                                                       
     templatedir=$enable_templatedir                                                                                                                       
========================================

'gmedia':
The error:
gcc -g -O2 -o gmedia_play gmedia-play.o ../../libgmedia/.libs/libgmedia.a -L/opt/GNOME/lib -lglib                                                          
../../libgmedia/.libs/libgmedia.a(gmedia.o): In function `load_backend':                                                                                   
/usr/local/src/cvs/GNOME.build/gmedia/libgmedia/gmedia.c:295: undefined reference to `dlopen'                                                              
/usr/local/src/cvs/GNOME.build/gmedia/libgmedia/gmedia.c:297: undefined reference to `dlerror'                                                             
/usr/local/src/cvs/GNOME.build/gmedia/libgmedia/gmedia.c:309: undefined reference to `dlsym'                                                               
/usr/local/src/cvs/GNOME.build/gmedia/libgmedia/gmedia.c:314: undefined reference to `dlsym'                                                               
../../libgmedia/.libs/libgmedia.a(gmedia.o): In function `gmedia_exit':                                                                                    
/usr/local/src/cvs/GNOME.build/gmedia/libgmedia/gmedia.c:428: undefined reference to `dlclose'                                                             
make[3]: *** [gmedia_play] Error 1                                                                                                                         
My solution:
========================================
diff -ru GNOME/gmedia/frontends/gmedia_play/Makefile.am GNOME.build/gmedia/frontends/gmedia_play/Makefile.am                                               
--- GNOME/gmedia/frontends/gmedia_play/Makefile.am      Sun Oct 11 23:08:32 1998                                                                           
+++ GNOME.build/gmedia/frontends/gmedia_play/Makefile.am        Fri Oct 16 16:00:52 1998                                                                   
@@ -19,7 +19,7 @@                                                                                                                                          
                                                                                                                                                           
 gmedia_play_LDADD = $(INTLLIBS) \                                                                                                                         
        $(top_builddir)/libgmedia/libgmedia.la \                                                                                                           
-       $(GLIB_LIBS)                                                                                                                                       
+       $(DL_LIB) $(GLIB_LIBS)                                                                                                                             
                                                                                                                                                           
 CLEANFILES= *.o core *~                                                                                                                                   
                                                                                                                                                           
========================================

'gnome-dom':

The error:
gcc -DHAVE_CONFIG_H -I. -I. -I. -I. -I. -I./intl -I./intl -I/opt/GNOME/include -I/opt/GNOME/include/gnome-xml -I/opt/GNOME/lib/glib/include -I/opt/GNOME/in
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. -I. -I. -I./intl -I./intl -I/opt/GNOME/include -I/opt/GNOME/include/gnome-xml -I/opt/GNOME
gcc -DHAVE_CONFIG_H -I. -I. -I. -I. -I. -I./intl -I./intl -I/opt/GNOME/include -I/opt/GNOME/include/gnome-xml -I/opt/GNOME/lib/glib/include -I/opt/GNOME/in
DOM-common.c:41: `TC_CORBA_unsigned_short' undeclared here (not in a function)                                                                             
DOM-common.c:41: initializer element for `anon_subtypes_array6[0]' is not constant                                                                         
DOM-common.c:82: `TC_CORBA_unsigned_short' undeclared here (not in a function)                                                                             
DOM-common.c:82: initializer element for `anon_subtypes_array12[0]' is not constant                                                                        
make: *** [DOM-common.lo] Error 1                                                                                                                          
seem to come from the fact the idl-compiler generates references to 
`TC_CORBA_unsigned_short' while in $prefix/include/orb/corba-typecode.h
there is a #define  TC_CORBA_ushort ...
I inserted another #define, but I'm unsure if this is the Right Thing (I would say NO).


I found several other tweaks, but I do not want to make this post too long.
The main question is:
I can help to build a system that will compile cleanly from the CVS tree.
To whom should I send patches?

IMHO to have *at least* a clean compile both in a "blank" and a "tweaked" 
machine is important.
>From what I see many developers have "tweaked" machines and they do 
not realize the fact because they did the tweak long ago.
Instead to instruct people to manually do the same tweakings (as some 
parts of the FAQ do) I would like to have a CVS tree compiling on a "blank"
computer (the tweaking done in the CVS tree).

I do not have much time in my hands, so I will have to ask the various 
developers if the specific patch is acceptable and/or to find a solution.

Is this of any interest?



Best Regards

Mauro Condarelli



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