Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.71
alsav22
5417 / 4813 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
#1

Ошибка при построении Release в VC 2010 Express. - C++

24.04.2012, 22:53. Просмотров 1794. Ответов 1
Метки нет (Все метки)

Использую qt-win-opensource-4.8.1-vs2010 с VC 2010 Express. Проект разделён на три файла:
mainwindow.h
C++
1
2
3
4
5
6
7
8
#include <QtGui>
#include <QtCore>
class MainWindow : public QMainWindow
{
    Q_OBJECT
    public:
    explicit MainWindow(QWidget *parent = 0);
};
mainwindow.cpp
C++
1
2
3
4
5
6
7
8
9
10
#include "mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent)
{
    QLabel* label=new QLabel(this);
    
    label->setText("Здравствуй, Мир!");
    label->setAlignment(Qt::AlignCenter);
    setCentralWidget(label);
}
main.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "mainwindow.h"
int main(int argc, char **argv)
 {
    QApplication app(argc, argv);
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("CP1251"));
    MainWindow w;
    w.resize(600,350);
    
    QPushButton cmd("ADD");
    cmd.show();
    w.show();
    
    QObject::connect(&cmd, SIGNAL(clicked()), &app, SLOT(quit()));
    
    return app.exec();
 }
После первого построения (с ошибками), в файлы исходного кода добавляется: moc_mainwindow.h.cpp, который создаётся moc , для чего в Свойста проекта, Все конфигурации, События постороения, Событие перед постороением, Командная строка, добавленно:
C++
1
moc -o moc_mainwindow.h.cpp mainwindow.h
Построение Debug нормально проходит. Если Release, то:
C++
1
2
3
4
5
6
7
1>------ Построение начато: проект: Qt5, Конфигурация: Release Win32 ------
1>  mainwindow.cpp
1>  moc_mainwindow.h.cpp
1>qtmaind.lib(qtmain_win.obj) : error LNK2038: обнаружено несоответствие для "_ITERATOR_DEBUG_LEVEL": значение "2" не соответствует значению "0" в main.obj
1>MSVCRT.lib(cinitexe.obj) : warning LNK4098: библиотека по умолчанию "msvcrtd.lib" противоречит использованию других библиотек; используйте параметр /NODEFAULTLIB:library
1>D:\MY C++Projects\Qt5\Release\Qt5.exe : fatal error LNK1319: обнаружено несоответствий: 1
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
Если для Release в Свойствах проекта, Компоновка, Ввод, Игнорировать все стандартные библиотеки - прописать: msvcrtd.lib, то:
C++
1
2
3
4
5
1>------ Построение начато: проект: Qt5, Конфигурация: Release Win32 ------
1>  moc_mainwindow.h.cpp
1>qtmaind.lib(qtmain_win.obj) : error LNK2038: обнаружено несоответствие для "_ITERATOR_DEBUG_LEVEL": значение "2" не соответствует значению "0" в main.obj
1>D:\MY C++Projects\Qt5\Release\Qt5.exe : fatal error LNK1319: обнаружено несоответствий: 1
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
Причину нашёл. Ошибка появляется, если в Свойстах проекта, Все конфигурации, Компоновщик, Система, Подсистема прописана Windows. На Debug это никак не отражается, а при Release появляются описанные выше ошибки. Если для Release выставить Консоль или Не задано, тогда ошибок нет, но при запуске приложения открывается окно консоли, которое мне совершенно не нужно.
Как можно сделать, чтобы и ошибок не было и консоль не открывалась?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2012, 22:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка при построении Release в VC 2010 Express. (C++):

Проблемы с кодировкой при переключении из Debug в Release в MSVS 2010 - C++
Собираю проект в режиме дебаг все символы норм отображаются,переключаю на релиз и одни кракозябры, в чем может быть дело ?

Ошибка в Visual Studio 2010 Express - C++
#include &quot;stdafx.h&quot; #include &quot;Form1.h&quot; ;using namespace MyTest; int main(array&lt;System::String ^&gt; ^args) { // Включение...

При переводе программы с VS c++ 6.0 на VS c++ 2010 express выходят ошибки, как их исправить? - C++
На Vusial Studio c++ 6.0 все прекрасно работало, но стоило мне все это перевести на visual c++ 2010 express, то вышли ошибки и куча...

Ошибка при построении - C++
Вот такая проблема, лишних слов она не нуждается, просто скажите почему не получается.

Ошибка при построении - C++
Здраствуйте. При построении проекта программа показывает ошибки: error C2143: синтаксическая ошибка: отсутствие &quot;;&quot; перед &quot;{&quot; error...

Ошибка C2678 при построении - C++
#include&lt;iostream&gt; #include &lt;math.h&gt; using namespace std; int main() { setlocale (LC_ALL,&quot;.ACP&quot;); int i,t; double k0; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
alsav22
5417 / 4813 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
27.04.2012, 22:21  [ТС] #2
Решение. Подключить заголовочный файл
C++
1
#include <Windows.h>
.
Вместо
C++
1
int main(int argc, char **argv)
написать:
C++
1
2
int WINAPI WinMain(HINSTANCE hInstance,
  HINSTANCE hPrevInstance, LPSTR lpcmdline, int ncmdshow)
. Вместо
C++
1
QApplication app(argc, argv);
написать:
C++
1
QApplication app(ncmdshow, (char **)lpcmdline);
.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.04.2012, 22:21
Привет! Вот еще темы с ответами:

Ошибка при построении архитектуры if-else - C++
Добрый день! Написал программу по условию: (см. 1 картинку) Выглядит программа так: #include &quot;stdio.h&quot; #include...

Ошибка при построении графиков - C++
Здравствуйте. Мне необходимо написать программу, которая строила бы один из двух графиков функции по выбору пользователя. То есть имеются...

Ошибка при построении релиза проекта - C++
Visual Studio 2010 ругается на мой проект и пишет: 1&gt;sfml-system-s-d.lib(ThreadLocal.cpp.obj) : error LNK2038: обнаружено несоответствие...

Microsoft Visual C++ 2010 Express - не компилируются приложения. Ошибка "Не удаётся найти файл" - C++
Собственно не компилирует.Выдаётся ошибка,при нажатии Debug,следующего содержания: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru