busybox制作及移植ssh和gdb支持ccs9调试--Apple的学习笔记

前言

由于我要进入驱动及中间件应用开发,仅gdb远程调试没有界面,不方面,所以还是想用有界面的比如ccs9或者vscode。那么需要在开发板支持gdbserver和sshd服务器。
那么问题来了buildroot默认使用uclib无法支持gdbserver的编译。我把原来tisdk自带的编译出来的gdbserver放入buildroot文件系统是无法运行的。所以放弃uclib编译的文件系统。正好尝试下自己手工建立一个busybox小的文件系统,此时交叉编译器就可以直接用tisdk提供的glibc交叉编译器咯~

1.busybox文件系统制作

busybox编译参考《正点原子的教程》还是很容易的。

2.ssh选择(openssh or dropbear)

但是我不想编译ssh和gdb,直接将tisdk的lib中的库copy来。结果gdbserver是可以使用的。但是tisdk使用的是轻量级的dropbear。但是dropbear我有一个过不去的坎pam_start() failed,导致密码无法通过。
最后我选择自己交叉编译openssh,然后移植到文件系统中。

3.编译openssh

  1. Zlib交叉编译

下载最新版
此为源码路径root@applecaiHP:/home/applecai/studybr/mytools/zlib/zlib-1.2.11# 在zlib文件夹下建立了build安装路径。
a.export PATH=/home/applecai/bbb/ti-processor-sdk-linux-am335x-evm-06.01.00.08/linux-devkit/sysroots/x86_64-arago-linux/usr/bin:$PATH
b.export CC=arm-linux-gnueabihf-gcc
c../configure --prefix=./../build/
d.make
e.make install


image.png
  1. Openssh

重开一个环境,否则上面的CC有污染。
1.export PATH=/home/applecai/bbb/ti-processor-sdk-linux-am335x-evm-06.01.00.08/linux-devkit/sysroots/x86_64-arago-linux/usr/bin:$PATH
2../Configure linux-armv4 no-asm shared no-async --prefix=/home/applecai/studybr/mytools/openssl/build CROSS_COMPILE=arm-linux-gnueabihf-
3.make
4.make install
成功


image.png
  1. openssh

1)./configure --host=arm-linux-gnueabihf --with-libs --with-zlib=/home/applecai/studybr/mytools/zlib/build --with-ssl-dir=/home/applecai/studybr/mytools/openssl/build --disable-etc-default-login CC=arm-linux-gnueabihf-gcc AR=arm-linux-gnueabihf-ar
2)make
成功
4.参考<正点电子的教程>第B2章节设置文件系统。最后输入如下命令运行sshd。
/sbin/sshd(之后要加入到启动脚本作为后台运行,暂时不添加,因为random: ssh: uninitialized urandom read (32 bytes read)问题没有解决,它要阻塞3分钟)

4.使用ssh

  1. bb black开发板上busybox是面密码登录的。所以先设置root密码
    输入命令passwd root,然后输入密码
    最后修改inittab。注释掉askfirst那行,否则是免密登录。
    修改前console::askfirst:-/bin/sh
    修改后console::respawn:/sbin/getty -L console 0 vt100 # GENERIC_SERIAL
    然后就可以通过用户名+密码方式登录。
  2. subl /etc/ssh/sshd_config在开发中哦,支持root登录。找到#PermitRootLogin no将其修改为PermitRootLogin yes, 把PasswordAuthentication设成yes。
  3. ubuntuPC上输入命令
    ssh root@xxx.xxx.xxx.xx然后第一次需要输入yes,再输入bb black开发板密码。

5.过程中遇到比较消耗时间的问题1

ubuntu输入密码时候,提示
PTY allocation request failed on channel 0。
原因是使用的ptmx设备没有在/dev环境下
解决方法:rcS启动脚本添加(我之前有添加如下3行,后来被我删除了,原来是有用的)
mount -a
mkdir /dev/pts -p
mount -t devpts devpts /dev/pts

6.过程中遇到比较消耗时间的问题2

image.png

为什么说我密码过期,我刚刚设置的呀!原来是默认date为1970年导致的。我将date设置正确后,然后重新修改root的密码,此时保存密码的时候也保存了正确的时间。


image.png

然后ubuntuPC能够连接上bb black开发板咯~


image.png

7.ccs9远程调试环境搭建

开发板的gdbserver和sshd都验证成功后,参考ti官网进行ccs9调试环境创建
http://software-dl.ti.com/processor-sdk-linux/esd/docs/06_01_00_08/linux/Foundational_Components_Tools.html#remote-explorer-setup-with-ccs
遇到问题

点击debug后提示缺少sftp-server。

原因是sftp-server服务没有启动。
解决方法:Sshd_config中修改sftp_server的路径。当前在/usr/local/xxx下面
Subsystem sftp /usr/lib/openssh/sftp-server
然后提示没有找到调试文件,我需要将编译出来的二进制文件拖动到开发板对应路径中。解决2个小问题后,可以单步调试咯~


image.png

至此自制文件系统也能支持远程gdb及ssh服务器,并且还是支持ccs9调试。好有成就感呀!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,874评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,102评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,676评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,911评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,937评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,935评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,860评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,660评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,113评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,363评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,506评论 1 346
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,238评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,861评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,486评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,674评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,513评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,426评论 2 352