Russian Qt Forum
Сентябрь 24, 2024, 00:27 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Запуск программы вне QtCreator'a (Windows)  (Прочитано 4842 раз)
AlphaGh0St
Гость
« : Май 16, 2012, 19:39 »

Всем привет!
Знаю, что тема изъезженная и многое сказано, но всё же: как запустить программу (exe'шник) вне QtCreator'a или на другой ОС?

Не надо посылать к Гуглу и в другие темы форума, там уже был, но всё равно не понятно.
Объясните, пожалуйста, по проще и по подробнее, как это сделать.

Благодарю.
Записан
V1KT0P
Гость
« Ответ #1 : Май 16, 2012, 19:50 »

Всем привет!
Знаю, что тема изъезженная и многое сказано, но всё же: как запустить программу (exe'шник) вне QtCreator'a или на другой ОС?

Не надо посылать к Гуглу и в другие темы форума, там уже был, но всё равно не понятно.
Объясните, пожалуйста, по проще и по подробнее, как это сделать.

Благодарю.
Положи необходимые библиотеки рядом с исполняемым файлом.
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #2 : Май 16, 2012, 19:51 »

Что конкретно непонятно? Программа имеет зависимости в виде DLL библиотек. Для распространения программы нужно скопировать рядом с ней нужные библиотеки Qt (из QTDIR\Desktop\Qt\ВЕРСИЯ\mingw\bin\) и mingw, если используется mingw.

Ещё http://www.prog.org.ru/topic_21631_0.html
« Последнее редактирование: Май 16, 2012, 19:53 от Alex Custov » Записан
AlphaGh0St
Гость
« Ответ #3 : Май 16, 2012, 20:08 »

Да, можно сложить библиотеки рядом с исполняемым файлом, но все эти библиотеки будут весить в разы больше, чем сам ехе'шник.

AVZ4 - это антивирус? не хочу его ставить.
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #4 : Май 16, 2012, 20:15 »

Да, можно сложить библиотеки рядом с исполняемым файлом, но все эти библиотеки будут весить в разы больше, чем сам ехе'шник.

Естественно, в библиотеках кода в десятки раз больше, чем в конечной программе, поэтому они будут побольше. Самые большие как QtGui или QtWebkit сжимай UPX-ом, он сожмёт в 2-3 раза.
Записан
V1KT0P
Гость
« Ответ #5 : Май 16, 2012, 20:20 »

AVZ4 - это антивирус? не хочу его ставить.
Его не надо устанавливать, просто скачиваешь архив, распаковываешь и запускаешь. Он бесплатный, так что не кипишуй.
Очень удобный инструмент для удаления всякого непотребства.
Записан
AlphaGh0St
Гость
« Ответ #6 : Май 16, 2012, 20:59 »

Да, всё получилось, скопировал необходимые библиотеки в одну папку с исполняемым файлом и программа заработала.
Но есть ещё пара моментов:
1) Запустил программу на другой ОС, так пропали все иконки из программы. Скопировал папку с иконками, даже файл ресурсов (.qrc), а иконки всё равно не появились. Почему так? Как решить эту проблему?

2) Предположим, я хочу хранить библиотеки не в одной папке с исполняемым файлом, а в подпапке libs. Как указать exe'шнику, чтобы он обращался за библиотекам к подпапке libs? Вроде надо какой-то конфигурационный (.conf) файл создавать, уже и не помню.
Записан
V1KT0P
Гость
« Ответ #7 : Май 16, 2012, 21:09 »

Да, всё получилось, скопировал необходимые библиотеки в одну папку с исполняемым файлом и программа заработала.
Но есть ещё пара моментов:
1) Запустил программу на другой ОС, так пропали все иконки из программы. Скопировал папку с иконками, даже файл ресурсов (.qrc), а иконки всё равно не появились. Почему так? Как решить эту проблему?

2) Предположим, я хочу хранить библиотеки не в одной папке с исполняемым файлом, а в подпапке libs. Как указать exe'шнику, чтобы он обращался за библиотекам к подпапке libs? Вроде надо какой-то конфигурационный (.conf) файл создавать, уже и не помню.
1) Ты точно все нужные библиотеки скопировал? Если иконки не в формате png, то скопировал ли ты правильно плагины поддержки графических форматов из imageformats?

2) Под виндой можно в PATH прописать, но это врятли хорошая идея.
Записан
RealDuke
Гость
« Ответ #8 : Май 18, 2012, 08:49 »

1) Запустил программу на другой ОС
На другой это как? На такой же или совсем другой?(на 7-ке, а компилил под ХР, к примеру)
Записан
AlphaGh0St
Гость
« Ответ #9 : Май 21, 2012, 12:29 »

Проблема с иконками решена. Переконвертировал их в png.

Но вопрос с библиотеками всё ещё в силе.
Цитировать
Предположим, я хочу хранить библиотеки не в одной папке с исполняемым файлом, а в подпапке libs. Как указать exe'шнику, чтобы он обращался за библиотекам к подпапке libs?
Переменные окружения лучше не трогать.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.046 секунд. Запросов: 23.