windows下设置由多个项目组成的解决方法的编译环境
来源:互联网 发布:生鲜网络销售平台 编辑:程序博客网 时间:2024/05/17 22:53
新到一家公司,接触到的这个项目提供了vs编译环境,但由于主要在linux下编译运行,vs的编译设置很久不维护了,有问题不能编译。因为觉得在windows下用vs看代码比较方便,打算改一下。
原工程是用vs2010编写的,首先下载vs2010,打开工程后,解决方案下有很多项目,这些项目需要有共同的include目录、dll的lib目录 和dll目录,可能之前改了路径名,现在设置得都有问题,但没找到如何在解决方案下设置总的路径的方法,只得在每个工程下都要设置这些路径。开始觉得设置../../比较麻烦,看到宏下面有很多$(OutDir)这样的名字,于是想到能不能也设置一个名字为工程根目录,然后在这个目录的基础上设置路径。之后想到可以设置环境变量,设置后就可以在vs中用同样的方法引用这个路径值了。步骤如下:
(1) 设置环境变量 :项目名project = 工程根目录
(2)设置某个项目的c++ include 目录,右键项目名/属性/配置属性/c++/常规的”附加包含目录“添加include路径:$(project)\xxx\include;
(3)设置某个项目 lib目录:右键项目名/属性/配置属性/链接器/常规的“附加库目录“中添加lib目录路径:$(project)\xxx\lib;
(4)设置某个项目以来的lib文件名字:右键项目名/属性/配置属性/链接器/输入的"附加依赖项"中添加lib名字:比如ACEd.lib
(5)假如所有dll都放到了一个共同的目录,并不在exe的当前目录下,在调试状态下,为了让vs找到dll的路径,可以在右键项目名/属性/配置属性/调试的"工作目录“中设置dll存放的目录:$(project)\xxx\dll\debug
(6)如果编译好后直接运行该exe,则需要让windows知道dll存放的目录,这可以在环境变量的path中指定,比如在path中添加$(project)\xxx\dll\debug,注意多个目录之间要加引号;
其他的项目设置方法一样,都需要用到$(project)
这个项目用vs编译总是提示LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏,网上找到答案,在右键项目名/属性/配置属性/清单工具/输入和输出的 嵌入清单 选择否即可。
启动项设置:该项目有一个exe和n个dll组成,为了启动总是启动那个exe对应的项目,右键解决方案名/属性/通过属性/启动项目中设置exe对应的那个项目即可。
- windows下设置由多个项目组成的解决方法的编译环境
- 如何编译由多个c++源文件组成的项目
- 无法绑定由多个部分组成的标识符的解决方法
- Fragment中使用ViewPager,ViewPager由多个Fragment组成时遇到IllegalStateException的解决方法
- Windows环境下java编译出错的解决方法
- “无法绑定由多个部分组成的标识符 “解决方案
- slq 无法绑定由多个部分组成的标识符...
- 无法绑定由多个部分组成的标识符--解决办法
- 无法绑定由多个部分组成的标识符
- 无法绑定由多个部分组成的标识符
- [SQL]无法绑定由多个部分组成的标识符
- SQL_无法绑定由多个部分组成的标识符
- 程序由多个原文件组成,gdb时如何在指定的某个文件中设置断点?
- “Windows下编译boost程序库”和“使用boost库的编译环境的设置”
- 移植windows eclipse下的Android项目到Ubuntu编译环境编译碰到的几个问题
- SublimeText下C++编译环境的设置
- SublimeText下C编译环境的设置
- gtk+在windows下的编译环境
- 函数指针实现类似多态的特性
- bzoj 3289: Mato的文件管理(毒瘤毒瘤毒瘤题啊)
- POJ2411——Mondriaan's Dream(轮廓线dp入门)
- 机器学习(周志华) 参考答案 第五章 神经网络
- poj3617_简单贪心
- windows下设置由多个项目组成的解决方法的编译环境
- wait()、notify()和notifyAll()是 Object类 中的方法
- Android之数据存储
- Java基础之构造函数和重载
- 安卓luncher,实现自动启动,按home键回到luncher页面功能
- windows下spark环境搭建
- mysql查看binlog日志内容
- svn服务端从安装到运行
- NYOJ 36 最长公共子序列