找回密码
 立即注册
收起左侧

vs2010编译qt工程,生成的moc文件位置怎么控制?

2
回复
9242
查看
[复制链接]
累计签到:70 天
连续签到:1 天
来源: 2016-2-24 10:10:16 显示全部楼层 |阅读模式
4Qter豆
vs2013安装在d盘,工程在e盘。moc生成在d:\debug\xxx下 而编译检索的位置是\debug\xxx  即E:\debug\xxx下 。
查看MocDirectory  为\$(ConfigurationName)\xxx  
将该项配置加上盘符E:\$(ConfigurationName)\xxx 可将moc生成在E:\debug\xxx下。
问如何不强制加盘符 动态生成moc为工程所在盘的debug\xxx下 或者修改哪项配置使得编译查找位置变为moc生成位置?

回复

使用道具 举报

累计签到:33 天
连续签到:1 天
2016-2-24 13:51:17 显示全部楼层
可参考:
CONFIG(debug, debug|release) {
    TARGET = APPd
    OBJECTS_DIR = debug/.obj
    MOC_DIR = debug/.moc
    RCC_DIR = debug/.rcc
    UI_DIR = debug/.ui
} else {
    TARGET = APP
    OBJECTS_DIR = release/.obj
    MOC_DIR = release/.moc
    RCC_DIR = release/.rcc
    UI_DIR = release/.ui
}
回复

使用道具 举报

累计签到:70 天
连续签到:1 天
2016-2-24 19:48:21 显示全部楼层
一去二三里 发表于 2016-2-24 13:51
可参考:
CONFIG(debug, debug|release) {
    TARGET = APPd

感觉 vs与qt 不怎么协调。我将pro文件里的moc路径啊这些全删了 然后用vs打开 编译就可以了。只不过这些moc ui_ 文件生成在当前目录.\GeneratedFiles\debug下了 ,这是默认的吧? 然后更改vs里 Qt Project Settings的设置MocDirectory为  E:\$(ConfigurationName)\xxx   。编译生成在我指定位置后,再看Qt Project Settings ,  E:\$(ConfigurationName)\xxx   盘符没了,用了相对路径表示的 ./../../../\$(ConfigurationName)\xxx   。 这样 ,我将工程传上cvs 人家下下来以后,他的文件位置与我本机的不同,这个moc生成位置也是不同的。项目里,我们尽量想把这些文件生成在根目录debug下,而不是在代码目录中。感觉怪怪的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了