Название: QT и 32/64-bit приложения с MSVC (пара тупых вопросов) Отправлено: vipet от Январь 15, 2007, 07:45 [Windows XP x64 + MSVS 2005 Pro без SP1 + QT 4.2.2 коммерч.]
По причине нерабочего gdb дебаггера в Windows XP x64, пришлось использовать MS VS 2005. Заодно захотелось делать и 32-bit, и 64-bit приложения. Я знаю, что в Configuration Manager для Solution устанавливается Active Solution Platform. Там можно выбирать Win32 или x64. QT сконфигурирована как static, если это имеет значение. Тупой вопрос #1: Каждый раз при смене Active Solution Platform используемые либы QT будут перекомпилироваться ? ОТВЕТ: Нет, конечно. :oops: Будут линковаться скомпилированные. Тупой вопрос #2: Компиляторы и линкеры от MSVC находятся в C:\Program Files (x86)\Microsoft Visual Studio 8\VC\bin Но также есть еще другие папки с ними: C:\Program Files (x86)\Microsoft Visual Studio 8\VC\bin\amd64 C:\Program Files (x86)\Microsoft Visual Studio 8\VC\bin\x86_amd64 Почему нету их же для Intel x64-процессоров? Или из amd64 используется и для Intel? (MS VS 2005 у меня без SP1, появляется ли что-нибудь (компилятор для Intel x64 напр.) после установки SP1?) ОТВЕТ: Все нормально. cl.exe из папки amd64 будет компилить под x64 процессоры (как амд, так и интел (кроме итаниума, на который пофиг)), а название папки такое, потому что интел адаптировал 64-битную архитектуру амд. В x86_amd64 - компилятор 64-битного кода, который работает под x86/x64/Itanium. добавлено спустя 5 часов 6 минут: Тупой вопрос #3: Имеем 2 собранные разные версии QT: для x86 (путем сборки в VS2005 Command Prompt для x86) и x64 (путем сборки в VS2005 x64 Win64 Command Prompt). Каждая сборка находится в своей папке. Установлен Qt Integrator. В Tools/Options/Qt/Builds добавлены обе сборки. Когда x86 сборка Qt выбрана по умолчанию и Active Platform установлена в Win32, то все нормально. Если же сборкой по умолчанию выбрать Qt x64, Active Platform уст-ть в x64, то линкуется все равно Qt x86, т.е. ничего не линкуется. В путях include, lib стоит: $(QTDIR)\include, $(QTDIR)\lib, ... Где менять значение переменной QTDIR, чтобы она указывала на папку с нужной версией Qt? Можно, конечно, вручную проставлять пути в свойствах проекта и тогда все ок. Но хочется сделать кошерно, чтобы через QTDIR. 8) ОТВЕТ: QTDIR устанавливается в Toolbox'е Properties (View->Properties Window), св-во Version. А не в диалоге настроек проекта (Project->Properties). Могли бы и в этом диалоге сделать, было бы логичнее. Вот, сам себе ответил на всё вопросы :D Название: QT и 32/64-bit приложения с MSVC (пара тупых вопросов) Отправлено: Dendy от Январь 15, 2007, 10:26 ОТВЕТ НА ВОПРОС 3: Фиг его знает
Я так и не нашёл, как менять значения макросов в настройках проекта. Хотя логически оно Must Be! В Еклипсе в свойствах конфигурации сборки есть такой пункт, из-за чего в путях можно использовать макросьІ. В студии - хоть убей - не нашёл. По всей видимости Тролли тоже не нашли, так как данньІй вопрос решают через костьІли: Интегратор (по слухам, сам не юзаю) создаёт ярльІки в файловой системе, которьІе меняют запускают проект в студии с конкретньІми переменньІми окружения QTDIR. Название: QT и 32/64-bit приложения с MSVC (пара тупых вопросов) Отправлено: vipet от Январь 15, 2007, 11:33 Dendy
Может быть Project->Properties->Build Events->Pre-Build Event->Command Line ? Я пробовал писать туда разное типа: set QTDIR=c:\Dev\QT\422x64c set $(QTDIR)=c:\Dev\QT\422x64c Результат нулевой. Название: QT и 32/64-bit приложения с MSVC (пара тупых вопросов) Отправлено: ElderOrb от Январь 15, 2007, 15:48 Цитировать Я так и не нашёл, как менять значения макросов в настройках проекта. Хотя логически оно Must Be! Если имеется в вид макросы QTDIR, то его значение меняется очень несложно. Правый клик на Solution в Solution Explorer-е => Change Qt Version. Название: QT и 32/64-bit приложения с MSVC (пара тупых вопросов) Отправлено: Dendy от Январь 15, 2007, 16:13 В том то и дело, что ето должна бьІть настройка конкретной конфигурации проекта, а не солюшена вцелом. У меня к примеру нет етого: Change Qt Version. Технически проблем нет.
Давно знал про ету проблему студии. И только пару дней назад поставил Еклипс, сразу пошёл в настройки смотреть есть ли такая опция там - нашёл без проблем. Пора делать ноги со студии, тем более, что на С++ M$ уже забила. Название: QT и 32/64-bit приложения с MSVC (пара тупых вопросов) Отправлено: Alexei от Январь 15, 2007, 19:16 А почему ты решил, что M$ забила на C++?
Название: QT и 32/64-bit приложения с MSVC (пара тупых вопросов) Отправлено: SLiDER от Январь 16, 2007, 01:02 Цитата: "Dendy" Давно знал про ету проблему студии. Хорошо бы, только вот, что с отладчиком делать, gdb под виндой чуть не довел меня до нервного срыва :twisted: . С альтернативами не густо :( добавлено спустя 8 минут: Цитата: "Alexei" А почему ты решил, что M$ забила на C++? Помоему это очевидно, хотя и не совсем так. Цель МС - "как можно меньше нэйтив кода в юзер спэйсе". Так что основной продукт для них дотНЕТ (или как он там теперьбудет обзываться). Так что все к этому и идет, медленно но верно, легко можно перечислить с пяток признаков, начиная со смерти всех С++ проектов от МС и заканчивая все более вялой поддержкой стандартов. ИМХО. |