crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Кросс-компиляция для WinCe_x86
tp4
  опции профиля:
сообщение 3.5.2011, 10:19
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 32
Регистрация: 1.10.2009
Пользователь №: 1128

Спасибо сказали: 1 раз(а)




Репутация:   0  


Здравствуйте, господа.

Цель: собирать Qt-приложения для Win7_x86 и для WinCe_x86. Разработка ведется в QtCreator'е в Win7. Qt 4.7. MS VS 2008.

Что сделал:
1. Поставил SDK для wince.
2. Собрал Qt для платформы wince_x86
3. Поставил Qt-VS-addon
Итог: Из студии все прекрасно компилится и в дебаге и в релизе. Есть желание кросскомпилить из Creator'а.

1. В настройках криэйтора указал путь к qmake. Сразу определился студийный компилятор.
2. Создал простой проект:

.pro
QT += core
QT -= gui

TARGET = test_ce_cons
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp

main.cpp
#include <QtCore/QCoreApplication>
#include <QDebug>

int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
qDebug()<<"asd";
return a.exec();
}

4. В "проектах" выбираю wince'шный профиль. Компилю в дебаге - все норм.
5. При компиляции в релизе начал требовать сначала stddef.h, затем winbase.h.
Все это вылечилось доп. строками в pro-файле:
INCLUDEPATH += "c:\Program Files\Microsoft Visual Studio 9.0\VC\include\"
INCLUDEPATH += "c:\Program Files\Windows CE Tools\wce500\STANDARDSDK_500\Include\x86\"

Далее говорит: LINK : fatal error LNK1181: cannot open input file 'corelibc.lib'
Ну я ему говорю: LIBS += "c:\Program Files\Windows CE Tools\wce500\STANDARDSDK_500\Lib\x86\corelibc.lib"
Не помогло. Та же ошибка линковки.


Итак,

1. Как все же скомпилить в релизе через криэйтор? Что я делаю нитак?
2. Почему при компиляции в дебаге не ругается на stddef.h, winbase.h?

Заранее спасибо!


Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ufna
  опции профиля:
сообщение 4.5.2011, 14:01
Сообщение #2


Активный участник
***

Группа: Участник
Сообщений: 362
Регистрация: 24.5.2008
Из: Курган/СПб
Пользователь №: 182

Спасибо сказали: 29 раз(а)




Репутация:   5  


LIBS += -LC:\Program Files\Windows CE Tools\wce500\STANDARDSDK_500\Lib\x86\ corelibc

последний параметр только не помню как написать
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
tp4
  опции профиля:
сообщение 4.5.2011, 17:12
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 32
Регистрация: 1.10.2009
Пользователь №: 1128

Спасибо сказали: 1 раз(а)




Репутация:   0  


Спасибо.

Действительно, к своему стыду просто криво записал пути к библиотекам.
Вот так нужно было:
LIBS += -L"c:\Program Files\Windows CE Tools\wce500\STANDARDSDK_500\Lib\x86\"
LIBS += -L"c:\Program Files\Microsoft Visual Studio 9.0\VC\lib\"

Но к сожалению этого оказалось недостаточно.
Теперь вот такая ошибка появляется:
Цитата
LINK : fatal error LNK1104: cannot open file 'LIBC.lib'


На моей машине такой библиотеки не оказалось. Гугл говорит, что libc.lib - это старая однопотоковая версия libc и что теперь используются только libcmt.lib.

Подскажите пожалуйста, как побороть эту ошибку?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ufna
  опции профиля:
сообщение 4.5.2011, 17:34
Сообщение #4


Активный участник
***

Группа: Участник
Сообщений: 362
Регистрация: 24.5.2008
Из: Курган/СПб
Пользователь №: 182

Спасибо сказали: 29 раз(а)




Репутация:   5  


хочет ее, скачай да выдай :) не обязательно чтобы она была. А там по результату :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
tp4
  опции профиля:
сообщение 5.5.2011, 12:58
Сообщение #5


Студент
*

Группа: Участник
Сообщений: 32
Регистрация: 1.10.2009
Пользователь №: 1128

Спасибо сказали: 1 раз(а)




Репутация:   0  


Спасибо, ufna.

Заработало.
Подсунул ему libcmt.lib, переименованную в libc.lib, как советовали на каком-то форуме. Насколько это правомерно? Мне потом что-нибудь будет за такой dirty trick?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ufna
  опции профиля:
сообщение 5.5.2011, 14:52
Сообщение #6


Активный участник
***

Группа: Участник
Сообщений: 362
Регистрация: 24.5.2008
Из: Курган/СПб
Пользователь №: 182

Спасибо сказали: 29 раз(а)




Репутация:   5  


Вот когда баги из ниоткуда полезут, тогда и будешь думать. А так - врядли что-то случится, если уж слинковалось и работает, то можно вздохнуть спокойно.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kuzulis
  опции профиля:
сообщение 21.8.2011, 19:02
Сообщение #7


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Доброго времени, подниму тему!

Я тоже озадачился аналогичной проблемой.

Что я делал:
1. Установил VS2008
2. Установил WinCE standart SDK
3. Распаковал исходники Qt 4.7.1 в
Цитата
c:\qt\src-4.7.1

4. Создал директорию для сборки:
Цитата
c:\qt\build-vs2008-wince-4.7.1

5. В этой директории создал два *bat файлика:
cfg-qt471.bat
c:\qt\src-4.7.1\configure ^
-debug-and-release ^
-opensource ^
-platform win32-msvc2008 ^
-xplatform wince50standard-x86-msvc2008 ^
-no-qt3support ^
-no-dbus ^
-no-phonon ^
-no-phonon-backend ^
-no-multimedia ^
-no-audio-backend ^
-no-webkit ^
-nomake examples ^
-nomake demos

и
env-qt471.bat
set QTDIR=C:\Qt\build-vs2008-wince-4.7.1
set INCLUDE=C:\Program Files\Microsoft Visual Studio 9.0\VC\ce\include;C:\Program Files\Windows CE Tools\wce500\STANDARDSDK_500\Include\x86
set LIB=C:\Program Files\Microsoft Visual Studio 9.0\VC\ce\lib\x86;C:\Program Files\Windows CE Tools\wce500\STANDARDSDK_500\Lib\x86
set PATH=C:\Program Files\Microsoft Visual Studio 9.0\VC\ce\bin\x86_cex86;%PATH%


6. Запустил консоль 2008 студии и в ней выполнил файл cfg-qt471.bat
7. Далее, после удачного конфигурирования выполнил env-qt471.bat
8. Далее, выполнил nmake

9. Далее, в настройках QtCreator 2.2.1->"Параметры"->"Qt4"->"Особые" название профиля:
msvc2008-wince-4.7.1
и указал путь к собраному qmake:
c:\qt\build-vs2008-wince-4.7.1\bin\qmake.exe
(см. рис 1)

Но! Теперь при попытке открыть любой файл проекта *.pro, QtCreator не предоставляет выбор моего профиля, хотя в
QtCreator 2.2.1->"Параметры"->"Инструментарии" имеется запись об MSVC 2008 (см. рис 2)

-----
Пробовал также установить Qt VS Addin v1.9 , но возникла проблема
(см. http://www.forum.crossplatform.ru/index.ph...mp;#entry52479)

Как быть? :blink:






Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.11.2024, 11:26