baffled by versions of "dtc" and which one should be used

i'm currently puttering with one of rcn's build processes
(documented at and
i'm kind of confused as to which version of "dtc" should be available
to my build.

  rcn's instructions refer to upgrading the device-tree-compiler
package, which is fine except that i know dtc comes as part of the
kernel source tree under scripts/dtc, and i assumed that, if i have a
really current kernel source tree, i should be safe.

  but if i look under the current kernel tree, the dtc version_gen.h
file contains the string:

#define DTC_VERSION "DTC 1.2.0-g37c0b6a0"

which seems astonishingly old, does it not?

  also, i tried a couple tests on my ubuntu 13.04 and fedora 19
systems. first, on ubuntu, i simply removed the device-tree-compiler
package, assuming dtc would then be picked up from the kernel source
tree used by rcn's build process (after some patching), and that
seemed to work fine. so is it safe to assume that, on ubuntu 13.04, i
no longer need to install the device-tree-compiler package?

  fedora 19 is more of a problem since there is a "dtc" package, but
it's listed as a dependency of the uboot-tools package so one can't
remove it independently, so no testing there.

  anyway, i'm just trying to clarify the state of "dtc" these days
with respect to wanting to build for a BBB and wanting all the newest


My understanding was that the dtc used by the BBB has patches to support the device tree fragments (.dtbo) files that haven’t been mainlined yet?

Is that no longer the case?

it probably is, i just want to make sure i understand the priority
here. i'm assuming that the .dtb files built by a regular kernel build
use the older dtc compiler from scripts/dtc, and for regular .dtb
files, that older compiler works fine.

  however, if you want to (manually) create your own .dtbo files, you
need to use a newer dtc compiler with the appropriate patches. but the
older dtc compiler can still be used for the kernel build.

  q: even if i install a newer dtc in, say, /usr/local/bin, would a
kernel build still use the older, internal version?