Re: trauma spliting source into multiple files and applying autotools



On Tue, 2009-07-21 at 12:20 +1000, Mick wrote:
On Mon, 20 Jul 2009 12:17:32 -0400
Braden McDaniel <braden endoframe com> wrote:

On Mon, 2009-07-20 at 11:22 +1000, Mick wrote:

[snip]

compiling with:
gcc -Wall -g -o tutor main.c -export-dynamic `pkg-config --cflags
--libs gtk+-2.0` produces an executable that runs just as expected.

When I split the .c file into the main function as main.c and the
'callbacks' into callback.c and create the Makefile.am,
configure.in, etc compilation runs without error and the exec runs
but hangs after displaying: Gtk-CRITICAL **: gtk_widget_show:
assertion `GTK_IS_WIDGET (widget)' failed

on:
 gtk_widget_show(chat_window);

Thanks for your help and critique, I've taken your advice on board:

You need to add -export-dynamic to AM_LDFLAGS in Makefile.am.
src/Makefile.am
<code>
bin_PROGRAMS = nuchimp

nuchimp_SOURCES = \
      callback.c callback.h \
      main.c main.h 

AM_CPPFLAGS $(GTK_CFLAGS)
AM_LDFLAGS -export-dynamic

You're missing some '=' signs here; e.g.:

        AM_CPPFLAGS = $(GTK_CFLAGS)

That's probably the source of your error.

I removed several paragraphs that defined install/uninstall after
getting this error but it remains.

Looking at Automake's output can be very educational; but unless you
really know what you're doing, you probably shouldn't bother editing it.
If the generated Makefile has errors, it's almost certainly because
there were errors in the input.

-- 
Braden McDaniel <braden endoframe com>




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