下面我们将VS2012添加一个新的平台支持,由于近来与哈斯hi3516。就选它吧!

1.1     复制平台文件

原来一直认为要让VS支持一个新的平台须要编写代码,某天在看MSBUILD文件夹的时候突然发现了一个奇妙的文件夹:

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

新平台的秘密就在这里!!

这里的hi3516原来是没有的。仅仅是为了加入对hi3516这个平台的支持而加上去的。我们将ARM文件夹复制一份,改名为hi3516。

然后将文件名称中的ARM改为hi3516,将hi3516文件夹下全部文件里的”ARM”字符串替换为”hi3516”(运行字符串操作),非常野蛮,非常暴力,但非常管用!

1.2     改动注冊表,加入新平台

接下来改动注冊表。导入以下的内容(从ARM表项复制得来的结果):

[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0_Config\VC\Libraries\Extended\hi3516]

"Version"="50727.01"

"Install"=dword:00000001

"InstallerType"="MSI"

"SP"=dword:00000000

"SPIndex"=dword:00000000

"SPName"="RTM"

"Bld"="50727"

"Rbld"="00001"

"PaddedVersion"="5072700001"

[HKEY_USERS\S-1-5-21-3453089637-102051711-1108187228-1000\Software\Microsoft\VisualStudio\11.0Exp_Config\VC\Libraries\Extended\hi3516]

"Version"="50727.01"

"Install"=dword:00000001

"InstallerType"="MSI"

"SP"=dword:00000000

"SPIndex"=dword:00000000

"SPName"="RTM"

"Bld"="50727"

"Rbld"="00001"

"PaddedVersion"="5072700001"

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\11.0\VC\Libraries\Extended\hi3516]

"Version"="50727.01"

"Install"=dword:00000001

"InstallerType"="MSI"

"SP"=dword:00000000

"SPIndex"=dword:00000000

"SPName"="RTM"

"Bld"="50727"

"Rbld"="00001"

"PaddedVersion"="5072700001"

[HKEY_USERS\.DEFAULT\Software\Microsoft\VisualStudio\11.0_Config\VC\Libraries\Extended\hi3516]

"Version"="50727.01"

"Install"=dword:00000001

"InstallerType"="MSI"

"SP"=dword:00000000

"SPIndex"=dword:00000000

"SPName"="RTM"

"Bld"="50727"

"Rbld"="00001"

"PaddedVersion"="5072700001"

在做完上面两件事情后就能够在IDE项目中加入新的平台了:

只是非常不幸的是我们如今看项目属性是这个样子的:

这是由于MSBUILD还没有看到项目属性的定义。

1.3     导入project属性定义

打开vcxproj项目文件。查看其导入的属性:

<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

<Import Condition="$(Platform)=='Win32'" Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />

我们须要加上HI3516的导入属性:

<Import Condition="$(Platform)=='hi3516'" Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />

我们熟悉的项目属性又回来了!

!!

Vs2012在Linux应用程序开发(3):加入新平台hi3516的更多相关文章

  1. Vs2012于Linux应用程序开发(2):图案

    1.1     代码提示功能 在vs中开发中,Visual Assist是一个很优秀的插件,我们仍然能够使用它进行代码的分析,但它仅仅能支持vcxprojproject,因而我们选择对vcxproj的 ...

  2. Vs2012于Linux应用程序开发(4):公共财产的定义

    在嵌入式开发流程.有些参数基本上不改变,比如编译主机IP,username,password等参数.我们用VS提供的属性管理器来保存这些參数. 打开属性管理器: watermark/2/text/aH ...

  3. linux应用程序开发-文件编程-系统调用方式

    在看韦东山视频linux驱动方面有一些吃力,究其原因,虽然接触过linux应用程序编程,但是没有深入去理解,相关函数用法不清楚,正好看到国嵌视频对这一方面讲的比较透彻, 所以把学习过程记录下来,也作为 ...

  4. 嵌入式Linux应用程序开发详解------(创建守护进程)

    嵌入式Linux应用程序开发详解 华清远见 本文只是阅读文摘. 创建一个守护进程的步骤: 1.创建一个子进程,然后退出父进程: 2.在子进程中使用创建新会话---setsid(): 3.改变当前工作目 ...

  5. 《嵌入式linux应用程序开发标准教程》笔记——6.文件IO编程

    前段时间看APUE,确实比较详细,不过过于详细了,当成工具书倒是比较合适,还是读一读这种培训机构的书籍,进度会比较快,遇到问题时再回去翻翻APUE,这样的效率可能更高一些. <嵌入式linux应 ...

  6. Linux入门-程序开发

    Linux程序开发 linux程序总体上来说是分两部分的: 1. 底层驱动程序开发: 2.应用层应用程序开发: 驱动程序 一般情况下驱动是跟内核与硬件有关系的,编程语言是C语言,需要懂一些硬件的知识, ...

  7. linux后台程序开发常用工具

    linux开发工具: 1.编辑工具:1)sourceInsight2)Notepad++3)UltraEdit4)Altova XMLSpy 2.linux服务器访问工具:1)FileZilla2)X ...

  8. 《嵌入式linux应用程序开发标准教程》笔记——8.进程间通信

    , 8.1 概述 linux里使用较多的进程间通信方式: 管道,pipe和fifo,管道pipe没有实体文件,只能用于具有亲缘关系的进程间通信:有名管道 named pipe,也叫fifo,还允许无亲 ...

  9. 《嵌入式linux应用程序开发标准教程》笔记——9.多线程编程

    线程是轻量级进程,创建线程的开销要比进程小得多,在大型程序中应用广泛. 9.1 线程概述 进程包含自己的代码.数据.堆栈.资源等等,创建和切换的开销比较大: 线程是轻量级的进程,调度的最小单元,同一个 ...

随机推荐

  1. [eclipse] 三个操作技巧

    [eclipse] 三个操作技巧 1.快捷键Ctrl+Shift+i:Debug调试中直接获取方法的返回值 在下图代码中,想知道getHost(),则在调试时运行完该句代码后,选中"urlU ...

  2. 【Python】Python 基础知识

    数字和表达式 >>> 2+3 5 >>> 1.0/2.0 0.5 >>> 1.0//2.0 # // 0.0 >>> 1%2 # ...

  3. Hide C# winform App Window When Started by Task Scheduler

    To make a Scheduled Task run in the background, change the User running the task to "SYSTEM&quo ...

  4. Mojo Mysql utf-8字符集 需要{mysql_enable_utf8 => 1}

    get '/api/log_mon/get_log' => sub{ my $c = shift; my $env = $c->param('env'); my $host = $c-&g ...

  5. expect实现ssh自动登录

    expect实现ssh自动登录   #!/usr/local/bin/expect set PASSWD [lindex $argv 1] set IP [lindex $argv 0] set CM ...

  6. jQuery 自学笔记—8 常见操作

    jQuery 拥有可操作 HTML 元素和属性的强大方法. jQuery DOM 操作 jQuery 中非常重要的部分,就是操作 DOM 的能力. jQuery 提供一系列与 DOM 相关的方法,这使 ...

  7. JMS的样例

    1.JMS是一个由AS提供的Message服务.它能接受消息产生者(Message Provider)所发出的消息,并把消息转发给消息消费者(Message  Consumer).2.JMS提供2种类 ...

  8. docs/pcs/rest/file data apis list - 百度开发者中心

    docs/pcs/rest/file data apis list - 百度开发者中心 更新通知: 2013.6.20 上传.下载新域名正式上线使用,相关接口“上传单个文件”.“分片上传-文件分片上传 ...

  9. OpenGL--第一个OpenGL程序

    环境:VS2012 + OpenGL所需文件(其他IDE也可以,不一定要VS2012,VS2010或其他也可以) 步骤: 1.下载Vs2012 2.下载OpenGL所需文件 3.解压缩OpenGL包并 ...

  10. 虚拟机VM10装Mac OS X 10.9.3

    近期WWDC放出终极大招--新的编程语言Swift(雨燕),导致一大波程序猿的围观和跃跃欲试.当然了,工欲善其事,必先利其器,所以对于那些没有Mac又想要尝鲜的小伙伴肯定非常为难.可是,请放心,本文教 ...