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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Собрать qt4.4 студией 2005, но чтобы и в windows nt 4.0 работало?  (Прочитано 6474 раз)
nik135
Гость
« : Январь 28, 2009, 18:45 »

Вот, так сказать есть такая задача.
По умолчанию она линкует либу с msvcrt8.dll а надо, чтобы и windows nt 4.0 все работало, сейчас ругается на отсутствие точки входа в kernel32.dll.  Как осуществить задуманное?
Записан
gogi
Гость
« Ответ #1 : Январь 28, 2009, 19:15 »

>msvcrt8.dll
Может быть, попробовать собрать Qt c "-no-crt"
Записан
mks56
Гость
« Ответ #2 : Январь 29, 2009, 07:28 »

Попробуйте собрать статически, тогда вроде не должно цепляться за dll-ки VS
Записан
nik135
Гость
« Ответ #3 : Январь 29, 2009, 10:48 »

>msvcrt8.dll
Может быть, попробовать собрать Qt c "-no-crt"

это только для win CE. А по поводу статической версии- мне нужны плагины, а их в статической версии-нема Грустный
Записан
BaltikS
Гость
« Ответ #4 : Январь 29, 2009, 11:37 »

Тогда попробуй собрать без зависимостей студии... Как это - уже обсуждалось...
Записан
Tonal
Гость
« Ответ #5 : Январь 29, 2009, 11:41 »

Я натыкался в сети на рецепты, как заставить новые студии собирать под NT и Win9x.
Идея состояла в том, что студии подсовывался старый рантайм.
Ссылок к сожалению не сохранил.
Записан
Detonator
Гость
« Ответ #6 : Январь 29, 2009, 12:18 »

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

в статической версии можно скомпилить сразу с нуждными плагинами, нельзя добавлять только динамические.
Записан
nik135
Гость
« Ответ #7 : Январь 29, 2009, 19:01 »

есть плагин, который достаточно часто меняется, и что мне, перекомпилировать qt каждый раз?
Записан
ритт
Гость
« Ответ #8 : Январь 29, 2009, 19:13 »

свой плагин? а зачем кутэ пересобирать?
Записан
Detonator
Гость
« Ответ #9 : Январь 29, 2009, 20:57 »

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

Свой проект пересобирать в статике с новой версией плагина и все.
Записан
BaltikS
Гость
« Ответ #10 : Январь 30, 2009, 07:51 »

Свой проект пересобирать в статике с новой версией плагина и все.
Нет, ну это изврат, попробуй избавиться от зависимостей студии и манифестов...поищи по форуму.... Там кое где с MD на MT поменять надо а также стереть пару строк, которые за манифест отвечают! И пересобрать Qt соответственно, а потом под NT тестируй.....и обязательно сообщи результат....

Хотя интересный вопрос, Троли пишут что будет прога работать и под 98 и под NT 4, но чтобы этого добиться приходится искать всякого рода извраты. Хотя может Qt и не причём, а дело в самой студии. И nik135 действительно прав, я пробовал в NT 4 - действительно ошибка с точками входа. Знатоки компиляторов, подскажите как быть(Только MinGW не предлагайте пожалуйста Подмигивающий)?  Решение, которое наверняка поможет, перекомпилировать Qt под VS 6 - 100 пудово работать будет, правда возможно некоторые функции Qt работать не будут!
« Последнее редактирование: Январь 30, 2009, 07:54 от BaltikS » Записан
nik135
Гость
« Ответ #11 : Январь 30, 2009, 10:12 »

Если qt собрать 6-й студией, то все пашет. (но при этом нет многих фич самого qt) Если же собирать новыми студиями, то они линкуются с новыми рантаймами. как раз в этом и состоит проблема - заставить студию использовать старый(для nt 4.0) рантайм. А с /Mt и /MD я игрался, к сожалению эти ключи определяют только будет ли рантайм в самом исполняемом файле или в виде dll. но он все равно остается *8.dll.

поэтому переформулирую вопрос: как заставить студию 2005 использовать старый рантайм для программ?
Записан
Detonator
Гость
« Ответ #12 : Январь 30, 2009, 12:54 »

Вроде c VS6 уже проблемы с совместимостью, и 4.5 вообще перестанет 6-ю версию поддерживать.

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


У меня нет никакой зависимости от *8.dll в статически скомпиленном exe на VS 2008, но и NT под рукой нет чтобы попробовать запустить.
Записан
nik135
Гость
« Ответ #13 : Январь 30, 2009, 14:13 »

с вероятностью 99% не пойдет, только ругаться на точку входа не будет,а вывалится с unknown software exception  Злой

а по-поводу прекращения поддержки- очень жаль, мне nt пока еще нужна....
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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