转帖自 https://answers.launchpad.net/ubuntu/+source/qtmultimedia-opensource-src/+question/264619
叉
我不知道如何使用交叉编译器来构建它(在 trusty-amd64 上用于 utopic-armhf):
dpkg-buildpackage -rfakeroot -b -aarmhf
这会产生一些未满足的依赖项:libasound2-dev libgstreamer-plugins-base0.10-dev libgstreamer0.10-dev libpulse-dev libqt5opengl5-dev (>= 5.3.0+dfsg~) qtbase5-dev (>= 5.3.0+dfsg~) qtbase5-private-dev (>= 5.3.0+dfsg~) qtdeclarative5-private-dev (>= 5.3.0~) zlib1g-dev libqt5sql5-sqlite (>= 5.3.0+dfsg~) qttools5-dev-tools (>= 5.3.0~)
我尝试获取 libasound2-dev:armhf 和 libgstreamer-plugins-base0.10-dev:armhf,但两者都与主机包冲突。例如,libasound2-data:armhf 和 libasound2-data 不共存。
chroot 中的交叉
然后我尝试了 amd64 utopic chroot,但无法在其中安装 crossbuild-essential-armhf。trusty-amd64 chroot 也是如此。它给出:crossbuild-essential-armhf:依赖:libc6-dev:armhf 但不会安装,就像这里一样:https://answers.launchpad.net/ubuntu/+source/build-essential/+question/250970 但编辑 sources.list 根本没有改变任何内容。
所以我认为事情不应该是这样的。
根目录
接下来是 armhf chroot。但是 qmake 存在问题:https://bugs.launchpad.net/ubuntu/+source/click/+bug/1393697
构建乌托邦 armhf deb 的正确方法是什么?