DSM系统交叉编译环境的建立
本帖最后由 yumin9822 于 2014-5-13 10:41 编辑其实网上关于DSM系统交叉编译的英文文章还是有的,昨天自己折腾了想编译webcam,但是还是不能用。不知道是自己编译的问题还是自己的逻辑webcam C120不支持。Anyway, 今天把自己搜索到的信息整理以下,分享给大家。
正式编译前你需要准备的东西?
1. 一个Linux系统,可以是虚拟机或实体机。推荐Debian / Ubuntu系统。空余磁盘5G左右。
2. 群晖官方发布的toolchains和source code。
下面我以DSM 5.0 4458系统,DS213j 为例简单讲述一下开发环境建立。
1. 下载相应的toolchains和source code
两个文件群晖官方都发布在这里:http://sourceforge.net/projects/dsgpl/
进入Files,按照下图选择toolchain下载。80M左右,DS213J的CPU为armada370,所以相应下载的toolchian文件名为gcc464_glibc215_hard_armada-GPL.tgz
接下来下载Source code。目前官方只发布到DSM5.0 4458系统,4482还没发布,所以这里我们只能下载4458系统。DS213J对应的文件名为synogpl-4458-armada370.tbz, 1.2G大小
2. 在Linux主机上建立交叉编译环境。我们以Debian为例。
sudo apt-get install libncurses5-dev
#这个后面使用make menuconfig需要用到,所以需要先安装
mkdir ~/dsm5
cd ~/dsm5
#建立临时目录
wget http://softlayer-dal.dl.sourcefo ... -4458-armada370.tbz
wget http://iweb.dl.sourceforge.net/p ... hard_armada-GPL.tgz
#下载Toolchian和sourcecode到临时目录,我这里是直接在Linux主机里面下载两个文件,如果你选择不是这个,可以进入步骤1里面下载到本地,然后想办法传到Linux系统的临时目录
tar zvxf gcc* -C /usr/local/
tar jvxf syn* -C /usr/local/arm-marvell-linux-gnueabi/
#解压Toolchian文件到/usr/local/,Source code文件到/usr/local/arm-marvell-linux-gnueabi/ 完整的目录结构如下
对于DS 213J,DSM 5.0 4458,对应的Linux内核为Linux 3.2.40,CPU为armada370 (SSH登陆DS213j "uname -a"可以看到)
cd /usr/local/arm-marvell-linux-gnueabi/source/linux-3.*
cp synoconfigs/armada370 .config
# 复制一个armada370的config文件
make menuconfig
#设置自己需要添加的驱动或者功能等等。怎么设置,这里不赘述!记得保存退出。
make
#开始编译内核,需要时间较长。
3. 开始编译自己的软件
上面已经编译环境全部建立好了,后面就是编译目标软件了。这里官方有详细的文档可以参考,详细见附件或参考文献5。
同时下面网址还有编译样例见参考文献2。本人这方面还是菜鸟,还在学习,谢谢大家。
**** Hidden Message *****
参考文献
1. http://hallard.me/how-to-install ... on-synology-ds1010/
2. http://pcloadletter.co.uk/tag/cross-compile/
3. http://forum.synology.com/enu/viewtopic.php?f=27&t=52065
4. http://forum.synology.com/wiki/i ... a_PowerPC_CPU_model
5. http://www.synology.com/zh-cn/support/develop_tool
非常专业 感谢分享! 支持楼主继续深入探索,早出成果! 佩服,楼主是程序员???? imjacob 发表于 2014-5-13 11:23
佩服,楼主是程序员????
不是,Linux爱好者。想折腾家里的闲置逻辑web Camera C120装在自己的DS213j上,就翻找了一下资料。稍微整理下分享给大家。节省大家时间! yumin9822 发表于 2014-5-13 11:25
不是,Linux爱好者。想折腾家里的闲置逻辑web Camera C120装在自己的DS213j上,就翻找了一下资料。稍微整 ...
太厉害了。专业linux程序员也就这样了。呵呵 这个不错,楼主翻翻xp论坛,把破解编译的也发下吧,还有GNOBOOT的那个破解,让大家都没事时搞搞{:7_196:} 这个有点高深了,先学习一下 高人处处都是,我都不知道你讲的是什么? 继续支持个 Mark 以后学习 狠还是狠! 又一强贴 支持一下 向楼主学习~~~向楼主学习~~~ see see~~~~~~~~~~~ 好强大的技术贴呀。 回复是最基本的美德 哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
感谢分享! DSM系统交叉编译环境的建立