Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] How to rebuild following .config change?
@ 2009-06-23 20:05 Grant Edwards
  2009-06-23 20:14 ` Bernhard Reutner-Fischer
  2009-06-24  7:13 ` Thomas Petazzoni
  0 siblings, 2 replies; 4+ messages in thread
From: Grant Edwards @ 2009-06-23 20:05 UTC (permalink / raw)
  To: buildroot

Several times in the past week, I've gotten things terminally
broken: where it's impossible to build after doing a "make
menuconfig" or "make uclibc-menuconfg" and changing a
configuration setting.

It appears that you can't reliably make a configuration change
and then do a "make".

Doing a "make clean" doesn't appear to be enough either, since
often a "make" still fails or doesn't rebuild certain things.

You can do a "distclean", but then all the sources get
re-downloaded and toolchains re-built -- which takes a _long_
time.

How does one re-build appropriate packages after a
configuration change.

-- 
Grant Edwards                   grante             Yow! If elected, Zippy
                                  at               pledges to each and every
                               visi.com            American a 55-year-old
                                                   houseboy ...

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] How to rebuild following .config change?
  2009-06-23 20:05 [Buildroot] How to rebuild following .config change? Grant Edwards
@ 2009-06-23 20:14 ` Bernhard Reutner-Fischer
  2009-06-24  7:13 ` Thomas Petazzoni
  1 sibling, 0 replies; 4+ messages in thread
From: Bernhard Reutner-Fischer @ 2009-06-23 20:14 UTC (permalink / raw)
  To: buildroot

On Tue, Jun 23, 2009 at 08:05:06PM +0000, Grant Edwards wrote:
>Several times in the past week, I've gotten things terminally
>broken: where it's impossible to build after doing a "make
>menuconfig" or "make uclibc-menuconfg" and changing a
>configuration setting.
>
>It appears that you can't reliably make a configuration change
>and then do a "make".
>
>Doing a "make clean" doesn't appear to be enough either, since
>often a "make" still fails or doesn't rebuild certain things.
>
>You can do a "distclean", but then all the sources get
>re-downloaded and toolchains re-built -- which takes a _long_
>time.

if you set your DL_DIR != down then they are not wiped.
Alternatively you can rm -rf ${yourarch}_*, e.g.
rm -rf powerpc_nofpu_nommu_*
(or maybe not, not sure if Peter picked that convenience up already).
>
>How does one re-build appropriate packages after a
>configuration change.

My tree (search archives) has quite some improvements in this area,
perhaps you want to distill those out and submit it for review and
inclusion?

TIA and cheers,

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] How to rebuild following .config change?
  2009-06-23 20:05 [Buildroot] How to rebuild following .config change? Grant Edwards
  2009-06-23 20:14 ` Bernhard Reutner-Fischer
@ 2009-06-24  7:13 ` Thomas Petazzoni
  2009-06-25 19:02   ` Grant Edwards
  1 sibling, 1 reply; 4+ messages in thread
From: Thomas Petazzoni @ 2009-06-24  7:13 UTC (permalink / raw)
  To: buildroot

Le Tue, 23 Jun 2009 20:05:06 +0000 (UTC),
Grant Edwards <grant.b.edwards@gmail.com> a ?crit :

> You can do a "distclean", but then all the sources get
> re-downloaded and toolchains re-built -- which takes a _long_
> time.

It's true that Buildroot doesn't handle partial rebuilds very well.
This is something we should improve.

In the mean time, here is how I use Buildroot :

 * Set the BUILDROOT_DL_DIR environment variable, so that downloads are
   made to a completely separate directory from the Buildroot source
   and Buildroot build directories ;

 * Use an external toolchain (such as one generated by Crosstool-NG,
   for example). This way, the toolchain generation process is
   independent from Buildroot, and you don't need to re-generate the
   toolchain everytime you want to recompile the root filesystem from
   scratch ;

 * Use out-of-tree generation in Buildroot with "make
   O=/path/to/somewhere". This way, all generated files are in a
   separate directory, which makes it easy to clean everything.

Sincerly,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] How to rebuild following .config change?
  2009-06-24  7:13 ` Thomas Petazzoni
@ 2009-06-25 19:02   ` Grant Edwards
  0 siblings, 0 replies; 4+ messages in thread
From: Grant Edwards @ 2009-06-25 19:02 UTC (permalink / raw)
  To: buildroot

On 2009-06-24, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote:
> Le Tue, 23 Jun 2009 20:05:06 +0000 (UTC),
> Grant Edwards <grant.b.edwards@gmail.com> a ??crit :
>
>> You can do a "distclean", but then all the sources get
>> re-downloaded and toolchains re-built -- which takes a _long_
>> time.
>
> It's true that Buildroot doesn't handle partial rebuilds very well.
> This is something we should improve.

Unfortunately, it's a very difficult problem -- especially for
something built up of several sort-of-independant subsystems.
It's pretty hard to automatically detect what depends on what
with 100% accuracy.

> In the mean time, here is how I use Buildroot :
>
>  * Set the BUILDROOT_DL_DIR environment variable, so that downloads are
>    made to a completely separate directory from the Buildroot source
>    and Buildroot build directories ;
>
>  * Use an external toolchain (such as one generated by Crosstool-NG,
>    for example). This way, the toolchain generation process is
>    independent from Buildroot, and you don't need to re-generate the
>    toolchain everytime you want to recompile the root filesystem from
>    scratch ;
>
>  * Use out-of-tree generation in Buildroot with "make
>    O=/path/to/somewhere". This way, all generated files are in a
>    separate directory, which makes it easy to clean everything.

Thanks, those are indeed valuable tips.

-- 
Grant Edwards                   grante             Yow! I am having FUN...
                                  at               I wonder if it's NET FUN or
                               visi.com            GROSS FUN?

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-06-25 19:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-23 20:05 [Buildroot] How to rebuild following .config change? Grant Edwards
2009-06-23 20:14 ` Bernhard Reutner-Fischer
2009-06-24  7:13 ` Thomas Petazzoni
2009-06-25 19:02   ` Grant Edwards

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox