注意: 固件编译只能通过 docker进行.

原因是:

  1. 乐鑫的最新8266 RTOS SDK v3.4腾讯连连的components不支持;
  2. 腾讯连连只支持8266 RTOS SDK v3.1, 而8266 RTOS SDK v3.1的文档中竟然没有提编译工具链, 而v3.4文档中的编译工具链gcc版本v8.4.0也不支持v3.1
  3. 腾讯开发人员用的编译工具链gcc版本是v5.2.0(xtensa-lx106-elf-linux64-1.22.0-92-g8facf4c-5.2.0.tar.gz), 所以干脆用了腾讯提供的docker img了.

docker img获取方式: docker pull hubertxxu/esp8266_build:0.1, 由腾讯的xph提供.
docker项目文件夹在/r/下.
docker linux 版本:

uname -a
Linux bff9dfda8fd0 5.10.16.3-microsoft-standard-WSL2 #1 SMP Fri Apr 2 22:23:49 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

支持yum install命令

docker容器挂载windows目录的启动方式:

docker run --name esp -v path/to/host/folder:/path/to/container/folder -dt hubertxxu/esp8266_build:0.1

挂载以后进行编译.
container修改esp工具链可访问性

chmod -R 777 /home/esp8266

2023/6/15更新: yum命令的源用不了了, 可以换Aliyun的

cd /etc
mv yum.repos.d yum.repos.d.backup
mkdir yum.repos.d
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo

另外, dnf是比yum更先进的包管理工具,可以换用dnf

启动ssh但却连不上IP...

使用了下面一长串的命令启动了ssh, 但是docker内的ip不是真实ip,host ping container是不通的. 我在host上建立了ftp server,通过container登录来看container的ip,发现竟然就是host的ip.

使用如下步骤开启了sshd

yum install net-tools
yum install openssh-server 
yum install passwd
mkdir -p /var/run/sshd  
ssh-keygen -A

然后编辑sshd配置

vi /etc/ssh/sshd_config

打开以下配置

Port 22
ListenAddress 0.0.0.0
PasswordAuthentication Yes

设置root密码

passwd

启动服务

/usr/sbin/sshd -D & 

查看进程和端口占用

ps -A
netstat -nptl

本地连接测试

ssh localhost

标签: none 阅读量: 1378

添加新评论