qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] How to I trigger a rebuild?


From: Joachim Durchholz
Subject: Re: [Qemu-devel] How to I trigger a rebuild?
Date: Sun, 14 Apr 2019 21:14:31 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1

Am 14.04.19 um 20:12 schrieb Peter Maydell:
On Sun, 14 Apr 2019 at 17:08, Joachim Durchholz <address@hidden> wrote:

Am 14.04.19 um 03:15 schrieb Max Filippov:
On Sat, Apr 13, 2019 at 8:28 AM Joachim Durchholz <address@hidden> wrote:
I did the usual ./configure; make dance.
Then modified a source file (ui/curses.c), called make again, but didn't
see curses.c recompiled, and the change was indeed ineffective.
make clean; make didn't help either.

Perhaps you don't have CONFIG_CURSES enabled?
Did you call configure with --enable-curses ?

Strange. "make help" tells me that everything is enabled by default if
possible, and I didn't tell configure to do anything specific.

But I find that curses is disabled indeed.
Heh. An explicit --enable-curses tells me it was missing the dev version
of ncurses.

Configure's default behaviour is "enable everything that we can
enable, but don't complain about not enabling optional features
which we can't build (eg because of missing -dev libraries)".
For "insist that foo is built and error out if it can't be done",
use "--enable-foo". For "definitely don't build foo even if we
could", use --disable-foo.

Well, that's what I guessed after the fact... it didn't occur to me that "what's possible" was defined as "what libraries are available".
Now that I know this, I know what to watch out for.

However... even with curses enabled, "make" does not do anything  after
modifying ui/curses.c.
In fact, just "make" tell's me I should have run ./config (WTF I did??),
and "make all"
But after ./configure is recompiles everything... nothing of this is
something that "make" should do, so I'm pretty confused.

This sounds like maybe you got confused somewhere along the line
about whether you'd (re-)run configure or not (or didn't
do a 'make clean' after running configure with the curses
support enabled).

Actually I got confused about where I was building.
I had set up things for an out-of-tree build but accidentally hit "make" in the source tree.

The other thing that might confuse you is that make will try
to spot when it needs to rerun configure and will rerun it
for you.

Oh dear. That didn't happen to me, but I see the trap-in-waiting.

I recommend doing builds only in a separate directory, by the way:
  mkdir build
  (cd build && ../configure [configure args])
  make -C build -j8

Yep, doing that already.

Regards,
Jo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]