我编写了一个Python 3 LIRC扩展,因为 pylirc 不适用于 Python 3。我正在尝试将它打包到一个 Debian 包中,并且已经成功地创建了包python3-lirc_1.2.0-1_all.deb
和python-lirc_1.2.0-1_all.deb
. 软件包安装良好,但仅适用于编译它们的特定架构。
所以python3-lirc_1.2.0-1_all.deb
当它在我的笔记本电脑上编译时可以在我的笔记本电脑上python3-lirc_1.2.0-1_all.deb
工作,当它在我的 Raspberry Pi 上编译时可以在我的 Raspberry Pi 上工作,但每个包都依赖于架构。
我可以在分发包之前重命名它们:
python3-lirc_1.2.0-1_all.deb -> python3-lirc_1.2.0-1_amd64.deb
python3-lirc_1.2.0-1_all.deb -> python3-lirc_1.2.0-1_armhf.deb
但这似乎不是正确的方法。我需要设置的 debian/{control,rules} 文件中是否有任何标志?通常这是自动处理的。
这是我的 debian/控制文件:
Source: python-lirc
Maintainer: Thomas Preston <thomasmarkpreston@gmail.com>
Section: python
Priority: optional
Build-Depends: python (>= 2.6.6-3),
debhelper (>= 7),
python3,
python3-setuptools,
liblircclient-dev,
cython
Standards-Version: 3.9.1
X-Python-Version: >= 2.6
X-Python3-Version: >= 3.2
Homepage: https://github.com/tompreston/python-lirc
Package: python-lirc
Architecture: all
Depends: ${misc:Depends}, ${python:Depends}, lirc
Description: Python module for creating LIRC clients.
This Python module allows you to retrieve commands from the LIRC
server.
Package: python3-lirc
Architecture: all
Depends: ${misc:Depends}, ${python3:Depends}, lirc
Description: Python 3 module for creating LIRC clients.
This Python 3 module allows you to retrieve commands from the LIRC
server.
这是我的 debian/rules 文件:
#!/usr/bin/make -f
%:
dh $@ --with python2,python3 --buildsystem=python_distutils
override_dh_auto_build:
cython -a lirc/lirc.pyx;
python2.6 setup.py build;
python2.7 setup.py build;
cython -3 -a lirc/lirc.pyx;
python3 setup.py build;
override_dh_auto_install:
python2.6 setup.py install --root=$(CURDIR)/debian/tmp --install-layout=deb;
python2.7 setup.py install --root=$(CURDIR)/debian/tmp --install-layout=deb;
python3 setup.py install --root=$(CURDIR)/debian/tmp --install-layout=deb;