现在我们来搭建一个openwrt的编译环境,并编译ddserver源码为例。
step1:环境
virtualbox下安装
硬件使用WRTnode2P
dslrdashboard软件安装在pc上
测试相机为佳能600d
step2:安装必要工具
sudoapt-getinstallbuild-essentialsubversionlibncurses5-devzlib1g-devgawkgcc-multilibflexgit-coregettextgit
我们新建一个“openwrt”的目录,并进入目录里操作。
mkdiropenwrt
cdopenwrt
step3:下载wrtNodeSDK
本次使用的开发板是wrtnode,所以这里下载wrtnodesdk,可能由于限速,下载平均速度只有30k左右,请耐心等待。下面的语句是下载sdk并解压:
wget
cdwrtnode
解压后,我们来看看目录的结构,里面有个“package”的目录,这个是我们要关心的,等会要下载ddserver的源码到这个目录里,并进行编译。
step4:下载ddserver源码,编译
首先进入“package”目录,命令如下:
cdpackage
然后通过gitcloneddserver的代码,命令如下:
gitclonegit:///hubaiz/DslrDashboardServer
回到wrtnode目录,并配置,命令如下:
cd../
makemenuconfig
在出现的OpenwrtConfiguration界面中
选择“Multimedia”项目并按回车进入二级菜单,如图:
选择“ddserver”并用空格键,使其前面出现“M”字样,除了“M”还有“*”,它们的意思为
“M”:该模块以被核心支持,可以以后再安装
“*”:表示该模块直接编译到核心中
如图:
接下来就是编译了,命令很简单,如下:
$makeV=s
这个过程很漫长了。
编译完成后,在这个目录下找到ddserver:
./bin/ramips/packages/base/ddserver_0.2-12_ramips_24
在经过一次漫长的编译后,如果我们对ddserver或者其他package包进行了修改需要重新编译,那么就不需要再那么长的编译了,这时候我们可以选择只编译某个模块。
只编译某个模块,速度会快很多:
makepackage/DslrDashboardServer/clean
makeV=spackage/DslrDashboardServer/compile
编译完成后,同样在这个目录下找到它:
./bin/ramips/packages/base/ddserver_0.2-12_ramips_24
这样就编译好了ddserver,把他上传到路由器上就能安装了。