windows下设置由多个项目组成的解决方法的编译环境

新到一家公司,接触到的这个项目提供了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对应的那个项目即可。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值