我想让一个硅尘网络DVB接收器与我的debian机器工作。
我的debian在跑:
uname -a:
Linux myMachine 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1+deb7u1 x86_64 GNU/Linux
lsb_release -a
Distributor ID: Debian
Description: Debian GNU/Linux 7.1 (wheezy)
Release: 7.1
Codename: wheezy我试了很多次,但我最近的尝试如下
apt-get source linux-headers-3.2.0-4-amd64
# I got a folder named linux-3.2.46
cd linux-3.2.46
# vim Makefile, changed SUBLEVEL to 0, and EXTRAVERSION to '-4-amd64'
cp /boot/config-3.2.0-4-amd64 .config
make oldconfig
cp /usr/src/linux-3.2.46/Module.symvers .
make prepare scripts
cd ../dvb_hdhomerun-0.0.15/kernel
vim Makefile, changed KERNEL_DIR to the linux-3.2.46 dir.
make # works fine
make install # works fine.我可以构建模块,但是当我尝试用load探测加载它时,我会得到以下错误
ERROR: could not insert 'dvb_hdhomerun': Exec format error德梅格说
[252722.865357] dvb_hdhomerun_core: disagrees about version of symbol module_layoutmodinfo dvb_hdhomerun说:
filename: /lib/modules/3.2.0-4-amd64/extra/dvb_hdhomerun.ko
version: 0.0.15
license: GPL
description: HDHomeRun Driver
author: Villy Thomsen
version: 0.0.15
license: GPL
description: HDHomeRun driver
author: Villy Thomsen
version: 0.0.15
license: GPL
description: HDHomeRun Driver Core Module
author: Villy Thomsen
srcversion: 94B767B76E32F22F26FE6A2
depends: dvb-core,dvb_hdhomerun_core
vermagic: 3.2.0-4-amd64 SMP mod_unload modversions
parm: adapter_nr:DVB adapter numbers (array of short)modinfo dvb_hdhomerun_core说:
filename: /lib/modules/3.2.0-4-amd64/extra/dvb_hdhomerun_core.ko
version: 0.0.15
license: GPL
description: HDHomeRun Driver Core Module
author: Villy Thomsen
srcversion: B9DACADA733D0C535EAC3E3
depends:
vermagic: 3.2.0-4-amd64 SMP mod_unload modversions
parm: hdhomerun_debug_mask:Mask for debug output
(int)有什么想法吗?
发布于 2013-09-02 08:55:51
在https://sourceforge.net/p/dvbhdhomerun/discussion/1223414/thread/a0772136/找到了一个脚本,这解决了我的问题。
我所做的是
apt-get install linux-source-3.2
unpacked the tar.bz2 file
used that dir as KERNEL_DIR in dvbhdhomerun-0.0.15/kernel/Makefile
used /lib/modules/3.2.0-4-amd64/build/.config as .config file in linux-source-3.2 dir.
used /lib/modules/3.2.0-4-amd64/build/Module.symvers as Module.symvers file in linux-source-3.2 dir.
make KERNEL_VERSION=3.2.0-4-amd64 when compiling the module这似乎奏效了:)
发布于 2014-03-12 19:22:53
虽然被接受的答案确实有效。这并不理想,因为你的结局是:
由于我是重新安装我的家庭服务器,我决定致力于修复dpkg混乱。
https://github.com/h0tw1r3/dvbhdhomerun
Repo提供了构建debian包的源代码,该包可以修复上述问题。
就像最初的作者一样-我不提供二进制包,但很容易创建它们。只需遵循debian维护人员构建指南的前两部分。
https://stackoverflow.com/questions/18567745
复制相似问题