VELT-0.1.3开发:汇编支持

快乐虾

http://blog.csdn.net/lights_joy/

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

VELT的全称是Visual EmbedLinuxTools,它是一个与visual gdb类似的visual studio插件,用以辅助完成Linux开发。利用这个插件,将可以在visual studio的IDE中进行Linux应用程序的开发(包括编译和调试),也可以进行uboot和linux内核的编译,并根据编译时的错误信息正确定位到源码。目前的版本是0.1.2,仅支持vs2013,是一个刚刚启动开发不久的插件。可以在CSDN下载频道下载(http://download.csdn.net/detail/lights_joy/8359251),安装过程参见《用Vs2013+VELT-0.1.0进行Linux开发:环境搭建》。下面是它的基本功能:

  1. 支持x86 Linux,hi3516,hi3520,MinGW这几个平台。
  2. 完成UBOOT的编译,并根据编译的错误信息自动定位到相应的文件位置。
  3. 完成LINUX内核的编译,并根据编译的错误信息自动定位到相应的文件位置。
  4. 完成LINUX内核的配置。
  5. 不使用Makefile进行Linux应用程序的编译。
  6. 使用SSH连接目标机器并用gdb进行应用程序的调试。
  7. 使用Telnet连接目标机器并用gdb进行应用程序的调试。

下面我们在VELT中加上汇编支持。

1.1  WIN32/x64平台

对于WIN32和X64,只需要在生成自定义中选择汇编即可:

此操作的结果是VS在我们的工程文件中加上了:

<ImportGroup Label="ExtensionTargets">

<ImportProject="$(VCTargetsPath)\BuildCustomizations\masm.targets" />

</ImportGroup>

但显然这仅仅只有在WIN32平台下才可用,因此我们将之修改为:

<Import Condition="$(Platform)==‘Win32‘"Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />

<Import Condition="$(Platform)==‘x64‘"Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />

在项目中添加一个test.asm文件,然后就可以看到MASM的编译选项了!!

1.2  GNU平台

对于GNU的编译器,因为VELT提供了自己的编译任务,只需要将项目中的.s文件设置为C/C++编译就可以了。当然,这种方式无法针对每个文件单独设置编译参数!

as生成的错误信息格式与gcc略有不同:

1>  c:\mingw\\bin\as.exe   -o..\obj\MinGW\Debug\ConsoleApplication\test.obj test.s

1>  test.s: Assembler messages:

1>  test.s:3: Error: too many memory referencesfor `mov‘

需要进行转换后VS才能正确识别。

1>  c:\mingw\\bin\as.exe   -o ..\obj\MinGW\Debug\ConsoleApplication\test.objtest.s

1>  test.s: Assembler messages:

1>  test.s(3): error C2005:  too many memory references for `mov‘

??

时间: 2024-08-06 18:58:44

VELT-0.1.3开发:汇编支持的相关文章

VELT-0.1.2开发:支持MinGW

快乐虾 http://blog.csdn.net/lights_joy/ 欢迎转载,但请保留作者信息 1.1    什么是VELT VELT的全称是Visual EmbedLinuxTools,它是一个与visual gdb类似的visual studio插件,用以辅助完成Linux开发.利用这个插件,将可以在visual studio的IDE中进行Linux应用程序的开发(包括编译和调试),也可以进行uboot和linux内核的编译,并根据编译时的错误信息正确定位到源码.目前的版本是0.1.1

用Vs2013+VELT-0.1.0进行Linux开发:环境搭建

快乐虾 http://blog.csdn.net/lights_joy/ 欢迎转载,但请保留作者信息 本文适用于vs2013 + Visual EmbedLinux Tools 0.1.1 1.1    什么是VELT VELT的全称是Visual EmbedLinuxTools,它是一个与visual gdb类似的visual studio插件,用以辅助完成Linux开发.利用这个插件,将可以在visual studio的IDE中进行Linux应用程序的开发(包括编译和调试),也可以进行ubo

(转)VC6.0中OpenGL开发环境配置

首先简单介绍一下OpenGL: OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的特性.       OpenGL官方网站(英文)    http://www.opengl.org 然后设置编程的一些环境,及其安装必备文件的步骤如下: 第一步:选择一个编译环境 现在Windows系统的主流编译环境有Visual Studio,Broland C++ Builder,Dev-C++等,它们都是支持OpenGL的.但这里我们选择VC++ 6.0作为学习OpenGL的环

功能齐全、效率一流的免费开源数据库导入导出工具(c#开发,支持SQL server、SQLite、ACCESS三种数据库),每月借此处理数据5G以上

软件名:DataPie 功能:支持SQL server.SQLite.ACCESS数据库的导入.导出.存储过程调用,支持EXCEL2007.EXCEL2003.ACCESS2007. CSV文件导入数据库,支持EXCEL.CSV.ZIP.ACCESS文件方式导出,支持数据拆分导出及自定义SQL查询与导出. 开发背景:作者从事财务管理工作,主要是出具集团的内部财务报表,随着公司精细化管理的需求,管理报表的数据量急速增长, 依赖EXCEL加工处理数据已经变得极为困难,因此团队全面转向关系数据库进行数

WITCH CHAPTER 0 [cry] 绝密开发中的史克威尔艾尼克斯的DX12技术演示全貌

西川善司的[WITCH CHAPTER 0  cry]讲座 ~绝密开发中的史克威尔艾尼克斯的DX12技术演示全貌 注:日文原文地址: http://pc.watch.impress.co.jp/docs/topic/feature/20150529_704317.html 视频引用自youtube 今年4月末,微软的开发者大会[Build 2015]在美国的旧金山举行,在这次大会的主题演讲中,[DirectX 12世代实现的次世代图实时游戏图形,[WITCH CHAPTER 0 cry](后面简

[转]Ubuntu Tweak 0.8.7 发布:支持 Ubuntu 14.04

原文网址:http://www.oschina.net/news/51054/ubuntu-tweak-0-8-7 这是我开发 Ubuntu Tweak 七年以来第一次没在 Ubuntu 正式发布之前同步更新,作为开发者兼维护者,这个工作还是得完成.于是,支持 Ubuntu 14.04 的 Ubuntu Tweak 正式来了. Ubuntu Tweak 除了正式增加 Ubuntu 14.04 的支持以外,还带来一些小改进 这些改进是: 增加对 Unity Launcher 点击图标最小化 App

《DirectX 9.0 3D游戏开发编程基础》 第一章 初始化Direct3D 读书笔记

REF设备 参考光栅设备,他能以软件计算方式完全支持Direct3D Api.借助Ref设备,可以在代码中使用那些不为当前硬件所支持的特性,并对这此特性进行测试. D3DDEVTYPE 在程序代码中,HAL设备用值D3DDEVTYPE_HAL来表示.该值是一个枚举变量.REF设备用D3DDEVTYPE_REF来表示.这种类型非常重要,你需要铭记,因为在创建设备的时候,我们必须指定使用哪种设备类型. COM(组件对象模型) 创建COM接口时不可以使用c++关键字new.此外使用完接口,应调用Rel

python 开发一个支持多用户在线的FTP

### 作者介绍:* author:lzl### 博客地址:* http://www.cnblogs.com/lianzhilei/p/5813986.html### 功能实现 作业:开发一个支持多用户在线的FTP程序 要求: 用户加密认证 允许同时多用户登录 每个用户有自己的家目录 ,且只能访问自己的家目录 对用户进行磁盘配额,每个用户的可用空间不同 允许用户在ftp server上随意切换目录 允许用户查看当前目录下文件 允许上传和下载文件,保证文件一致性 文件传输过程中显示进度条 附加功能

XMPP客户端库Smack 4.0.6版开发之一

一.Smack库概述 Smack是一个开源.易用的XMPP/Jabber客户端库,它使用Java语言开发,由Jive Software开发. Smack的优点是编程简单. Smack的缺点是其API并非为大量并发用户设计,每个客户都要1个线程,占用资源相对较,因此用Smack做模拟测试时,1台机器只能模拟有限(数千个)客户. 截止2014年11月27日,Smack库已经发展到4.0.6版. 最新的好消息是Smack在4.1.0版后将直接支持Android系统,而无需再使用以前的Smack移植版a