快乐虾

http://blog.csdn.net/lights_joy/(QQ群:Visual EmbedLinux Tools 375515651)

欢迎转载,但请保留作者信息

本文仅适用于vs2013 + velt-0.1.5

VELT的全称是Visual EmbedLinuxTools,它是一个visual studio插件,用以辅助完毕Linux开发。

利用这个插件,将能够在visualstudio的IDE中进行Linux应用程序的开发(包含编译和调试)。也能够进行uboot和linux内核的编译和调试,并依据编译时的错误信息正确定位到源代码。眼下的版本号是0.1.5,仅支持vs2013。此插件能够在百度网盘下载(http://pan.baidu.com/s/1c0lMxdm),安装过程參见《用vs2013+velt-0.1.4进行嵌入式开发:插件安装》。以下是它的基本功能:

  1. 支持x86 Linux,海思hi3516/hi3520,MinGW这几个平台,提供这几个平台的项目模板。

  2. 完毕UBOOT的编译,并依据编译的错误信息自己主动定位到对应的文件位置。

  3. 完毕LINUX内核的编译,并依据编译的错误信息自己主动定位到对应的文件位置。

  4. 利用串口进行内核的简单调试。

  5. 在VS下完毕Linux内核的配置。

  6. 不使用Makefile进行Linux应用程序的编译。

  7. 使用Makefile进行Linux应用程序的开发。

  8. 使用SSH连接目标机器并用gdb进行应用程序的调试。

  9. 使用Telnet连接目标机器并用gdb进行应用程序的调试。

  10. 在VS中集成Linux终端(Poderosa),支持SSH/Telnet/Com,在打开终端时自己主动将VS的变量导出为bash里的变量,如ProjectDir等。

  11. 带python-2.7.6。且集成了numpy, scipy, matplotlib, cv2, pyqt4等python库。能够在PTVS下直接调用进行调试。

接下来加上python终端,原以为能够直接用微软的PTVS插件,可惜PTVS分析库文件总出错。其原因在于当库文件比較多的时候,PTVS的分析器将因为内存分配失败而退出!。当然最后无法得到正确的结果,而语法高亮等则是依赖于这个结果。无奈仅仅好删除一些临时不会使用的库再分析,这回能够了,记下此过程供以后參考。

PTVS既支持.net下的IronPython,也支持CPython。因为此前已经成功搭好了CPython-2.7.6的环境,选择CPython。

1.1  环境配置

在安装完ptvs后,选择Python Enviroment进行配置:

新建一个环境,让它指向我们的python可执行文件和库文件:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlnaHRzX2pveQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

在路径改变后,PTVS会读取库文件夹下的文件进行分析。在分析结束后能够看到:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlnaHRzX2pveQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

实际上。PTVS将分析的结果保存在了

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlnaHRzX2pveQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

这一堆的idb就是PTVS所须要的分析结果。当库文件夹下的文件改变时。PTVS会自己主动又一次进行分析。

1.2  Python命令行

打开python的命令行。随便输入几个命令測试:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlnaHRzX2pveQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

非常强大的功能。感觉比IDLE或者spyder都舒服。

1.3  脚本编辑

再试试PTVS的脚本编辑功能,写一段代码:

脚本编辑器的功能相同强大。

可是有一点让人不爽的是,当使用cv2这种模块时。PTVS是无法进行提示的。因为这个opencv的模块是以动态库的形式提供的。没有对应的.py文件,因此PTVS也就无法获得其接口信息。

1.4  脚本调试

python的调试有两种模式。一种是脚本模式。还有一种是本机模式,脚本调试时须要去掉native code debugging选项:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlnaHRzX2pveQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

设置断点,F5:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlnaHRzX2pveQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

要是能够直接显示为图像就更好了。

1.5  本机调试

相同是上面的代码。选上本机调试,F5,此时PTVS并不会在断点的地方停下来,而是会全速执行,直接显示执行的结果。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlnaHRzX2pveQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

能够看到刚才的断点变成了无效断点。

选择VS2013里的暂停执行:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlnaHRzX2pveQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

进入C的调试。

强大的VS!



VELT-0.1.5开发:在VS2013下进行python开发的更多相关文章

  1. Ubuntu系统下搭建Python开发环境

    之前演示了在Windows中安装Pycharm,很简单.下面介绍一下如何在Ubuntu中安装Pycharm 1.更新Python至3.5.1,执行以下命令: sudo add-apt-reposito ...

  2. Centos7.4环境下搭建Python开发环境(虚拟机安装+python安装+pycharm安装)

    目录 一.安装 Centos7.4虚拟机 二.安装 python3.6.7 三.安装 pycharm 一般情况下,大家都是在 Windows平台下进行 Python开发,软件安装和环境搭建都非常&qu ...

  3. Linux发行版Ubuntu下的Python开发环境的配置

    linux下的Python安装, 首先我们需要使用都Shell一系列的命令(前面的linux基础可不是白学的哦!) 1.更新软件安装源地址 sudo apt-get update apt-get,是一 ...

  4. VS2013下搭建SDL开发环境

    什么是SDL? SDL是 "Simple DirectMedia Layer"的缩写,它是一个开源的项目. 为多媒体编程而设计 SDL是一个跨平台的多媒体库,它通过OpenGL和2 ...

  5. Windows 下 Django/python 开发环境配置

    1.安装 Aptana/Eclipse Aptana是在eclipse上二次开发的一个开源的集成开发环境,内置python编译器 http://www.aptana.com/ 2. 安装python ...

  6. 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解 (旧版本 | 仅作参考)

    . 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...

  7. RedHat下安装Python开发环境

    Linux RedHat下安装Python2.7.pip.ipython环境.eclipse和PyDev环境 准备工作,源Python2.6备份: 根据which python具体目录而定,进行备份 ...

  8. 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解

    . 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...

  9. window下搭建python开发环境

    搭建一个python开发环境比较简单,所以就稍微记录一下. 1.下载python然后安装 2.配置环境变量 3.在eclipse添加PyDev插件 1.下载python 官网:https://www. ...

随机推荐

  1. iOS-Cocoapods更新不及时

    一.问题 使用cocoapods搜索某些库时,搜索到的版本低于Github上面的版本,这样会导致一些问题.例如我在使用一个LTNavigationBar这个库时,在我升级到iOS10的时候,会导致导航 ...

  2. 小米监控 open-falcon部署

    具体详情请参考官方文档  http://book.open-falcon.org/zh_0_2/quick_install/    centos6.8    建议centos7系统  否则后面按照官方 ...

  3. Perm 排列计数(bzoj 2111)

    Description 称一个1,2,...,N的排列P1,P2...,Pn是Magic的,当且仅当2<=i<=N时,Pi>Pi/2. 计算1,2,...N的排列中有多少是Magic ...

  4. 大楼(bzoj 2165)

    Description xz是一个旅游爱好者,这次他来到了一座新的城市.城市中央有一幢高耸入云的大楼.这幢楼到底有多少层呢?据说和非负整数的个数是一样多的.xz想爬上这座大楼来观赏新城市的全景.这幢大 ...

  5. spring rest 请求怎样添加Basic Auth请求頭

    请自行揣摩代码 package com.hudai.platform.manager.util; import java.net.URI; import java.net.URISyntaxExcep ...

  6. 用正则表达式把页面中的px全部替换成rem

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  7. 【程序打包工具 Inno Setup】转

    原文转自 https://jingyan.baidu.com/article/36d6ed1f50ecfc1bcf4883aa.html

  8. VC6.0工程改名(转)

    只讨论对工程改名,其他文件和类的名字不改变,否则就很麻烦了.  操作步骤:   (1)删除 .dsw 文件.改好了会再自动生成的: (2)以写字板或记事本方式打开.dsp文件: (3)将其中所有的原工 ...

  9. python名词解释(生成器,匿名函数)

    1.生成器:能够保持状态的迭代器,下次进去还是之前出来的状态 http://www.oschina.net/translate/improve-your-python-yield-and-genera ...

  10. LeetCode OJ-- LRU Cache ***@

    https://oj.leetcode.com/problems/lru-cache/ 涨姿势的一道题,相当于实现一种数据结构,实现最近最少使用数据结构. // 用来记录 前后节点都是什么 类似链表上 ...