[sword-devel] Compile, Link errors on FC2, partial fix

Terry Biggs terry470 at alltel.net
Tue Jun 29 17:09:42 MST 2004


On Tue, 2004-06-29 at 17:42, Torrey Hoffman wrote:
> Hello.  
> 
> While doing a basic ./configure & make of gnomesword 2.0.0 on my Fedora
> Core 2 machine, I got this error:
> 
> Making all in gnome2
> make[3]: Entering directory `/usr/local/src/gnomesword2-2.0.0/src/gnome2'
> if gcc -DHAVE_CONFIG_H -I. -I. -I../.. -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gtk-2.0 -I/usr/include/libart-2.0 -I/usr/include/gconf/2 -I/usr/include/libbonoboui-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/X11R6/include -I/usr/include/freetype2/config -I/usr/include/libxml2 -I/usr/include/libgtkhtml-3.0 -I/usr/include/libgnomeprint-2.2 -I/usr/include/libgnomeprintui-2.2 -I/usr/include/libglade-2.0 -I/usr/include/gal-2.0 -I/usr/include/sword   -I../../src -DPREFIX=\""/usr"\" -DSYSCONFDIR=\""/etc"\" -DDATADIR=\""/usr/share"\" -DLIBDIR=\""/usr/lib"\" -DGNOME_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED    -g -O2 -MT bibletext!
> _dialog.o -MD -MP -MF ".deps/bibletext_dialog.Tpo" \
>   -c -o bibletext_dialog.o `test -f 'bibletext_dialog.c' || echo './'`bibletext_dialog.c; \
> then mv -f ".deps/bibletext_dialog.Tpo" ".deps/bibletext_dialog.Po"; \
> else rm -f ".deps/bibletext_dialog.Tpo"; exit 1; \
> fi
> bibletext_dialog.c: In function `create_nav_toolbar':
> bibletext_dialog.c:917: warning: assignment makes pointer from integer without a cast
> bibletext_dialog.c:928: error: invalid type argument of `->'
> distcc[18477] ERROR: compile bibletext_dialog.c on localhost failed
> make[3]: *** [bibletext_dialog.o] Error 1
> ------------------
> 
> This seems to be because the version of GTK I have, (Fedora Core 2's
> RPM: gtk2-2.4.0-1) wraps the contents of
> /usr/include/gtk-2.0/gtk/gtkcombo.h with an "#ifndef
> GTK_DISABLE_DEPRECATED".
> 
> When I took the GTK_DISABLE_DEPRECATED out of the Makefile, the
> compilation got quite a bit further and then died with:
> 
> ------------------
>  if gcc -DHAVE_CONFIG_H -I. -I. -I../.. -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gtk-2.0 -I/usr/include/libart-2.0 -I/usr/include/gconf/2 -I/usr/include/libbonoboui-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/X11R6/include -I/usr/include/freetype2/config -I/usr/include/libxml2 -I/usr/include/libgtkhtml-3.0 -I/usr/include/libgnomeprint-2.2 -I/usr/include/libgnomeprintui-2.2 -I/usr/include/libglade-2.0 -I/usr/include/gal-2.0 -I/usr/include/sword   -I../../src -DPREFIX=\""/usr/local"\" -DSYSCONFDIR=\""/usr/local/etc"\" -DDATADIR=\""/usr/local/share"\" -DLIBDIR=\""/usr/local/lib"\" -DGNOME_DISABLE_DEPRECATED    -g -O2 -MT font_!
> dialog.o -MD -MP -MF ".deps/font_dialog.Tpo" \
>   -c -o font_dialog.o `test -f 'font_dialog.c' || echo './'`font_dialog.c; \
> then mv -f ".deps/font_dialog.Tpo" ".deps/font_dialog.Po"; \
> else rm -f ".deps/font_dialog.Tpo"; exit 1; \
> fi
> font_dialog.c:190: error: syntax error before '*' token
> font_dialog.c: In function `font_set':
> font_dialog.c:193: error: `mf' undeclared (first use in this function)
> font_dialog.c:193: error: (Each undeclared identifier is reported only once
> font_dialog.c:193: error: for each function it appears in.)
> font_dialog.c:194: error: `GnomeFontPicker' undeclared (first use in this function)
> font_dialog.c:194: error: syntax error before ')' token
> font_dialog.c: In function `create_dialog_mod_font':
> font_dialog.c:334: warning: assignment makes pointer from integer without a cast
> font_dialog.c:340: error: `GNOME_FONT_PICKER_MODE_FONT_INFO' undeclared (first use in this function)
> font_dialog.c: In function `gui_set_module_font':
> font_dialog.c:464: error: `GnomeFontPicker' undeclared (first use in this function)
> font_dialog.c:464: error: syntax error before ')' token
> 
> ------------------
> 
> I then also took out the GNOME_DISABLE_DEPRECATED from the Makefile, and
> it got all the way through compilation but died in linking.  I haven't
> found a fix for this one yet.
> 
> At first glance it seems to not be properly linking with libsword.a,
> although I do have /usr/lib/libsword.a and /usr/lib/libsword.la ...
> (following output from the build has whitespace added for readability)
> 
You need to build sword with shared libs enabled.

> ------------------
> g++ -g -O2 -ftemplate-depth-25 -o gnomesword2 about_gnomesword.o about_modules.o about_sword.o 
>         bibletext.o bibletext_dialog.o bibletext_menu.o bookmarks_menu.o bookmarks_treeview.o 
>         cipher_key_dialog.o commentary.o commentary_dialog.o commentary_menu.o dialog.o 
>         dictlex.o dictlex_dialog.o dictlex_menu.o display_info.o dummy.o editor.o editor_menu.o 
>         editor_replace.o editor_spell.o fileselection.o find_dialog.o font_dialog.o gbs.o gbs_dialog.o 
>         gbs_display.o gbs_menu.o gnomesword.o gtkhtml_display.o gui.o hints.o history.o html.o 
>         main_menu.o main_window.o parallel_view.o parallel_dialog.o percomm.o 
>         preferences_cell_renderer.o preferences_dialog.o search_dialog.o search_sidebar.o
>         setup_druid.o sidebar.o sidebar_dialog.o splash.o studypad.o studypad_dialog.o 
>         toolbar_edit.o toolbar_nav.o toolbar_style.o utilities.o 
>         -pthread -Wl,--export-dynamic -pthread -Wl,--export-dynamic  -L/usr/X11R6/lib 
>         -lgtkhtml-3.0 -lgnomeprintui-2-2 -lgal-2.0 -lgal-a11y-2.0 -lgnomeprint-2-2 
>         /usr/lib/libsword.a 
>         -L/usr/lib -lcurl -L/usr/kerberos/lib -lssl -lcrypto 
>         -lgssapi_krb5 -lkrb5 -lcom_err -lk5crypto -lresolv -lgnomeui-2 -lSM -lICE 
>         -lbonoboui-2 -lgnomecanvas-2 -lgnome-2 /usr/lib/libpopt.so -lart_lgpl_2 -lpangoft2-1.0 
>         -lbonobo-2 -lgconf-2 -lgnomevfs-2 -lbonobo-activation -lORBit-2 -lgthread-2.0 -lglade-2.0 
>         -lgtk-x11-2.0 /usr/lib/libxml2.so -lpthread -lz -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 
>         -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 
>         ../../src/main/libmain.a ../../src/backend/libbackend.a
> 
> ../../src/backend/libbackend.a(config.o)(.text+0x18): In function `backend_open_config_file':
> /usr/include/c++/3.3.3/bits/stl_tree.h:141: undefined reference to `sword::SWConfig::SWConfig[in-charge](char const*)'
> 
> ../../src/backend/libbackend.a(config.o)(.text+0x64): In function `backend_erase_config_section':
> /usr/local/src/gnomesword2-2.0.0/src/backend/config.cc:172: undefined reference to `sword::SWBuf::SWBuf[in-charge](char const*, unsigned long)'
> 
> ../../src/backend/libbackend.a(config.o)(.text+0xf3): In function `backend_erase_config_section':
> /usr/include/c++/3.3.3/bits/stl_tree.h:491: undefined reference to `sword::SWBuf::SWBuf[in-charge](sword::SWBuf const&, unsigned long)'
> 
> (.... semi-infinite list of similar "undefined reference" errors redacted ....)
> 
> any suggestions?
-- 



More information about the sword-devel mailing list