【问题标题】:Get dvb_hdhomerun to work with debian让 dvb_hdhomerun 与 debian 一起工作
【发布时间】:2013-09-05 05:45:07
【问题描述】:

我正在尝试让 Silicon Dust 网络 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.

我可以构建模块,但是当我尝试使用 modprobe 加载它时出现以下错误

ERROR: could not insert 'dvb_hdhomerun': Exec format error

dmesg 说

[252722.865357] dvb_hdhomerun_core: disagrees about version of symbol module_layout

modinfo 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)

有什么想法吗?

【问题讨论】:

    标签: module linux-kernel kernel-module


    【解决方案1】:

    虽然接受的答案确实有效。这并不理想,因为您最终会得到:

    • 非托管软件
    • 糟糕的初始化脚本
    • 没有系统支持
    • 不支持内核升级

    自从我重新安装我的家庭服务器后,我决定着手修复 dkms dpkg 混乱。

    https://github.com/h0tw1r3/dvbhdhomerun

    Repo 有用于构建解决上述问题的 debian 软件包的源代码。

    和原作者一样——我不提供二进制包,但创建它们很容易。只需关注debian maintainers build guide 的前两部分即可。

    【讨论】:

      【解决方案2】:

      在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
      

      这似乎有效:)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-12-13
        • 2016-10-06
        • 2011-11-30
        • 2014-02-19
        • 2011-09-03
        • 2013-05-01
        • 2018-05-30
        • 2014-03-17
        相关资源
        最近更新 更多