[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: trauma spliting source into multiple files and applying autotools
- From: Mick <mickhowe bigpond net au>
- To: gtk-app-devel-list gnome org
- Cc: braden endoframe com
- Subject: Re: trauma spliting source into multiple files and applying autotools
- Date: Tue, 21 Jul 2009 12:20:49 +1000
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
</code>
> > configure.ac
> > <code>
AC_PREREQ([2.63])
AC_INIT([nuchimp], [0.1], [cheifchimp myemail])
AM_INIT_AUTOMAKE
AC_PREFIX_DEFAULT([$HOME])
AC_CONFIG_SRCDIR([config.h.in])
AC_CONFIG_HEADERS([config.h])
# Checks for programs.
AC_PROG_CC
CFLAGS="-Wall -g -O2"
# Checks for libraries.
PKG_CHECK_MODULES([GTK], [gtk+-2.0 >= 2.2])
AC_CONFIG_FILES([Makefile
src/Makefile])
AC_OUTPUT
</code>
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
</code>
> > CLEANFILES = *~
removed
> > DISTCLEANFILES = .deps/*.P
removed
these 2 lines were in a sample I found
top level Makefile.am
<code>
## Process this file with automake to produce Makefile.in
SUBDIRS = src
</code>
I now get a make error:
*** missing separator: stop
pointing to the 2nd line of:
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c > $(distdir).tar.bz2
$(am__remove_distdir)
I removed several paragraphs that defined install/uninstall after
getting this error but it remains.
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]