oscam android 编译,折腾OSCAM之二-打包成ipk安装包 - OPENWRT专版 - 恩山无线论坛 - Powered by Discuz!...

本帖最后由 兔巴哥 于 2019-11-7 17:23 编辑

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

0cb137c9cd2a091fc74bc165c4b6770e.gif

2016-3-16 03:00 上传

点击文件名下载附件

售价: 4 nb恩山币 [记录]

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

一、配置编译环境

1.安装Ubuntu系统。这个网上一大把,物理机和虚拟机皆可,我自己是安装的64位虚拟机。

2.下载openwrt源代码到用户主目录下,比如openwrt。

配置好的编译环境如图:thread-183512-1-1.html

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

88223dbdd243abda0f9ec520ab574f02.gif

配置好的编译环境.jpg (48.59 KB, 下载次数: 1)

2016-3-18 11:18 上传

二、准备编译oscam

上图中的2个目录,package是openwrt系统自带的软件包目录,feeds则是俗称的第三方软件包目录。我们的编译操作使用其中的任何一个目录都是可以的,但是从规范出发,我是选择的feeds目录。

1.还是从规范出发,在feeds...目录下的utils目录中新建一个oscam目录,把编译时要使用的Makefile文件复制到这个目录中,如图:

88223dbdd243abda0f9ec520ab574f02.gif

oscam目录.jpg (18.48 KB, 下载次数: 1)

2016-3-18 11:20 上传

这个Makefile内容如下。关于Makefile比较详细的写法可以参考创建软件包

include $(TOPDIR)/rules.mk

PKG_BRANCH:=trunk

PKG_SOURCE_URL:=http://www.streamboard.tv/svn/oscam/trunk

PKG_REV:=$(shell LC_ALL=C svn info ${PKG_SOURCE_URL} | sed -ne's/^Last Changed Rev: //p') #编译时获取最新源代码

#PKG_REV:=10940 #编译指定版本

PKG_NAME:=oscam

PKG_VERSION:=1.20-svn-r$(PKG_REV)

PKG_RELEASE:=MT7620

PKG_SOURCE_PROTO:=svn

PKG_SOURCE_VERSION:=$(PKG_REV)

PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)

PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.bz2

PKG_MAINTAINER:=OSCam developers

PKG_LICENSE:=GPL-3.0

PKG_LICENSE_FILES:=COPYING

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

PKG_BUILD_PARALLEL:=1

PKG_USE_MIPS16:=0

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

include $(INCLUDE_DIR)/package.mk

define Package/oscam

SECTION:=utils #编译前在openwrt的图形配置界面中的位置

CATEGORY:=Utilities #同上

DEPENDS:=+libopenssl +libusb-1.0 +kmod-usb-serial-ftdi +libpcsclite #这里的依赖关系在编译时会自动选中,在安装时会检查依赖

TITLE:=OSCam is an Open Source Conditional Access Module software #图形配置界面中的名称

URL:=http://www.streamboard.tv/oscam/

MAINTAINER:=OSCam developers

endef

define Package/oscam/description #这个软件包的说明

OSCam is an Open Source Conditional Access Module software

endef

CONFIGURE_ARGS += --with-ssl=openssl

MAKE_FLAGS += \ #编译oscam以及相关的依赖包

CROSS=$(TOOLCHAIN_DIR)/bin/$(TARGET_CROSS) \

CROSS_DIR=$(TOOLCHAIN_DIR)/bin/ \

$(TARGET_CONFIGURE_OPTS) \

CFLAGS="$(TARGET_CFLAGS) $(FPIC) $(TARGET_CPPFLAGS)" \

LDFLAGS="$(TARGET_LDFLAGS)" \

OSCAM_BIN=Distribution/oscam \

SVN_REV=$(PKG_REV) \

CONF_DIR=/etc/oscam \

USE_LIBCRYPTO=1 \

USE_LIBUSB=1 \

USE_PCSC=1 \ #如果不需要这种读卡器就注释掉,以此类推

USE_SSL=1

define Package/oscam/conffiles #卸载和重新安装时需要保留的文件

/etc/oscam/oscam.conf

/etc/oscam/oscam.user

/etc/oscam/oscam.server

/etc/oscam/oscam.srvid

endef

define Package/oscam/install

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

$(INSTALL_BIN) ./files/oscam.init $(1)/etc/init.d/oscam

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

#$(INSTALL_BIN) ./files/S99oscam $(1)/etc/rc.d/

$(INSTALL_DIR) $(1)/usr/bin #复制编译好的主程序

$(INSTALL_BIN) $(PKG_BUILD_DIR)/Distribution/oscam $(1)/usr/bin/oscam

$(INSTALL_DIR) $(1)/etc/oscam #新建oscam目录并复制配置文件

$(INSTALL_BIN) ./files/oscam/* $(1)/etc/oscam/

endef

define Package/$(PKG_NAME)/prerm #这以下是安装前、后的处理过程,不配置则无法卸载

#!/bin/sh

# if run within buildroot exit

[ -n "${IPKG_INSTROOT}" ] && exit 0

# stop running scripts

/etc/init.d/oscam disable

/etc/init.d/oscam stop

exit 0

endef

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

88223dbdd243abda0f9ec520ab574f02.gif

配置文件等.jpg (33.55 KB, 下载次数: 2)

2016-3-18 11:24 上传

其中oscam.init和S99oscam的内容是相同的,如下:

#!/bin/sh /etc/rc.common

# Copyright (C) 2011 OpenWrt.org

# This is free software, licensed under the GNU General Public License v2.

# See /LICENSE for more information.

#

START=99

start() {

/usr/bin/oscam -b -u #-u支持中文

echo "runing!"

}

stop() {

killall oscam

killall -9 oscam

echo "stop!"

}复制代码

三、编译OSCAM

以上的准备工作做完后,现在就可以正式开始编译oscam并打包成ipk包了。打开Ubuntu的终端窗口

88223dbdd243abda0f9ec520ab574f02.gif

终端窗口.jpg (1.52 KB, 下载次数: 1)

2016-3-18 11:26 上传

进入openwrt目录,输入make menuconfig打开openwrt的图形配置界面,先在这里选择你要编译哪种芯片的oscam,如图:

88223dbdd243abda0f9ec520ab574f02.gif

配置界面1.jpg (25.45 KB, 下载次数: 3)

2016-3-18 11:27 上传

88223dbdd243abda0f9ec520ab574f02.gif

选择cpu.jpg (13.75 KB, 下载次数: 2)

2016-3-18 12:14 上传

按你自己路由器的cpu进行选择吧。

拉到下面的

88223dbdd243abda0f9ec520ab574f02.gif

配置界面2.jpg (1.9 KB, 下载次数: 1)

2016-3-18 11:29 上传

进入,找到oscam按空格键选中为M,其他都不用动,保持默认就好。然后保存、退出图形配置界面

88223dbdd243abda0f9ec520ab574f02.gif

配置界面3.jpg (7.73 KB, 下载次数: 2)

2016-3-18 11:29 上传

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

1.单独编译oscam包

输入make package/oscam/compile V=s

88223dbdd243abda0f9ec520ab574f02.gif

单独编译.jpg (7.87 KB, 下载次数: 2)

2016-3-18 11:31 上传

这种方法最快,因为只编译并生成oscam以及相关的依赖包,大约10分钟左右就可以完成。

2.编译oscam和系统默认选中的所有包输入make V=s

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

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

四 、最终结果和一点经验

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

88223dbdd243abda0f9ec520ab574f02.gif

dl.jpg (18.05 KB, 下载次数: 1)

2016-3-18 11:32 上传

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

88223dbdd243abda0f9ec520ab574f02.gif

解压的编译目录.jpg (31.19 KB, 下载次数: 1)

2016-3-18 11:33 上传

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

88223dbdd243abda0f9ec520ab574f02.gif

ipk包.jpg (24.09 KB, 下载次数: 1)

2016-3-18 11:34 上传

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

88223dbdd243abda0f9ec520ab574f02.gif

安装ipk.jpg (64.18 KB, 下载次数: 2)

2016-3-18 11:37 上传

88223dbdd243abda0f9ec520ab574f02.gif

启动oscam.jpg (16.77 KB, 下载次数: 1)

2016-3-18 11:38 上传

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

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

88223dbdd243abda0f9ec520ab574f02.gif

8888.jpg (24.55 KB, 下载次数: 2)

2016-3-18 11:39 上传

88223dbdd243abda0f9ec520ab574f02.gif

进入oscam.jpg (77.87 KB, 下载次数: 2)

2016-3-18 11:40 上传

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

88223dbdd243abda0f9ec520ab574f02.gif

360.jpg (70.69 KB, 下载次数: 2)

2016-3-18 11:41 上传

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

88223dbdd243abda0f9ec520ab574f02.gif

修改支持.jpg (24.05 KB, 下载次数: 2)

2016-3-18 11:43 上传

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

五、在路由器上安装oscam时的注意事项

有2种安装方法:1、安装前先配置好路由器的软件源,然后再安装opkg install /tmp/oscam.ipk。

2、或者是采用强制安装方法:opkginstall /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

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

写在后面:

这个帖子中的Makefile是我参考了论坛中各位高手的经验以及网上的零碎资料,然后东拼西凑出来的,其中肯定还有很多的不足之处,希望各位能够给与补充并完善之。

比如我现在就存在图中的问题:就是在这里无法选择把oscam集成进固件中,不知道是哪里的问题!而openwrt-dreambox系统在编译时就可以随意选择,希望有知道的不吝指教,本人在此先行谢过!!!

本文使用到的文件

0cb137c9cd2a091fc74bc165c4b6770e.gif

oscam.zip

(4.54 KB, 下载次数: 196)

2016-3-18 12:06 上传

点击文件名下载附件

本文使用到的文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值