导航:首页 > 源码编译 > qt编译通过vc不能运行

qt编译通过vc不能运行

发布时间:2022-07-04 03:06:39

Ⅰ VC环境编译通了但运行不出结果是什么情况

编译只是检查你的词法和语法,是不可能检查出逻辑错误的。可能程序在编写的时候出现了逻辑错误,或者内存空间没有注意到。

Ⅱ 为什么vc++可以编译不能运行

是这样,你在新建VC++工程的时候,其中有一项是选择将MFC库作为共享的DLL还是静态的DLL。
因为MFC程序在运行时需要一些DLL文件的支持,你从集成开发环境下编译运行时,有默认的路径来调用这些所需的DLL,因此运行不会有问题。而当你单独运行文件夹下的可执行程序时,如果一开始选择的是作为共享的DLL,则就会因为可执行程序的当前路径下没有所需的DLL文件而无法运行。
解决方法:
一种是打包程序,生成程序的安装包,就像商业软件一样。
另一种就是采用作为静态的DLL方式,即将程序要用到的库集成到生成的exe程序中。这样程序会稍稍大一点点,相当于一个绿色软件。你可以点击工程菜单下设置菜单项,常规选项卡,选择作为静态的DLL,重建工程就可以了。

Ⅲ 用QtCreator 创建的工程用vc能打开吗

可以,打开QT的命令行工具,CD到工程所有目录(有.PRO的那个目录),然后qmake -tp vc,就会生成一个.vcproj,用VS打开就行了. 也可以,在Visual Studio中装个Qt Visual Studio Integration插件后后直接导入.PRO文件也可~`` 答题不容易,大家互相帮助,望采纳,谢谢!

Ⅳ Qt 编译好的 可执行文件 不能运行是怎么回事

缺少动态链接库,你的qt是动态编译的,根据提示上你qt的安装目录上考到你的exe文件夹里

Ⅳ vs2010编译QT4.8.6,designer.exe、assistant.exe无法运行

认真核对操作步骤:
1、修改环境变量工具推荐:Rapid Environment Editor。
修改前请先备份当前的环境变量。然后:
(1)检查系统变量path,删除有关mingw其他版本等信息,以免与后续的mingw32-make冲突。
(2)检查用户变量INCLUDE、LIB、PATH、MSDevDir和MSVCDir,删除有关\Microsoft Visual Studio\VC98的信息,因为它们会与后续的mingw32-make冲突,导致编译出错。
2、在电脑上安装mingw编译器,假设路径安装在C:\Qt\mingw32。将C:\Qt\mingw32\bin添加进环境变量path,打开DOS命令行输入gcc --version和g++ --version和mingw32-make --version验证编译器安装成功。我用的MinGW版本是V4.8.2,
3、解压qt-everywhere-opensource-src-4.8.6.zip并进入目录。例如:D:\qt-everywhere-opensource-src-4.8.6\
4、依次执行以下DOS命令:
(1)configure -debug-and-release -opensource -prefix "D:\Qt4.8.6" -platform win32-g++ -nomake demos -nomake examples
常见的使用选项说明:
-debug-and-release 编译debug和release版
-opensource 选择开源协议并确认
-platform win32-g++ 使用mingw编译
-prefix "D:\Qt4.8.6" 指定编译结果目录,如果未指定则默认当前
-shared 创建和使用共享Qt库
-static 创建和使用静态Qt库
-nomake demos -nomake examples 不编译例程
-nomake tests 不编译tests

-skip qtwebkit 忽略qtwebkit,因为编译它特别消耗时间

-mp 使用多核优化编译

(2)mingw32-make
(3)mingw32-make install
5、编译完成后,把C:\Qt\mingw32\bin\路径下的三个文件libgcc_s_dw2-1.dll、libstdc++-6.dll和libwinpthread-1.dll拷贝到D:\qt-everywhere-opensource-src-4.8.6\bin\。另外,也请把步骤1备份的环境变量还原。
6、修改Qt安装路径
最初编译时选择的路径是D:\Qt4.8.6\。如果想将它复制到其他盘符,并且改名,例如:C:\Qt\4.8.6_MinGW。这样一来会有问题吗?是的,会有问题,因为Qt有绝对路径依赖症。改名后C:\Qt\4.8.6_MinGW\bin\的exe执行程序都会出问题,要么程序打不开,要么多国语言发生异常。用记事本打开C:\Qt\4.8.6_MinGW\bin\qmake.exe,查找关键字“qt_prfxpath”,可以看到里面含有原始的安装路径。我们不可以手动去修改qmake.exe,真正有效的解决方法是:
在C:\Qt\4.8.6_MinGW\bin\路径下创建一个qt.conf文件,内容为
[paths]
Prefix = C:/Qt/4.8.6_MinGW

请注意:qt.conf文件必须是ANSI格式,并且Prefix的斜杠风格采取的是Linux的,而非Windows,否则会失效。或者使用"Prefix = .. ",如此一来,任意路径有效。

Ⅵ QT和VC会有冲突吗

我个人更喜欢使用vs+qt插件来写qt程序,远远比qt creator ide效率高的多。qt本身就是c++实现的,不会和vc冲突。
如果出现错误不是冲突而是优先级的问题。他们本来是完全独立的。你在vs2008选项里可以看到,有一个选择工作路径的选项,里面把很多头文件,库文件,源文件的路径添加了进去,这些次序也是很重要的。所以如果所需要的名字一样,但针对的文件不同的话,可能就会出错。

我也使用vs来编写单片机的程序,比如51单片机常用的keil编译器。可以把keil编译器中include,lib文件夹路径都添加到vs2008的工作路径中去,那么在vs2008写单片机程序就可以实现自动完成了。但是keil中也存在标准库,vc本身也有标准库,这头文件是一样的,但显然他们的实现方式完全不同。你自己编写一个c++程序,如果默认调用了这个头文件,在编译的时候,vs会在指定的目录中找,会先找目前考前的,如果你把keil库的路径放在vc库的前面,那么肯定就会链接错误,造成编译失败。

Ⅶ 为什么VC6.0编译通过了却不能运行

推荐你在VC下使用执行(Ctrl+F5)来运行它。
如果你想找到那个exe手动运行的话:
1、在main()最后一行加上system("pause");重新编译。
2、包含头文件conio.h,然后在main()返回前最后一行加入getch();重新编译。
3、启动cmd,用cd命令进入到Debug目录,输入那exe文件的名字回车执行,这样exe执行完后cmd不会自动关闭,exe留下的东西就留在屏幕上了。

Ⅷ 为什么我的qt编译程序时不报错也不运行

首先确定的环境有搭建好!然后确定你编译的程序不是arm的给
开发板
用的,而是X86平台的!最后就是你的系统有问题了!

Ⅸ 用vc可以编译但不能运行

你的代码用到了外部的
lib
库文件,也需要添加进去。
现以添加socket需要的wsock32.lib
库文件为例,说明添加方法。
VS2005,在下面路径中,
项目-->
属性-->
链接器-->
输入
-->附加依赖项
加上
wsock32.lib。
你看一下你的代码中用到了哪一个库文件,按照上面的方法加上即可。

Ⅹ vs不能编译qt

1. 下载qt的安装包和vs2011的qt插件,大家可以到下面的地址进行下载
BBS:
官网:

本人是在BBS上找到的,官网上没仔细去找了(英文太多)。
2. 安装qt sdk
安装其实很简单了,基本上一路回车即可,主要是要注意下qt的安装路径最好安装在全英文路径而且中间没有空格, 安装好后,可以运行开始菜单里面的qt demo,直观感受下qt的强大功能!

界面非常炫酷

4. 编译qt
qt默认使用mingw进行编译,如果要使用vs2011开发,需要将qt重新编译。

入开始菜单microsoft visual studio 2011,visual studio tools,visual studio
command prompt (2011),需要注意的是,这里面必须是使用visual studio command prompt
(2011),不能使用cmd的dos窗口

进入qt的安装目录后,执行cd qt,进入qt的根目录

运行命令 configure -platform win32-msvc2011,o(选择opensource模式)回车,y(同意license)回车
k1988插入:
在编译过程中,为了加快速度,可以对configure适当的加些参数,比如-fast,-no-webkit(这个貌似挺耗时的)

选择的命令行:configure -platform win32-msvc2011 -fast -debug-and-release
-no-webkit -no-script -no-qt3support -nomake demos -nomake examples
-nomake tools -mp
其中:mp是多线程编译选项。
接着就会自动配置qt的编译环境,等配置结束后,运行nmake,回车,qt就会开始漫长的编译过程,这段时间非常长,需要4个小时以上。
liuyu遇到的问题:(自己遇到过,当时没记录下来,但是记得编译过程中遇到这些问题)
1.DefaultLocalizationStrategy.cpp
C:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/INCLUDE/yvals.h(21) : war
ning C4005: ‘_HAS_TR1’ : macro redefinition
command-line arguments : see previous definition of ‘_HAS_TR1’
platform/DefaultLocalizationStrategy.cpp(327) : error C2001: newline in constant
platform/DefaultLocalizationStrategy.cpp(327) : fatal error C1057: unexpected en
d of file in macro expansion
NMAKE : fatal error U1077: ‘“C:/Program Files (x86)/Microsoft Visual Studio 10.0
/VC/BIN/cl.EXE”’ : return code ‘0x2’
Stop.
NMAKE : fatal error U1077: ‘“C:/Program Files (x86)/Microsoft Visual Studio 10.0
/VC/BIN/nmake.exe”’ : return code ‘0x2’
Stop.
NMAKE : fatal error U1077: ‘cd’ : return code ‘0x2’
Stop.
NMAKE : fatal error U1077: ‘cd’ : return code ‘0x2’
Stop.
解决办法:
打开文件…/Qt4.8.5/src/3rdparty/webkit/Source/WebCore
/platform/DefaultLocalizationStrategy.cpp
找到327行删除的引号“”

2.NMAKE:fatal error U1077. return code 0x2
产生原因:找不到代码文件中包含的头文件
解决办法:cmd下进入到vs安装路径/VC/Bin下,执行vcvars32,此时会执行vcvas32.bat自动为vs设置环境变量 (这个也试过好几回,没效果,依然出现上面错误)试试下面的就解决了:

经分析,是环境变量设置的CURR_DIR和TARGETDIR值中含有空格导致了此问题。
通过下面的命令删除环境变量即可。
在d:/Qt/4.8.6目录下键入下面的命令即可(不是很明白)

接着继续nmake命令 回车换行
k1988插入:(本人未找到以下文件)
请先删除
src/3rdparty/webkit/webcore/tmp/moc/debug_shared/mocinclude.tmp
src/3rdparty/webkit/webcore/tmp/moc/release_shared/mocinclude.tmp
/src/script/tmp/moc/debug_shared/mocinclude.tmp
/src/script/tmp/moc/release_shared/mocinclude.tmp
等文件,否则编译有可能失败。
k1988插入:
这一步很重要,关系到是否能用qt-vs-addin。
把d:/qt/bin下的.qmake.cache和configure.cache这两个文件手动备份到另一个地方。
(本人未尝试过)然后使用nmake clean进行清理掉那些中间文件(pdb,obj等文件),清理出4个g左右的空间。
nmake confclean是清理配制文件,占的空间不大,可以不执行了。这个时候再把刚备份的.qmake.cache和configure.cache拷回原处。
5.配置vs2011的qt开发环境(vs2011最好是英文版本,qt对vs2011中文版本可能支持的不好)
等qt编译好后就可以配置vs2011的开发环境了,进入vs2011,选择qt菜单,qt option,进入下图界面
k1988插入:

步骤编译好了,用qt助手paths加进去,不知为何ok键不亮, 红字提示:qt in the given path built using
mingw 这个是qt插件的bug,得手工改注册表 hkey_current_user/software/trolltech/versions/
下增加一个子项 qt486(需要的名称) 子项下面增加一个数值 installdir,值就是你要配置的qt路径
ps:如果没有versions这个文件夹就新建一个吧!
(这里确实是个坑,仅仅修改注册表居然没有用,还要去qt的lib文件夹下删掉两个文件 –>>删除qt的lib目录下(我的路径是D:/Qt/4.8.6/lib)的libqtmain.a and libqtmaind.a 两个文件。)

点击add,添加qt的安装目录,并取名字,我这里使用qt的4.8.6版本为名称,选择ok后即可。
6.新建或者导入qt项目
可以通过在vs2011新建一个qt项目

阅读全文

与qt编译通过vc不能运行相关的资料

热点内容
一级抗震楼层框架梁加密区 浏览:208
pdf开发库 浏览:281
chunking算法 浏览:622
程序员被逮捕的判决 浏览:813
android定位获取城市 浏览:599
做服务器客户怎么去找 浏览:997
程序员升职可以干什么 浏览:301
单片机原理课程设计大纲 浏览:909
cad命令大全图表下载 浏览:389
程序员去印度工作 浏览:424
苹果app活动怎么导出 浏览:5
pdf转高清图片 浏览:35
人人玩棋牌源码 浏览:347
如何获取美团服务器时间 浏览:342
php简单加密算法 浏览:795
什么是开服务器 浏览:609
cd4017单片机怎么用 浏览:267
鸟哥pdf 浏览:243
忘记加密的密码了怎么办 浏览:562
好友信息提示音在哪个文件夹 浏览:277