前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >嵌入式Linux上便捷开发环境搭建

嵌入式Linux上便捷开发环境搭建

作者头像
bigmagic
发布2020-03-17 11:32:12
2.1K0
发布2020-03-17 11:32:12
举报
文章被收录于专栏:嵌入式iot嵌入式iot嵌入式iot

1.本文说明2.基本工具3.基本思想4.操作流程4.1 第一步ubuntu上安装tfp4.2 Windows上VS Code的操作5. 测试与使用6.总结

1.本文说明

嵌入式Linux开发往往都会面临一个问题,就是查看代码与编写代码在Windows操作系统上比较方便,同时相关的工具也比较的齐全,用起来也比较的顺手。但是往往嵌入式的编译却需要在宿主机上进行,这样就会带来很多不方便。开发效率也比较低,下面分享一下我是如何搭建嵌入式开发环境的。

2.基本工具

1.虚拟机工具VMware Workstation 12 Player

在虚拟机上运行一个Ubuntu16.04作为宿主机,该工具使用免费版本即可,无需破解。

2.SSH远程连接工具MobaXterm

之前采用xshell,由于MobaXterm直接集成了sftp,所以不需要xftp。这个工具作为连接宿主机的工具是极好不过的。

3.串口调试工具xshell

xshell的强大之处在于可以同时开几个终端,而且稳定可靠,连接开发板,打印出来的信息看起来很整洁。

4.代码编辑工具Visual Studio Code

强大的文字编辑工具,浏览内核代码,写程序,效果就不用介绍了。

5.vscode插件ftp-sync

有了这个工具,在Windows上编辑的代码就能够及时的同步到Linux平台下。

3.基本思想

之前采用过nfs同步文件,Windows上直接挂在nfs目录。发现代码量大了之后会导致电脑卡顿或者有时会出现蓝屏的问题,所以采用ftp直接传文件,修改一个传一个这样效率又很低,所以看到了vscode上有个ftp-sync插件,只需要两端的文件结构一样,vscode保存文件后就可以自动上传修改的代码,使用起来十分的方便。下面详细介绍一下使用方法。

4.操作流程

4.1 第一步ubuntu上安装tfp

查看是否已经安装

vsftpd -v

没有安装,提示信息如下

输入sudo apt-get install vsftpd进行安装

接着修改配置文件

sudo mv /etc/vsftpd.conf /etc/vsftpd.conf.bat
sudo vim /etc/vsftpd.conf

其中vsftpd.con的文件内容如下所示

# 禁止匿名用户登录
anonymous_enable=NO
# 允许系统用户登录
local_enable=YES
# 启用可以修改文件的 FTP 命令
write_enable=YES
# 本地用户创建文件的 umask 值
local_umask=022
# 允许为目录配置显示信息,显示每个目录下面的message_file文件的内容
dirmessage_enable=YES
# 开启日记功能
xferlog_enable=YES
# 使用标准的20端口来连接ftp
connect_from_port_20=YES
# 使用标准日志格式
xferlog_std_format=YES
# 如果启动这项功能,则所有列在chroot_list_file之中的使用者不能更改根目录
chroot_list_enable=YES
# 指定限制的用户文件
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
# ftp服务器将处于独立启动模式
listen=YES
# 设置一个本地用户登录后进入到的目录
local_root=/home/bigmagic/code
# 设置PAM认证服务的配置文件名称,该文件保存在“/etc/pam.d/”目录下
pam_service_name=vsftpd
# ftp将检查userlist_file设置文件中指定的用户是否可以访问vsftpd服务器
userlist_enable=YES
# 只允许user_list文件中记录的ftp用户能登录vsftp服务,其他的ftp用户都不可以登录。
userlist_deny=NO
# 定义限制/允许用户登录的文件
userlist_file=/etc/vsftpd/allowed_users
# ftp服务器将使用tcp_wrappers作为主机访问控制模式
tcp_wrappers=YES
# 连接ftp服务费使用的端口
listen_port=21
allow_writeable_chroot=YES

其中需要自己修改的是local_root=/home/xxx,注意可以访问的目录的权限

然后添加ftp服务可以访问的用户

sudo vim /etc/vsftpd/allowed_users
sudo vim /etc/vsftpd/vsftpd.chroot_list

新增用户或者自己创建用户,里面一行代表一个用户

启动并验证

sudo service vsftpd start
sudo service vsftpd stauts

看到以下信息表示启动成功

bigmagic@ubuntu:~$ /etc/init.d/vsftpd status
● vsftpd.service - vsftpd FTP server
   Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
   Active: active (running) since 日 2019-02-17 23:16:08 CST; 9min ago
 Main PID: 2042 (vsftpd)
   CGroup: /system.slice/vsftpd.service
           └─2042 /usr/sbin/vsftpd /etc/vsftpd.conf

2月 17 23:16:08 ubuntu systemd[1]: Starting vsftpd FTP server...
2月 17 23:16:08 ubuntu systemd[1]: Started vsftpd FTP server.
2月 17 23:25:11 ubuntu systemd[1]: Started vsftpd FTP server.
bigmagic@ubuntu:~$

在Windows的浏览器上访问,IP地址取决于宿主机的IP地址。

ftp:192.168.1.8

如果浏览器窗口可以正常的看到ubuntu上的文件表示启动成功

4.2 Windows上VS Code的操作

Windows操作系统作为主要开发系统,利用VS Code进行代码编写,搜索扩展功能的tfp-sync插件

安装完成后可以按照下面的步骤进行操作

新建一个工作目录,并用VS Code打开

快捷键Ctrl+Shift+P,输入Ftp-sync:Init回车用于初始化目录

5. 测试与使用

环境搭建完成,可以进行测试工作。首先要保证两点:

1.打开的目录用Ftp-sync:Init初始化过,会生成一个ftp-sync.json文件

2.宿主机指定的目录中需要和remotePath指定的目录一致,比如设置的remote目录为/.,那么宿主机配置的ftp的目录为/home/bigmagic/code,所以在/home/bigmagic/code目录下是同步的。

3.文件夹的权限,如果不确定,可以设置为777权限

chmod -R  code/

Windows上创建一个文件

然后在vscode上选择右键同步即可

也可以在ubuntu上创建,远程拉取文件下来。

并且有最大的好处是在Windows上保存代码后,会自动上传。

6.总结

环境搭建是提高嵌入式开发效率的很好的手段,所以在做开发之前,先用好工具,再有了好工具之后也会提高开发的效率和开发的水平,节省时间。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-02-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 嵌入式IoT 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.本文说明
  • 2.基本工具
  • 3.基本思想
  • 4.操作流程
    • 4.1 第一步ubuntu上安装tfp
      • 4.2 Windows上VS Code的操作
      • 5. 测试与使用
      • 6.总结
      相关产品与服务
      专用宿主机
      专用宿主机(CVM Dedicated Host,CDH)提供用户独享的物理服务器资源,满足您资源独享、资源物理隔离、安全、合规需求。专用宿主机搭载了腾讯云虚拟化系统,购买之后,您可在其上灵活创建、管理多个自定义规格的云服务器实例,自主规划物理资源的使用。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档