统一开发环境,qt pro转vs工程的便捷工具
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了统一开发环境,qt pro转vs工程的便捷工具相关的知识,希望对你有一定的参考价值。
qt工程转vs工程的脚本工具
问题描述:
当多人用vs配合qt creator进行开发时,有时会遇到将pro文件转换成vcxproj文件后,转移到其他的PC上,用vs编译工程出现编译或链接错误。
解决方案:
首先,统一开发环境,例如使用vs2010与Qt5.5.1。
其次,配置QTDIR环境变量,该环境变量为qt creator的安装路径,如“C:\Qt\Qt5.5.1\5.5\msvc2010”(win10操作系统)。
最后,使用qmake工具,将pro文件转换成vcxproj文件。将vcxproj文件中凡是引用qt creator安装路径的地方均用环境变量QTDIR进行替换。
需将以下批处理命令复制保存为*.bat文件。在pro目录下双击运行,即实现上述所描述的功能。
::该脚本的功能是将当前文件夹下及其子文件夹下的qt pro文件转换为vs vcxproj文件,
::并将所生成的vcxproj文件中qt的绝对路径替换成QTDIR环境变量
@echo off
if "%QTDIR%"=="" (
@echo "QTDIR" environment variable is not configured
pause
exit
)
set bootDir=%cd%
set tagName=temp
set tagSubEx=bat
set file=%tagName%.%tagSubEx%
@echo %cd%
for /r %%i in (*.pro) DO (
@echo %%i
call :create %%i
)
pause
cd %bootDir%
set delFile=del.bat
rem set /a flag=0
echo @echo off>%delFile%
rem echo set flag=^0>>%delFile%
echo for /r %%%%j in (*%file%) DO (>>%delFile%
echo call :delete %%%%j>>%delFile%
echo )>>%delFile%
rem echo set /a flag+=^1>>%delFile%
echo :delete>>%delFile%
echo del %%1>>%delFile%
call %delFile%
cd %bootDir%
del %delFile%
exit
:wait
if %flag% equ 1 (
@echo flag=%flag%
pause
del %delFile%
exit
) else (
@echo this is working
pause
goto wait
)
:create
cd %~dp1
echo @echo off>%file%
echo set expQTDIR=%%QTDIR%%>>%file%
echo %%QTDIR%%\bin\qmake -tp vc>>%file%
echo set tagEx=vcxproj>>%file%
echo for /r %%%%j in (*.vcxproj) DO (>>%file%
echo call :replace %%%%j>>%file%
echo )>>%file%
echo :replace>>%file%
echo setlocal Enabledelayedexpansion>>%file%
echo ren %%1 a.%%tagEx%%>>%file%
echo for /f "tokens=*" %%%%s in (a.%%tagEx%%) do (>>%file%
echo set var=%%%%s>>%file%
echo set var=!var:%%expQTDIR%%=%%%%QTDIR%%%%!>>%file%
echo echo !var!^>^>b.%%tagEx%%>>%file%
echo )>>%file%
echo del %%~nx1>>%file%
echo ren b.%%tagEx%% %%~nx1>>%file%
echo del a.%%tagEx%%>>%file%
echo endlocal>>%file%
echo exit>>%file%
start %file%
:continue
以上是关于统一开发环境,qt pro转vs工程的便捷工具的主要内容,如果未能解决你的问题,请参考以下文章