![]() |
|
![]() ![]() ![]() |
|
programador |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 12.4.2006 Репутация: нет Всего: нет |
Решил нормально изучить С++ и выбор остановил на QT. Скачал с тролтека qt-win-opensource-4.3.2-mingw. Первый проект сделал так как описано в руководстве. Успешно создался *.pro, Makefile, а после сборки под make - *.exe и *.o (и Релиз и Дебаг состряпал на всякий случай). При компиляции и сборке не было ни ошибок, ни предупреждений. Вот только конфуз в том, что экзешник не запускается. Клоцаешь по нему, клоцаешь, а он не реагирует. Чуствую себя ламером, на грани депрессии
![]() |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 7 Всего: 162 |
запусти из-под косноли, в cmd. И покажи листинг программы. |
|||
|
||||
programador |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 12.4.2006 Репутация: нет Всего: нет |
Из-под консоли не запустился и ничего не было написано. Листинг - стандартный пример из Ассистента:
Файлы, соответственно, тоже такие же: hello.cpp, hello.pro, Makefile, Makefile.Debug, Makefile.Release - все создано автоматически, руками не правил. |
|||
|
||||
Любитель |
|
|||
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: 16 Всего: 92 |
Мистика?
![]() Запусти дебаг-версию из-под gdb - он OutputDebugString-и перехватывает (виндовый, конечно) и на консоль выводит. |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 7 Всего: 162 |
Кстати, а собрана ли сама QT?
|
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 11 Всего: 93 |
Qt/bin в PATH или ты каждый раз ручками пишешь путь к qmake?
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
programador |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 12.4.2006 Репутация: нет Всего: нет |
Если подразумевается выполнение qtvars.bat compile_debug, то да. Прописывал соответсвующие пути в переменные окружения. (archimed7592 - в том числе и PATH.) Но при этом, что интересно, MinGW работал как и полагалось (утилита make работала и работает, а вот qmake - только через указание пути). После того как деинсталлировал все, что имеет отношение к QT, имеет в своем составе MinGW и make. С последующей новой установкой Тролтековских продуктов, проги все же заработали (до этого не работало даже то, что лежало в демо и примерах). Но возникла другая проблемма - неправильно работает make. Скриншот во вложении. Что я неверно настраиваю? Чуствую, что делаю дилетантскую ошибку, но оправдываю себя тем, что никогда таким не занимался ![]() ![]() ![]() Присоединённый файл ( Кол-во скачиваний: 25 ) ![]() |
|||
|
||||
archimed7592 |
|
||||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 11 Всего: 93 |
make работает правильно ![]() 1. Создай пустую папку. 2. Создай в ней файл main.cpp с содержимым
3. Запусти консоль. 4. Перейди в ней в созданную тобой папку. 5. Напиши
6. Напши release\<имя папки>.exe 7. Радуйся. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
||||
|
|||||
programador |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 12.4.2006 Репутация: нет Всего: нет |
Хе, вывалило пару-тройку предупреждений, однако работает!
![]() Спасибо ![]() ![]() |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 11 Всего: 93 |
В том, что у тебя в этой папке было несколько файлов с кодом. Причём из них НЕ один содержал main. Сборка падала при линковке, ибо двух main'ов(как ф-ций с любым др. именем) быть не должно. Точнее у тебя в той папке была другая папка helloQT - классическая ошибка новичка ![]() -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
programador |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 12.4.2006 Репутация: нет Всего: нет |
Теперь все ясно - спасибо. Немного поэкспериментировал, похоже дело не только в наличии лишней папки с еще одним "главным" файлом - вообще ничего лишнего быть не должно, потому как, не удавалось компильнуть программу и при наличии всяких "вспомогательных" файлов и пр. (хоть ошибки и поразному себя проявляли).
Приятно, что не меня одного ударили эти грабли. ![]() |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 11 Всего: 93 |
programador, всё немного проще, чем ты думаешь
![]() Когда ты запускаешь qmake -project, qmake анализирует всё папку и выдаёт правила для каждого файла, тип которого ему известен. Т.о., если ты будет писать *.pro вручную(а научиться делать это совсем несложно), то никаких "левых" файлов компилироваться не будет, соответственно и не будет никаких ошибок ![]() -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 11 Всего: 93 |
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
programador |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 12.4.2006 Репутация: нет Всего: нет |
Фокус-то, в том что вопрос нерешенный.
![]() С другой стороны, что делать в таком случае (пусть даже "вслепую") понятно (переинсталлировать и переконфигурировать только то что нужно), значит, все-таки можно вопрос считать решенным. ![]() P.S.: Впредь "галочку" обязуюсь ставить ![]() |
|||
|
||||
tomolax |
|
||||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 96 Регистрация: 9.4.2008 Где: город на Неве Репутация: нет Всего: 1 |
Топик создавать не стала, проблема вроде аналогичная, может просто что-то я неправильно делаю. Помогите разобраться
Опиралась на ниже приведеные инструкции и книгу Бланшета
Что получилось: 1. успешно создался *.pro файл (qmake -project) 2. успешно создались папки release, debug, tmp и файлы Makefile, Makefile.Debug, Makefile.Release (qmake) После чего пошли ошибки. При mingw32-make выводит ошибку, но если честно думаю что это я не правильно что-то пишу. все получилось. моя невнимательность Это сообщение отредактировал(а) tomolax - 19.5.2008, 14:00 |
||||||
|
|||||||
![]() ![]() ![]() |
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |