web-dev-qa-db-ja.com

armhfのQtパッケージをsbuildでクロスコンパイルするにはどうすればよいですか?

Armhf用にクロスコンパイルしたいQtアプリケーションがあります。次のコマンドを使用して、sbuild chrootを設定しました。

mk-sbuild --target armhf trusty

しかし、debuild -Sを実行してからパッケージをビルドしようとすると、次のエラーが発生します。

$ sbuild --build=AMD64 --Host=armhf -d trusty myapp_1.0.dsc

...

   dh_auto_configure -a
qmake: could not find a Qt installation of ''
dh_auto_configure: qmake -makefile -nocache QMAKE_CFLAGS_RELEASE=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 QMAKE_CFLAGS_DEBUG=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 QMAKE_CXXFLAGS_RELEASE=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 QMAKE_CXXFLAGS_DEBUG=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 QMAKE_LFLAGS_RELEASE=-Wl,-Bsymbolic-functions -Wl,-z,relro QMAKE_LFLAGS_DEBUG=-Wl,-Bsymbolic-functions -Wl,-z,relro QMAKE_STRIP=: PREFIX=/usr returned exit code 1
make: *** [build-Arch] Error 2
dpkg-buildpackage: error: debian/rules build-Arch gave error exit status 2

何が悪いのですか?

1
Nathan Osman

Ubuntu SDKのarmhf chrootsでも発生している「chrootへのqmakeのクロス」というバグがあります。

https://bugs.launchpad.net/ubuntu/+source/click/+bug/1393697

そこで、qmakeではなくCMakeに切り替えました。

1
Velkan