4

用一个命令

qmake -tp vc -r

我正在从相应的 Qt文件和一堆文件生成 Visual Studio.sln文件和一堆文件。.vcxproj.pro.pri

我希望那些生成.vcxproj的文件导入我自己的.props文件。我可以提供qmake或嵌入这些.pro/.pri文件的路径。

是否可以?如果是,那怎么办?

因为根据我的研究,这似乎只能通过添加一个自定义扩展(我必须先写......)来完成mkspecs......

4

1 回答 1

1

从 qmake 源码来看,是不可能的。我已经查看qmake\generators\win32\msbuild_objectmodel.cpp了 Qt4.8.5 和最新的 Qt5 版本,qmake 添加的唯一属性表是Microsoft.Cpp.*.props(各种):

xml << tag("Import")
    << attrTag("Project", "$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props")
    << attrTag("Condition", "exists('$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props')")
   << closetag()
   << closetag();

我通过创建一个快速 Python 脚本解决了这个问题,该脚本对生成的 *.vcxproj 文件进行后处理:

for l in fileinput.FileInput('Project.vcxproj', inplace=1):
    print l,
    if 'PropertySheets' in l:
        print '    <Import Project="YourPropertySheets.props" />'

当然,最好用新功能修补 qmake,但由于只有包括你和我在内的三个人对此感到困扰,所以我认为 hack 是最佳解决方案。

于 2013-09-17T07:22:07.470 回答