<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi Josua,<div class=""><br class=""><div><blockquote type="cite" class=""><div class="">Am 26.03.2018 um 15:48 schrieb Josua Mayer <<a href="mailto:josua.mayer@jm0.eu" class="">josua.mayer@jm0.eu</a>>:</div><br class="Apple-interchange-newline"><div class="">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252" class="">
<div text="#000000" bgcolor="#FFFFFF" class=""><p class="">Hi Nikolaus,</p><p class="">I came across a similar question a year ago, but I had to find
some time for digging it out.<br class="">
So back then I wanted to use <span class="blob-code-inner"><span class="pl-s"><span class="pl-smi">DEB_TARGET_GNU_TYPE to
identify the long compiler name, arm-linux-gnueabihf.<br class="">
</span></span></span></p><p class=""><span class="blob-code-inner"><span class="pl-s"><span class="pl-smi">Now back in Wheezy, we only had BUILD_* and
HOST_*. Quoting the Debian Wiki Page on cross-build
packaging [1]:<br class="">
"</span></span></span><span class="blob-code-inner"><span class="pl-s"><span class="pl-smi">HOST is the machine we are
building for"<br class="">
"</span></span></span>BUILD is the machine we are building
on"</p><p class="">So HOST_* is what we want to use here!</p><p class="">I don't fully understand what TARGET means. Reading in the gcc
manual [2] about build, host and target I understand this:<br class="">
We are building software on a machine (BUILD), to execute on
another machine (HOST). And then we can have a TARGET machine that
our newly built software may produce code for, if it is a
compiler, assembler or otherwise generating tool.</p><p class="">So I conclude that we should be using HOST, not only on Wheezy,
but also on later releases as this is most accurate to our
use-case.<br class=""></p></div></div></blockquote><div>It seems to work now!</div><div><br class=""></div><div><a href="http://download.goldelico.com/letux-debian-rootfs/debian/dists/wheezy/main/" class="">http://download.goldelico.com/letux-debian-rootfs/debian/dists/wheezy/main/</a></div><div><br class=""></div><div>vs.</div><div><br class=""></div><div><a href="http://download.goldelico.com/letux-debian-rootfs/debian/dists/jessie/main/" class="">http://download.goldelico.com/letux-debian-rootfs/debian/dists/jessie/main/</a></div><div><br class=""></div><div>(watch for qt-embedded_4.8.7.*.* in binary-armhf/ or sources/)</div><div><br class=""></div><div>Now up to the community to make use of this result!</div><div><br class=""></div><div>BR and thanks,</div><div>Nikolaus</div><div><br class=""></div><blockquote type="cite" class=""><div class=""><div text="#000000" bgcolor="#FFFFFF" class=""><p class="">
</p><p class="">br<br class="">
Josua<br class="">
</p><p class="">[1] <a class="moz-txt-link-freetext" href="https://wiki.debian.org/CrossBuildPackagingGuidelines">https://wiki.debian.org/CrossBuildPackagingGuidelines</a><br class="">
[2]
<a class="moz-txt-link-freetext" href="https://gcc.gnu.org/onlinedocs/gcc-4.0.2/gccint/Configure-Terms.html">https://gcc.gnu.org/onlinedocs/gcc-4.0.2/gccint/Configure-Terms.html</a><br class="">
</p>
<br class="">
<div class="moz-cite-prefix">Am 26.03.2018 um 14:07 schrieb H.
Nikolaus Schaller:<br class="">
</div>
<blockquote type="cite" cite="mid:563EB93C-C8F8-4C6A-802E-2BEA4C9E6FB2@goldelico.com" class="">
<pre wrap="" class="">Hi Jonas,
</pre>
<blockquote type="cite" class="">
<pre wrap="" class="">Am 26.03.2018 um 13:17 schrieb Jonas Smedegaard <a class="moz-txt-link-rfc2396E" href="mailto:jonas@jones.dk"><jonas@jones.dk></a>:
Quoting H. Nikolaus Schaller (2018-03-26 12:43:56)
</pre>
<blockquote type="cite" class="">
<pre wrap="" class="">Hi,
nobody with an idea or knowledge?
BR,
Nikolaus
</pre>
<blockquote type="cite" class="">
<pre wrap="" class="">Am 18.03.2018 um 15:37 schrieb H. Nikolaus Schaller <a class="moz-txt-link-rfc2396E" href="mailto:hns@goldelico.com"><hns@goldelico.com></a>:
Another topic:
I am trying to build it on/for wheezy, but ./mkqtspec.sh fails with:
dpkg-architecture: error: DEB_TARGET_ARCH is not a supported variable name
Jessie reports:
root@letux:# dpkg-architecture
DEB_BUILD_ARCH=armhf
DEB_BUILD_ARCH_BITS=32
DEB_BUILD_ARCH_CPU=arm
DEB_BUILD_ARCH_ENDIAN=little
DEB_BUILD_ARCH_OS=linux
DEB_BUILD_GNU_CPU=arm
DEB_BUILD_GNU_SYSTEM=linux-gnueabihf
DEB_BUILD_GNU_TYPE=arm-linux-gnueabihf
DEB_BUILD_MULTIARCH=arm-linux-gnueabihf
DEB_HOST_ARCH=armhf
DEB_HOST_ARCH_BITS=32
DEB_HOST_ARCH_CPU=arm
DEB_HOST_ARCH_ENDIAN=little
DEB_HOST_ARCH_OS=linux
DEB_HOST_GNU_CPU=arm
DEB_HOST_GNU_SYSTEM=linux-gnueabihf
DEB_HOST_GNU_TYPE=arm-linux-gnueabihf
DEB_HOST_MULTIARCH=arm-linux-gnueabihf
DEB_TARGET_ARCH=armhf
DEB_TARGET_ARCH_BITS=32
DEB_TARGET_ARCH_CPU=arm
DEB_TARGET_ARCH_ENDIAN=little
DEB_TARGET_ARCH_OS=linux
DEB_TARGET_GNU_CPU=arm
DEB_TARGET_GNU_SYSTEM=linux-gnueabihf
DEB_TARGET_GNU_TYPE=arm-linux-gnueabihf
DEB_TARGET_MULTIARCH=arm-linux-gnueabihf
root@letux:#
Wheezy reports:
root@letux:/# dpkg-architecture
DEB_BUILD_ARCH=armhf
DEB_BUILD_ARCH_BITS=32
DEB_BUILD_ARCH_CPU=arm
DEB_BUILD_ARCH_ENDIAN=little
DEB_BUILD_ARCH_OS=linux
DEB_BUILD_GNU_CPU=arm
DEB_BUILD_GNU_SYSTEM=linux-gnueabihf
DEB_BUILD_GNU_TYPE=arm-linux-gnueabihf
DEB_BUILD_MULTIARCH=arm-linux-gnueabihf
DEB_HOST_ARCH=armhf
DEB_HOST_ARCH_BITS=32
DEB_HOST_ARCH_CPU=arm
DEB_HOST_ARCH_ENDIAN=little
DEB_HOST_ARCH_OS=linux
DEB_HOST_GNU_CPU=arm
DEB_HOST_GNU_SYSTEM=linux-gnueabihf
DEB_HOST_GNU_TYPE=arm-linux-gnueabihf
DEB_HOST_MULTIARCH=arm-linux-gnueabihf
root@letux:/#
So can we safely replace DEB_TARGET_ARCH by DEB_BUILD_ARCH
in DEB_TARGET_ARCH=$(dpkg-architecture -qDEB_TARGET_ARCH) ?
</pre>
</blockquote>
</blockquote>
<pre wrap="" class="">"man dpkg-architecture" says:
</pre>
<blockquote type="cite" class="">
<pre wrap="" class="">DEB_BUILD_ARCH
The Debian architecture of the build machine.
</pre>
</blockquote>
</blockquote>
<pre wrap="" class="">ok.
</pre>
<blockquote type="cite" class="">
<pre wrap="" class="">and
</pre>
<blockquote type="cite" class="">
<pre wrap="" class="">DEB_TARGET_ARCH
The Debian architecture of the target machine (since dpkg 1.17.14).
</pre>
</blockquote>
</blockquote>
<pre wrap="" class="">ok. So we can use the same since the build is not a cross-build or anything.
</pre>
<blockquote type="cite" class="">
<pre wrap="" class="">dpkg version in wheezy is too old:
<a class="moz-txt-link-freetext" href="https://packages.debian.org/source/oldoldstable/dpkg">https://packages.debian.org/source/oldoldstable/dpkg</a>
</pre>
</blockquote>
<pre wrap="" class="">Well, for building a package for wheezy it should never be too old...
Only some source code could be too new :)
</pre>
<blockquote type="cite" class="">
<pre wrap="" class="">If build machine is same architecture as target machine, then you can
reuse, else not.
</pre>
</blockquote>
<pre wrap="" class="">So does this mean the following?
* use DEB_TARGET_ARCH if defined
* fall back to DEB_BUILD_ARCH otherwise
I.e. replace it by:
DEB_TARGET_ARCH=$(dpkg-architecture -qDEB_TARGET_ARCH 2>/dev/null)
[ "$DEB_TARGET_ARCH" ] || DEB_TARGET_ARCH=$(dpkg-architecture -qDEB_BUILD_ARCH
BR and thanks,
Nikolaus
</pre>
</blockquote>
<br class="">
</div>
</div></blockquote></div><br class=""></div></body></html>