Menu

#631 Build using separate object directory fails

v2.4.x
closed-fixed
None
Buildsystem
2016-12-03
2015-03-17
No

(at least I think that is what causes it).

With the gnu autotools, you can keep your source tree clean by creating some fresh directory, cd-ing into it, and calling ../some/where/configure. The resulting collection of Makefiles will build the sources located at ../some/where without messing up the source directories. This worked well with VICE before (apart from one small detail I papered over).

This is very handy (pretty much required) if you try keeping builds with various configure options, such as builds for xaw, gnome, gnome-threads, and sdl.

In this case, I have such a build, which called

$ ../vice/configure --enable-arch=no --without-oss --enable-fullscreen --enable-memmap --enable-ethernet --enable-static-ffmpeg

(and some environment variables to make configure find stuff it doesn't find by itself)
(--enable-shared-mpeg ends in the same way)

The configure phase appears to work well, including the build of ffmpeg.

The resulting build fails with

No rule to make target '../../../../vice/src/lib/libffmpeg/Makefile.am',
needed by '../../../../vice/src/lib/libffmpeg/Makefile.in'.

like this:

Making all in arch
Making all in unix
Making all in gui
Making all in hpux
Making all in minix
Making all in next_open_rhap
Making all in qnx4
Making all in qnx6
Making all in sco_sol
Making all in skyos
Making all in icons
Making all in x11
Making all in xaw
Making all in widgets
../../../../../../vice/src/arch/unix/x11/xaw/uimenu.c: In function 'ui_add_items_to_shell':
../../../../../../vice/src/arch/unix/x11/xaw/uimenu.c:946:71: warning: cast to pointer from integer of different size
Making all in lib/p64
Making all in platform
gmake[4]: *** No rule to make target '../../../../vice/src/lib/libffmpeg/Makefile.am', needed by '../../../../vice/src/lib/libffmpeg/Makefile.in'.  Stop.
Makefile:3228: recipe for target 'libffmpeg' failed
gmake[3]: *** [libffmpeg] Error 2
Makefile:1897: recipe for target 'all-recursive' failed
gmake[2]: *** [all-recursive] Error 1
Makefile:1651: recipe for target 'all' failed
gmake[1]: *** [all] Error 2
Makefile:565: recipe for target 'all-recursive' failed
gmake: *** [all-recursive] Error 1
murthe:.../vice-emu/trunk/build-xaw

For the moment this is blocking bug #624 [bugs:#624]

Related

Bugs: #624

Discussion

  • gpz

    gpz - 2015-03-18
    • assigned_to: Marco van den Heuvel
    • Version: v2.4 --> v2.4.x
    • Category: --> Buildsystem
     
  • compyx

    compyx - 2016-10-29
    • status: open --> pending-fixed
     
  • compyx

    compyx - 2016-10-29

    This has been fixed some time ago. I use ouf-of-tree building a lot when testing bugfixes or new code using Xaw, Gtk2/Gtk3 and SDL1/SDl2 on both Linux and BSD, both with and without ffmpeg.

     
  • compyx

    compyx - 2016-12-03
    • status: pending-fixed --> closed-fixed
     

Log in to post a comment.