【问题标题】:What's the proper way to build a multi-arch Debian package?构建多架构 Debian 软件包的正确方法是什么?
【发布时间】:2016-04-15 03:34:43
【问题描述】:
每次我尝试构建 bluez 时都会收到错误消息:
dh_install: libbluetooth3 missing files (usr/lib/*/libbluetooth.so.3), aborting
查看我自己的路径,我看到当前安装的库版本位于:
/usr/lib/x86_64-linux-gnu/libbluetooth.so.3
但构建脚本 (fakeroot debian/rules binary) 不断将输出放入 usr/lib/libbluetooth.so.3。
【问题讨论】:
标签:
linux
build
debian
deb
【解决方案1】:
要指定正确的文件夹,您需要声明环境变量DEB_HOST_MULTIARCH 并使用binary-arch 目标(尽管binary 可能就足够了,因为文档建议binary 调用binary-arch 和binary-indep):
DEB_HOST_MULTIARCH=x86_64-linux-gnu debian/rules binary-arch
该值是根据libbluetooth.so.3 (/usr/lib/x86_64-linux-gnu/libbluetooth.so.3) 的当前安装路径选择的,如果 Debian您正在运行的发行版将 64 位二进制文件放在其他地方。