//=====================================================================
//TITLE:
// 如何在.proj设置附加头文件路径
//AUTHOR:
// norains
//DATE:
// Wednesday 29-September-2010
//Environment:
// KEIL MDK 4.0
// .NET Micro Framework Porting
//=====================================================================
如果你在.NET Micro Framework Porting的Solution里新建了一个xxx.proj,并且这个xxx.proj中要编译的CPP或C还需要附加的头文件,但偏偏所需的头文件目录并不是默认的,那么我们应该如何在xxx.proj中设置相应的头文件呢?
在xxx.proj设置头文件的关键字是IncludePaths,而这个关键字只能在ItemGroup区域有效。所以,添加附加头文件的路径写法如下:
<ItemGroup>
<IncludePaths Include="头文件路径 " />
</ItemGroup>
不过,这里会有一个非常有意思的问题。假如我们有一个Solution叫MySolution,并且新建的工程叫NewProj,而这个工程所需要的附加头文件在Addtion文件夹。可能这样讲有点迷糊,还是以路径来表示。
新的工程的文件位于:$(SPOCLIENT)/MySolution/NewProj/NewProj.proj
而附加头文件的目录位于:$(SPOCLIENT)/MySolution/Addtion
$(SPOCLIENT)是一个环境变量,为.NET Micro Framework Porting的安装目录。比如,在我机器上该变量等于“D:/ProgramFiles/NetMicroFramework/v4_1”。
根据如上的信息和知识,我们很可能在NewProj.proj会写下如下语句:
<ItemGroup>
<IncludePaths Include="$(SPOCLIENT)/MySolution/Addtion " />
</ItemGroup>
但如果是这样的书写,那么编译的时候还是会提示找不到头文件!而原因很简单,就是头文件的路径不对!可能有的朋友看到这里迷糊了,不是已经填入了正常的路径了么?是的,你说的没错,但错就错在编译器会画蛇添足!
如果你仔细查看编译的输入信息的话,你会发现这个头文件的路径已经变成:$(SPOCLIENT)/$(SPOCLIENT)/MySolution/Addtion!也就是说,在我的机器上,它的路径变为:D:/ProgramFiles/NetMicroFramework/v4_1/ D:/ProgramFiles/NetMicroFramework/v4_1/MySolution/Addtion!这样的路径,能够正常找到头文件就见鬼了!
所以,对于包含头文件的语句,只能更改如下:
<ItemGroup>
<IncludePaths Include="MySolution/Addtion " />
</ItemGroup>
这个时候,再次编译,应该就能正确找到所附件的头文件了。
因为编译器会将.NET Micro Framework Porting的安装路径附加到IncludePaths的路径之前,所以我们不难看出,附加的头文件只能位于.NET Micro Framework Porting安装目录之下,否则编译的时候是无法如你所愿的。
分享到:
相关推荐
General_Test.proj
电力电子装置与系统设计.proj.tewzip
Proj44.9.3编译版本
模拟测试样题-题目.proj
java版开源的坐标转换jar包,proj4j,里面有doc文档可以查看相应的api 资源文档等可以看定义投影的方式 epsgcode等
华为1+x初级模拟题3.proj
详细解释坐标转换原理,里面包含源码下载地址!能提供各种地方坐标转换
The makefile.vc builds proj.exe, proj.dll and proj.lib.
cct.lib cs2cs.lib geod.lib geodtest.lib gie.lib gie_self_tests.lib gtest.lib pj_phi2_test.lib proj.lib proj_6_2.lib proj_angular_io_test.lib proj_context_test.lib proj_errno_string_test.lib proj_pj_...
Proj4是开源GIS最著名的地图投影库,GRASS GIS, MapServer, PostGIS, Thuban, OGDI, Mapnik, TopoCad, GDAL/OGR等软件的投影都直接或间接的使用Proj4。 Proj4的功能主要有经纬度坐标与地理坐标的转换,坐标系的转换...
http://blog.csdn.net/mrhaoji/archive/2010/09/23/5901434.aspx
WPF培训资料,里面都是学习WPF的源码
谷歌师兄的leetcode刷题笔记Feng_Sun.free.proj 这个项目是冯兄弟的。 他使用 Html5 Google 的块状构建环境来在 Scratch 上使用 arduino 进行 peogramming。 构建一个 git 仓库 节点 新产品经理 S4A:从头开始 ...
proj-4.6.0.tar.gz
上传文件说明proj4j源码上传主要是dui投影坐标解析
项目4j OSGeo Proj4j 项目的镜像,有一些更改以上传到 Maven Central。
comp90015.proj2 墨尔本大学分布式系统的项目2(主/工作系统)。 首次设置 克隆存储库ssh://git@github.com/nedp/comp90015.proj2 。 变更为分公司master 从安装Maven。 请遵循Maven的自述文件说明。 运行mvn ...
maven依赖 <groupId>io.jeo <artifactId>proj4j <version>0.1.1 </dependency>
博娃 algo1 采访
proj.4坐标转换库说明书,proj.4坐标转换库说明书,proj.4坐标转换库说明书。