"make" works. "make distcheck" doesn't.
I am converting some programs I wrote from gtk2 to gtk3, and making some other minor changes on the way.
The particular package that is giving me grief started out as a simple buttonbar to launch preselected programs and then acquired a couple of extra bits of desktop furniture: a mount tool (based on the one in Damn Small Linux) and a trashcan. There are two subdirectories under src: barbarella and accessories. I want to use the same header barbarella.h in both directories but distcheck doesn't allow that, neither with a copy nor with a link. What do I do? |
Quote:
|
Code:
make[3]: Entering directory '/home/data/programming/barbarella/barbarella-4.0.3/barbarella-4.0.3/_build/sub/src/accessories' |
I don't understand what did you do, but based on the error message you need a -I<location of barbarella.h> into that gcc command.
By the way you have a lot of duplicates in it. |
Quote:
In configure.ac? Here's the contents of that file if you're interested: Code:
AC_INIT([barbarella], [4.0.3], [hazel_russman@yahoo.co.uk]) Quote:
|
I think we need to see the Makefile.am files.
|
Quote:
Quote:
Quote:
Code:
$ cat src/accessories/Makefile.am |
Quote:
|
Have you considered doing away with all that autotools complexity and just using a plain old makefile? If it's a small project then it probably isn't worth the pain of dealing with autotools.
Admittedly, I'm in the "cure is worse than the disease" camp when it comes to autotools, so I'm biased. I like "simple" and autotools is anything but. |
Forget it. I've completely screwed it up now. I'm going to start again with the last gtk2 version that definitely builds and I'll do the gtk3 conversion from there. I should be able to remember how I did it!?:scratch:
PS: The edited gtk3 versions of the actual program code files were in geany, so I copied them over to a rescue directory. I can use those for reference. Quote:
|
Quote:
https://www.gnu.org/software/automak...e.html#Headers Quote:
|
OK, now it works. My mistake was to try to have a single header for all three programs. Two of them are simple one-file programs, so they don't need a separate header.
"make distcheck" now works, so the initial query is solved. The current version still loads some library headers multiple times and I don't know why, but it clearly isn't doing any harm. Code:
gcc -DHAVE_CONFIG_H -I. -I../../../../src/accessories -I../.. -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libxml2 -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DICON_DIR=""/home/data/programming/barbarella/barbarella-4.0.3/barbarella-4.0.3/_inst/share/pixmaps"" -g -O2 -MT mounts.o -MD -MP -MF .deps/mounts.Tpo -c -o mounts.o ../../../../src/accessories/mounts.c |
That is not a problem. It is working, just not nice. The construction of gcc commands can be probably simplified, but not that important if otherwise working.
|
Quote:
https://www.gnu.org/software/automak...es-Option.html |
Quote:
|
All times are GMT -5. The time now is 05:28 AM. |