Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: nik135 от Январь 28, 2009, 18:45



Название: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: nik135 от Январь 28, 2009, 18:45
Вот, так сказать есть такая задача.
По умолчанию она линкует либу с msvcrt8.dll а надо, чтобы и windows nt 4.0 все работало, сейчас ругается на отсутствие точки входа в kernel32.dll.  Как осуществить задуманное?


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: gogi от Январь 28, 2009, 19:15
>msvcrt8.dll
Может быть, попробовать собрать Qt c "-no-crt"


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: mks56 от Январь 29, 2009, 07:28
Попробуйте собрать статически, тогда вроде не должно цепляться за dll-ки VS


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: nik135 от Январь 29, 2009, 10:48
>msvcrt8.dll
Может быть, попробовать собрать Qt c "-no-crt"

это только для win CE. А по поводу статической версии- мне нужны плагины, а их в статической версии-нема :(


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: BaltikS от Январь 29, 2009, 11:37
Тогда попробуй собрать без зависимостей студии... Как это - уже обсуждалось...


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: Tonal от Январь 29, 2009, 11:41
Я натыкался в сети на рецепты, как заставить новые студии собирать под NT и Win9x.
Идея состояла в том, что студии подсовывался старый рантайм.
Ссылок к сожалению не сохранил.


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: Detonator от Январь 29, 2009, 12:18
это только для win CE. А по поводу статической версии- мне нужны плагины, а их в статической версии-нема :(

в статической версии можно скомпилить сразу с нуждными плагинами, нельзя добавлять только динамические.


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: nik135 от Январь 29, 2009, 19:01
есть плагин, который достаточно часто меняется, и что мне, перекомпилировать qt каждый раз?


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: ритт от Январь 29, 2009, 19:13
свой плагин? а зачем кутэ пересобирать?


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: Detonator от Январь 29, 2009, 20:57
есть плагин, который достаточно часто меняется, и что мне, перекомпилировать qt каждый раз?

Свой проект пересобирать в статике с новой версией плагина и все.


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: BaltikS от Январь 30, 2009, 07:51
Свой проект пересобирать в статике с новой версией плагина и все.
Нет, ну это изврат, попробуй избавиться от зависимостей студии и манифестов...поищи по форуму.... Там кое где с MD на MT поменять надо а также стереть пару строк, которые за манифест отвечают! И пересобрать Qt соответственно, а потом под NT тестируй.....и обязательно сообщи результат....

Хотя интересный вопрос, Троли пишут что будет прога работать и под 98 и под NT 4, но чтобы этого добиться приходится искать всякого рода извраты. Хотя может Qt и не причём, а дело в самой студии. И nik135 действительно прав, я пробовал в NT 4 - действительно ошибка с точками входа. Знатоки компиляторов, подскажите как быть(Только MinGW не предлагайте пожалуйста ;))?  Решение, которое наверняка поможет, перекомпилировать Qt под VS 6 - 100 пудово работать будет, правда возможно некоторые функции Qt работать не будут!


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: nik135 от Январь 30, 2009, 10:12
Если qt собрать 6-й студией, то все пашет. (но при этом нет многих фич самого qt) Если же собирать новыми студиями, то они линкуются с новыми рантаймами. как раз в этом и состоит проблема - заставить студию использовать старый(для nt 4.0) рантайм. А с /Mt и /MD я игрался, к сожалению эти ключи определяют только будет ли рантайм в самом исполняемом файле или в виде dll. но он все равно остается *8.dll.

поэтому переформулирую вопрос: как заставить студию 2005 использовать старый рантайм для программ?


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: Detonator от Январь 30, 2009, 12:54
Вроде c VS6 уже проблемы с совместимостью, и 4.5 вообще перестанет 6-ю версию поддерживать.

Цитировать
А с /Mt и /MD я игрался, к сожалению эти ключи определяют только будет ли рантайм в самом исполняемом файле или в виде dll. но он все равно остается *8.dll.


У меня нет никакой зависимости от *8.dll в статически скомпиленном exe на VS 2008, но и NT под рукой нет чтобы попробовать запустить.


Название: Re: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?
Отправлено: nik135 от Январь 30, 2009, 14:13
с вероятностью 99% не пойдет, только ругаться на точку входа не будет,а вывалится с unknown software exception  >:(

а по-поводу прекращения поддержки- очень жаль, мне nt пока еще нужна....