找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 34640|回复: 91

折腾OSCAM之二---打包成ipk安装包

  [复制链接]
本帖最后由 兔巴哥 于 2019-11-7 17:23 编辑

先放出安装包,这是我前一个帖子OSCAM交叉编译详细步骤,参考论坛上各位高手的经验(一并致谢!),以及网上的介绍,终于搞定oscam的ipk打包,过段时间放出教程。下一步再打算学习怎么移植到安卓设备上。适当收点辛苦费哈!



折腾OSCAM之二---打包成ipk安装包



一、配置编译环境
1.安装Ubuntu系统。这个网上一大把,物理机和虚拟机皆可,我自己是安装的64位虚拟机。
2.下载openwrt源代码到用户主目录下,比如openwrt。
配置好的编译环境如图:


请注意其中红框中的目录,接下来的操作会用到其中的一个。


二、准备编译oscam
上图中的2个目录,
package是openwrt系统自带的软件包目录,feeds则是俗称的第三方软件包目录。我们的编译操作使用其中的任何一个目录都是可以的,但是从规范出发,我是选择的feeds目录。
1.还是从规范出发,在feeds...目录下的utils目录中新建一个oscam目录,把编译时要使用的Makefile文件复制到这个目录中,如图:

这个Makefile内容如下。关于Makefile比较详细的写法可以参考创建软件包
  1. include $(TOPDIR)/rules.mk

  2. PKG_BRANCH:=trunk
  3. PKG_SOURCE_URL:=http://www.streamboard.tv/svn/oscam/trunk
  4. PKG_REV:=$(shell LC_ALL=C svn info ${PKG_SOURCE_URL} | sed -ne's/^Last Changed Rev: //p') #编译时获取最新源代码
  5. #PKG_REV:=10940 #编译指定版本

  6. PKG_NAME:=oscam
  7. PKG_VERSION:=1.20-svn-r$(PKG_REV)
  8. PKG_RELEASE:=MT7620

  9. PKG_SOURCE_PROTO:=svn
  10. PKG_SOURCE_VERSION:=$(PKG_REV)
  11. PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
  12. PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.bz2

  13. PKG_MAINTAINER:=OSCam developers <unknown>
  14. PKG_LICENSE:=GPL-3.0
  15. PKG_LICENSE_FILES:=COPYING

  16. PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)

  17. PKG_BUILD_PARALLEL:=1
  18. PKG_USE_MIPS16:=0

  19. PKG_BUILD_DEPENDS:=+libopenssl +libusb-1.0 +pcsc-lite

  20. include $(INCLUDE_DIR)/package.mk

  21. define Package/oscam
  22.   SECTION:=utils #编译前在openwrt的图形配置界面中的位置
  23.   CATEGORY:=Utilities #同上
  24.   DEPENDS:=+libopenssl +libusb-1.0 +kmod-usb-serial-ftdi +libpcsclite #这里的依赖关系在编译时会自动选中,在安装时会检查依赖
  25.   TITLE:=OSCam is an Open Source Conditional Access Module software #图形配置界面中的名称
  26.   URL:=http://www.streamboard.tv/oscam/
  27.   MAINTAINER:=OSCam developers <WF>
  28. endef

  29. define Package/oscam/description #这个软件包的说明
  30.   OSCam is an Open Source Conditional Access Module software
  31. endef

  32. CONFIGURE_ARGS += --with-ssl=openssl

  33. MAKE_FLAGS += \ #编译oscam以及相关的依赖包
  34. CROSS=$(TOOLCHAIN_DIR)/bin/$(TARGET_CROSS) \
  35. CROSS_DIR=$(TOOLCHAIN_DIR)/bin/ \
  36. $(TARGET_CONFIGURE_OPTS) \
  37. CFLAGS="$(TARGET_CFLAGS) $(FPIC) $(TARGET_CPPFLAGS)" \
  38. LDFLAGS="$(TARGET_LDFLAGS)" \
  39. OSCAM_BIN=Distribution/oscam \
  40. SVN_REV=$(PKG_REV) \
  41. CONF_DIR=/etc/oscam \
  42. USE_LIBCRYPTO=1 \
  43. USE_LIBUSB=1 \
  44. USE_PCSC=1 \ #如果不需要这种读卡器就注释掉,以此类推
  45. USE_SSL=1

  46. define Package/oscam/conffiles #卸载和重新安装时需要保留的文件
  47. /etc/oscam/oscam.conf
  48. /etc/oscam/oscam.user
  49. /etc/oscam/oscam.server
  50. /etc/oscam/oscam.srvid
  51. endef

  52. define Package/oscam/install
  53. $(INSTALL_DIR) $(1)/etc/init.d #复制开机启动脚本文件oscam。$(1)表示路由器的根目录
  54. $(INSTALL_BIN) ./files/oscam.init $(1)/etc/init.d/oscam

  55. #$(INSTALL_DIR) $(1)/etc/rc.d #确保开机启动脚本起作用
  56. #$(INSTALL_BIN) ./files/S99oscam $(1)/etc/rc.d/

  57. $(INSTALL_DIR) $(1)/usr/bin #复制编译好的主程序
  58. $(INSTALL_BIN) $(PKG_BUILD_DIR)/Distribution/oscam $(1)/usr/bin/oscam

  59. $(INSTALL_DIR) $(1)/etc/oscam #新建oscam目录并复制配置文件
  60. $(INSTALL_BIN) ./files/oscam/* $(1)/etc/oscam/

  61. endef

  62. define Package/$(PKG_NAME)/prerm #这以下是安装前、后的处理过程,不配置则无法卸载
  63. #!/bin/sh
  64. # if run within buildroot exit
  65. [ -n "${IPKG_INSTROOT}" ] && exit 0

  66. # stop running scripts
  67. /etc/init.d/oscam disable
  68. /etc/init.d/oscam stop

  69. exit 0
  70. endef

  71. $(eval $(call BuildPackage,oscam))
复制代码

2.在
oscam目录下新建一个files目录,把oscam.init和S99oscam复制到这里;再在files目录下新建一个oscam目录,并把配置文件复制到这里,如图:


其中oscam.init和S99oscam的内容是相同的,如下:
  1. #!/bin/sh /etc/rc.common
  2. # Copyright (C) 2011 OpenWrt.org
  3. # This is free software, licensed under the GNU General Public License v2.
  4. # See /LICENSE for more information.
  5. #


  6. START=99


  7. start() {
  8. /usr/bin/oscam -b -u #-u支持中文
  9. echo "runing!"
  10. }

  11. stop() {
  12. killall oscam
  13. killall -9 oscam
  14. echo "stop!"
  15. }
复制代码

三、编译OSCAM
以上的准备工作做完后,现在就可以正式开始编译oscam并打包成ipk包了。

打开Ubuntu的终端窗口进入openwrt目录,输入make menuconfig打开openwrt的图形配置界面,先在这里选择你要编译哪种芯片的oscam,如图:
按你自己路由器的cpu进行选择吧。
拉到下面的进入,找到oscam按空格键选中为M,其他都不用动,保持默认就好。然后保存、退出图形配置界面


生成oscam的ipk包有2种方法:

1.
单独编译oscam包
输入make package/oscam/compile V=s这种方法最快,因为只编译并生成oscam以及相关的依赖包,大约10分钟左右就可以完成。

2.编译oscam和系统默认选中的所有包
输入make V=s
如果你的编译环境是全新的,则这个过程相当漫长,可能需要几个小时 。因为编译过程中会实时从网上下载所有dl文件,稍微偷懒一点的方法是预先把dl文件下载到openwrt目录下的dl目录中......

以上
2种方法能否成功的前提是你的一、二部分没有错误。

四 、最终结果和一点经验

1.编译过程中系统会从网上下载特定版本的oscam源代码并以压缩文档的格式保存在
openwrt目录下的dl目录中

并同时解压到编译目录下,下次编译时如果存在所需版本的dl文件,则不再下载而是直接解压编译

编译完成后,在下图所示的目录中会生成相应的ipk 包:


2.把ipk通过WinSCP复制到路由器的tmp目录下进行安装并启动oscam

如果不出意外,oscam应该就已经启动了。

3.然后浏览器中输入ip:8888

如果你是用的360浏览器,请使用极速模式,不要使用兼容模式,否则很悲哀的。ie不存在这个问题


4.注意,最后生成的oscam安装包默认是不支持camd33和ip6的,如果需要支持,则要预先在dl目录下的oscam压缩文件中打开config.h进行修改,如图:

去掉其中的双斜杠再打包回去进行编译。如此大功告成!


五、在路由器上安装oscam时的注意事项
2种安装方法:1、安装前先配置好路由器的软件源,然后再安装opkg install /tmp/oscam.ipk
2、或者是采用强制安装方法:opkg install /tmp/oscam.ipk --force-depends

2种安装方法都需要确保系统中有kmod-usb-serial和kmod-usb-ohci以及相应的读卡器驱动(如kmod-usb-serial-pl2303),oscam要正常工作,还需要系统里有libpthread这个软件包,一般都集成得有。
可以先采用第一种方法,如果软件源正确(链接地址和版本都没有问题),那么在安装oscam时会自动从网上下载相关的软件包(包括必须的和不是必须的-比如PCSC驱动)并安装。如果安装时提示缺少的不是关键软件-比如你不使用PCSC读卡器,则可以采用第二种方法。


附:软件源信息(PandoraBox-潘多拉)

dest root /
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay
arch all 100
arch noarch 200
arch ralink 300
arch ramips 400
arch ramips_24kec 500

--------------------------------------------------------------------------

src/gz r3_base http://downloads.openwrt.org.cn/PandoraBox/ralink/packages/base
src/gz r3_management http://downloads.openwrt.org.cn/PandoraBox/ralink/packages/management
src/gz r3_oldpackages http://downloads.openwrt.org.cn/PandoraBox/ralink/packages/oldpackages
src/gz r3_packages http://downloads.openwrt.org.cn/PandoraBox/ralink/packages/packages
src/gz r3_routing http://downloads.openwrt.org.cn/PandoraBox/ralink/packages/routing
src/gz r3_telephony http://downloads.openwrt.org.cn/PandoraBox/ralink/packages/telephony

写在后面:
这个帖子中的
Makefile是我参考了论坛中各位高手的经验以及网上的零碎资料,然后东拼西凑出来的,其中肯定还有很多的不足之处,希望各位能够给与补充并完善之。
比如现在就存在图中的问题:就是在这里无法选择<*>把oscam集成进固件中,不知道是哪里的问题!而openwrt-dreambox系统在编译时就可以随意选择,希望有知道的不吝指教,本人在此先行谢过!!!
本文使用到的文件

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
来自手机 | 显示全部楼层
这不是要就有了吗?

点评

是啊,如果没有你们的指点,不知道还要摸索到什候!感谢你们啦!  详情 回复 发表于 2016-3-15 19:34
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

账号连接后超时关闭 账号是好的

点评

我自己试下来几个小时都没有问题的。我是y1s转给dm800和泰信的……  详情 回复 发表于 2016-3-15 19:37
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 来自手机 | 显示全部楼层
haxc 发表于 2016-3-15 16:24
这不是要就有了吗?

是啊,如果没有你们的指点,不知道还要摸索到什候!感谢你们啦!

点评

2016/07/07 10:00:04 0 s >> OSCam  详情 回复 发表于 2016-7-7 10:01
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 来自手机 | 显示全部楼层
505575853 发表于 2016-3-15 19:33
账号连接后超时关闭 账号是好的

我自己试下来几个小时都没有问题的。我是y1s转给dm800和泰信的……

评分

参与人数 1恩山币 +1 收起 理由
5055*** + 1 额日志不滚动以为没连上感谢楼主

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

兔巴哥  
ar71xx 搞个谢谢

点评

等两天放出教程,自己就可以diy啦。  详情 回复 发表于 2016-3-15 21:04
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

这包好多错误啊读到cam信息不显示 日志内容不会滚动 账号开关按钮无效 但是感谢楼主的oscam

点评

那是你的浏览器有问题吧。  详情 回复 发表于 2016-3-15 20:58
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

支持楼主辛苦的成果!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 来自手机 | 显示全部楼层
505575853 发表于 2016-3-15 20:00
这包好多错误啊读到cam信息不显示 日志内容不会滚动 账号开关按钮无效 但是感谢楼主的oscam

那是你的浏览器有问题吧。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 来自手机 | 显示全部楼层
tianmy1991 发表于 2016-3-15 19:46
兔巴哥  
ar71xx 搞个谢谢

等两天放出教程,自己就可以diy啦。

点评

谢谢大师  详情 回复 发表于 2016-3-16 07:39
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

兔巴哥 发表于 2016-3-15 21:04
等两天放出教程,自己就可以diy啦。

谢谢大师
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

请教,oscam一般直接在DM机器上运行,现在弄到路由器上,有什么区别?

点评

读卡、转发与读卡、收看、转发的区别  详情 回复 发表于 2016-3-16 10:42
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
LL2016 发表于 2016-3-16 08:13
请教,oscam一般直接在DM机器上运行,现在弄到路由器上,有什么区别?

读卡、转发与读卡、收看、转发的区别
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

么么,兔巴哥!!!
等你的BCM系列,最好是上教程,并附带附件。。。省的QQ上问你要了。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

能上传个DM用的OSCAM吗

点评

广明星论坛就有啊,各种oscam。  详情 回复 发表于 2016-3-17 00:11
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-27 18:04

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表