Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: silart от Декабрь 02, 2009, 10:41



Название: Сборка eXaro 2.0.0
Отправлено: silart от Декабрь 02, 2009, 10:41
Добрый день!

Товарищи, кто-нибудь собирал САБЖ?
Я скачал исходники, для сборки они требуют cmake. Я с ним ни разу не работал. После скачивания cmake 2.8.0 с первого раза собрать не удалось. Много ошибок.
Наверно нужно что-то исправлять в скрипте.

Подскажите пожалуйста, кто уже собирал eXaro.
Использую MS Visual Studio 2008 + Qt 4.5.3 + интегратор.


Название: Re: Сборка eXaro 2.0.0
Отправлено: f0x от Декабрь 19, 2009, 22:08
Конечно кто-нибудь да собирал. ;)
http://code.google.com/p/exaro/
здесь указаны все зависимости для eXaro.
В следующий раз, пожалуйста, скопируйте текст ошибок при описание проблемы.


Название: Re: Сборка eXaro 2.0.0
Отправлено: silart от Декабрь 29, 2009, 05:51
Конечно кто-нибудь да собирал. ;)
http://code.google.com/p/exaro/
здесь указаны все зависимости для eXaro.
В следующий раз, пожалуйста, скопируйте текст ошибок при описание проблемы.

alFoX, просто я ни разу не работал с cmake. Это не совсем родная система сборки для проектов Qt. Хотелось бы получить советы как собрать eXaro, используя cmake. Или может как-то можно конвертировать проект сборки eXaro в родную систему сборки для Qt (qmake, nmake)? Посоветуйте пожалуйста, как лучше собрать eXaro. Заранее благодарен!  :)


Название: Re: Сборка eXaro 2.0.0
Отправлено: f0x от Декабрь 29, 2009, 13:56
QtCreator прекрасно умеет работать с cmake (как со студией не знаю.)
Открывая в нем новый проект укажите файл - CMakeLists.txt

Для успешного запуска нужны собранные и установленные плагины. Поэтому впишите в сценарий сборки что то типа "make install".

сборка из терминала:
mkdir build
cd build
cmake ..
make
make install

PS. предварительно установите зависимости проекта(о указанной ссылке) любым удобным для вас способом.


Название: Re: Сборка eXaro 2.0.0
Отправлено: silart от Декабрь 30, 2009, 08:11
QtCreator прекрасно умеет работать с cmake (как со студией не знаю.)
Открывая в нем новый проект укажите файл - CMakeLists.txt

Для успешного запуска нужны собранные и установленные плагины. Поэтому впишите в сценарий сборки что то типа "make install".

сборка из терминала:
mkdir build
cd build
cmake ..
make
make install

PS. предварительно установите зависимости проекта(о указанной ссылке) любым удобным для вас способом.


Что-то ниче я не понял.
Какие такие нужны плагины (собранные и установленные)? Где их взять?
Я скачал CMake 2.8. Там есть графическая утилита. Все сделал как было написано в хелпе: выбрал папку с исходниками, папку для сборки, нажал на кнопку "confiure". После этого в логе этой утилиты вывалилось много всего и красного цвета:

Код:
*** eXaro use GPL license ***
Could NOT find quazip  (missing:  QUAZIP_LIBRARY QUAZIP_INCLUDE_DIR)
** Quazip was not found in your system, if you want to use ods export plugin, consider to download and install Quazip from it's original site "http://sourceforge.net/projects/quazip/" or a custom cmaked version from "http://code.google.com/p/exaro/downloads/list"
CMake Warning (dev) at plugins/report/items/charts/CMakeLists.txt:3 (add_subdirectory):
  The source directory

    C:/Development/exaro_2.0.0/plugins/report/items/charts/areachart

  does not contain a CMakeLists.txt file.

  CMake does not support this case but it used to work accidentally and is
  being allowed for compatibility.

  Policy CMP0014 is not set: Input directories must have CMakeLists.txt.  Run
  "cmake --help-policy CMP0014" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find Zint  (missing:  ZINT_LIBRARY ZINT_INCLUDE_DIR)
Could NOT find QZint  (missing:  QZINT_LIBRARY QZINT_INCLUDE_DIR)
** Zint was not found in your system, if you want to use barcode plugin, consider to download and install Zint from it's original sites "http://www.zint.org.uk/", "http://sourceforge.net/projects/zint/" or a working snapshot from "http://code.google.com/p/exaro/downloads/list"
Could NOT find PropertyEditor  (missing:  PROPERTYEDITOR_LIBRARY PROPERTYEDITOR_INCLUDE_DIR)
** propertyEditor was not found in your system, if you want to use eXaro designer, consider to download and install propertyEditor from "http://code.google.com/p/propertyeditor"
Configuring done

Наверно нужно настроить какие-то пути. Только как это сделать? И где? И самое что должно получиться на выходе? Я пользуюсь MSVS 2005. Получается что еще нужно править файл CMakeLists.txt?

Объясните пожалуйста как собрать этот eXaro. Блин, зачем нужен этот cmake, ведь было бы лучше, если бы была родная система сборки для Qt. Там есть один *.pro файл и править почти никогда ничего не нужно, интегратор студии сам все понимает и сам делает проект.

Да, скачал я qtcreator. Он действительно понимает cmake, но в нем надо было настраивать MinGW, я не стал с ним разбираться, он мне все равно не поможет, ведь я пользуюсь студией.


Название: Re: Сборка eXaro 2.0.0
Отправлено: BRE от Декабрь 30, 2009, 08:29
CMake тебе говорит, что не хватает библиотеки Quazip, сначала ее нужно установить у себя.
Тебе alFoX уже писал ссылку на страницу где указаны все зависимости eXaro. Посмотри ее и установи эти библиотеки.
Это одно из отличий CMake от qmake, первая может определять наличие пакетов и автоматически конфигурировать сборку.


Название: Re: Сборка eXaro 2.0.0
Отправлено: GraninAS от Январь 14, 2010, 11:06
Я тоже намучался с eXaro, но все-таки собрал его. Использовать сборку не пробовал. Если у вас она заработает, обязательно отпишитесь, интересно же!

Версия eXaro, которая есть у меня (2.0.0), зависит от:
LPNG 1.2.41 (есть более свежая версия, здесь: http://www.libpng.org/pub/png/libpng.html (http://www.libpng.org/pub/png/libpng.html) можно найти все версии, а это - http://prdownloads.sourceforge.net/libpng/libpng-1.2.42.tar.gz?download (http://prdownloads.sourceforge.net/libpng/libpng-1.2.42.tar.gz?download) - прямая ссылка на скачивание версии 1.2.42),
PropertyEditor 2.1.3 (http://propertyeditor.googlecode.com/files/propertyeditor-2.1.3.tar.lzma (http://propertyeditor.googlecode.com/files/propertyeditor-2.1.3.tar.lzma)),
Quazip 2008-09-17 0.2.3 (причем нужен специальный, под CMake заточенный. Можно вот этот попробовать:  http://exaro.googlecode.com/files/quazip-cmaked.tar.bz2 (http://exaro.googlecode.com/files/quazip-cmaked.tar.bz2)),
Zint 2.2.1 (http://exaro.googlecode.com/files/zint-for-exaro.tar.bz2 (http://exaro.googlecode.com/files/zint-for-exaro.tar.bz2)),
Zlib 1.2.3 (http://www.zlib.net/zlib123.zip (http://www.zlib.net/zlib123.zip)).
eXaro:  http://exaro.googlecode.com/files/exaro_1.90.0.tar.lzma (http://exaro.googlecode.com/files/exaro_1.90.0.tar.lzma) (rc 2.0)

CMake версии 2.8.0. Взять можно здесь: http://www.cmake.org/files/v2.8/cmake-2.8.0-win32-x86.exe (http://www.cmake.org/files/v2.8/cmake-2.8.0-win32-x86.exe).
MinGW (v3.81) (http://www.mingw.org/), у меня он установлен вместе с Qt SDK 2009.05-rc1.

Опять же, у продуктов могут быть новые версии, а мои версии могут не совпадать с теми, что закачиваются (если закачиваются) по ссылкам. Я добывал библиотеки отовсюду: из Интернета, из собственных архивов, от друга и т.п. Как вы понимаете, есть риск, что винегрет окажется невкусным.

Чтобы упростить дело, я создал сборку. В ней лежат все необходимые библиотеки, в одном месте собраны h-фалы, а для будущих бинарников подготовлены папки.

Архив моей сборки доступен здесь: https://sourceforge.net/projects/graninascommon/files/eXaro%20src.rar/download (https://sourceforge.net/projects/graninascommon/files/eXaro%20src.rar/download), 21 мб. CMake’а в ней нет, его придется качать по ссылке выше.

Итак, сборка. Последовательность пакетов такая:
QUAZIP
LPNG
PROPERTY EDITOR
ZINT
EXARO
> ZLIB собирать не надо.

QUAZIP

В CMake’s GUI указываем путь к исходникам (у меня это «D:/Qt/eXaro src/distrib/quazip-cmaked») и путь к bin-папке («D:/Qt/eXaro src/distrib/quazip-cmaked/bin»). Если bin-папка пуста, ничего не произойдет. Нажимаем кнопку “Configure”, выбираем в открывшемся окне компилятор и видим, как CMake генерирует нам параметры компиляции. Потом он выдаст ошибку, мол, чего-то неправильно, и отобразит красные параметры, в которых сомневается. Рекомендую поставить отображение «Grouped View», чтобы проще ориентироваться в дебрях настроек. Замечу еще, что иногда CMake GUI тупит, и его нужно полностью перезагрузить, чтобы он не помнил старых значений. А лучше перезапускать его для каждой новой сборки.

Для quazip нам нужно настроить сущую мелочь – два параметра библиотеки ZLIB (ZLIB_INCLUDE_DIR и ZLIB_LIBRARY), и еще добавить один (кнопка «Add Entry»), а именно – LIBRARY_OUTPUT_PATH типа «Path». Этот параметр говорит компилятору mingw, куда выкладывать готовые бинарники. Его желательно устанавливать для каждого из пакетов, в противном случае будете вручную выуживать бинарники из папок с исходниками.
Значения параметров следующие:
ZLIB_INCLUDE_DIR = D:\Qt\eXaro src\includes\zlib\
ZLIB_LIBRARY = D:\Qt\eXaro src\bins\zlib\libzdll.a
LIBRARY_OUTPUT_PATH = D:\Qt\eXaro src\bins\quazip\
Естественно, у вас пути могут отличаться от моих.

Остальные параметры трогать не стоит. Снова нажимаем кнопку «Конфигурировать»; если краснота с параметров исчезла, значит, можно генерировать makefile’ы. Генерируем. Все хорошо?.. Идем в папку D:\Qt\eXaro src\distrib\quazip-cmaked\bin\ и выполняем команду mingw32-make. При успешной компиляции бинарники quazip появятся в папке, которую вы указали в параметре LIBRARY_OUTPUT_PATH. Кстати, компиляция – очень красивый процесс, разноцветная такая…

Теперь собираем LPNG. Принцип тот же. Загружаем папку исходников и bin-папку. Жмем «Конфигурировать». Видим ошибку и красноту. Изменяем параметры для библиотеки ZLIB (все то же самое, что и в предыдущем пункте). Изменяем параметр EXECUTABLE_OUTPUT_PATH:
EXECUTABLE_OUTPUT_PATH = D:\Qt\eXaro src\distrib\lpng1241\bin\exec
Добавляем параметр (если его нет) LIBRARY_OUTPUT_PATH:
LIBRARY_OUTPUT_PATH = D:\Qt\eXaro src\bins\lpng\.
Конфигурируем. Не прошло, снова краснота, на этот раз он просит библиотеку PNG. Я ее так и не нашел, если честно, так что на нее плюнул, – как ни странно, все собирается… Да, конфигурируем еще раз. СиМэйк обидится, но пережует красноту. Наконец, разрешена генерация, что мы и делаем. Приходим в папку D:\Qt\eXaro src\distrib\lpng1241\bin\, запускаем mingw32-make. Готова сборка!

Другие пакеты собираются аналогично, только есть несколько особенностей. В фале compiling.txt я схематически указал, какие параметры нужно настраивать, чтобы eXaro успешно собрался. Привожу этот файл:

QUAZIP
  -> ZLIB
  --> ZLIB_LIBRARY  =  bins\zlib\libzdll.a
  --> ZLIB_INCLUDE_DIR  =  includes\zlib
  
  -> LIBRARY_OUTPUT_PATH  =  \bins\quazip\

LPNG
  -> ZLIB
  --> ZLIB_LIBRARY  =  bins\zlib\libzdll.a
  --> ZLIB_INCLUDE_DIR  =  includes\zlib
  
  -> EXECUTABLE_OUTPUT_PATH  =  \lpng1241\bin\exec
  -> LIBRARY_OUTPUT_PATH  =  \bins\lpng\

PROPERTY EDITOR
  -> LIBRARY_OUTPUT_PATH = \bins\property editor\
  
ZINT
  -> ZLIB
  --> ZLIB_LIBRARY  =  bins\zlib\libzdll.a
  --> ZLIB_INCLUDE_DIR  =  includes\zlib
  
  -> LIBRARY_OUTPUT_PATH  =  \bins\zint\
  
  -> PNG
  --> PNG_LIBRARY  =  \bins\lpng\libpng12_static.a
  --> PNG_PNG_INCLUDE_DIR  =  
  
  -> QR
  --> QR_INCLUDE_DIR  =
  --> QR_LIBRARY  =
  
EXARO
  -> PROPERTYEDITOR
  --> PROPERTYEDITOR_INCLUDE_DIR   =        (! Важно оставить пустой, иначе придется пересобирать CMake'ом)
  --> PROPERTYEDITOR_LIBRARY  =  \bins\property editor\libPropertyEditor.dll
  
  -> QUAZIP
  --> QUAZIP_INCLUDE_DIR  =  \includes\quazip
  --> QUAZIP_LIBRARY  =  \bins\quazip\libquazip.dll.a
  
  -> QZINT
  --> QZINT_INCLUDE_DIR  =  \includes\zint
  --> QZINT_LIBRARY  =  \bins\zint\libQZint.dll.a
  
  -> ZINT
  --> ZINT_INCLUDE_DIR  =  \includes\zint
  --> ZINT_LIBRARY  =  \bins\zint\libZint.dll.a
  
  -> LIBRARY_OUTPUT_PATH  =  \bins\exaro\

Особо стоит отметить Property Editor. Если указать ту саму папку (PROPERTYEDITOR_INCLUDE_DIR), то происходит что-то странное, скрытно прописывается какой-то дряный параметр, и eXaro в конечном итоге не собирается. Более того, приходится убивать содержимое папки D:\Qt\eXaro src\distrib\exaro_2.0.0\bin\, перезапускать CMake GUI, и только тогда песобирать eXaro, снова настраивая все параметры.

А, да, еще: h-файлы quazip должны лежать в папке «.\includes\quazip\». Это связано с тем, что подключаются они так:
#include <quazip/quazip.h>

QR – это еще одна библиотека, которую я не нашел. Сборка без нее проходит успешно, только компилятор говорит, что-де, будут недоступны некоторые функции. Ну и шут с ними. За решением этой проблемы лучше обращаться к авторам, а для меня это был, скорее, спортивный интерес. Собрать-то я ее собрал, а пользуюсь пока что NCReport’ом. Но авторов всячески поддерживаю, ибо они делают нужную вещь.

Успехов и им, и вам.

P.S. Если что непонятно, спрашивайте.


Название: Re: Сборка eXaro 2.0.0
Отправлено: silart от Январь 23, 2010, 12:20
GraninAS, спасибо за подробный мануал сборки! :)

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


Название: Re: Сборка eXaro 2.0.0
Отправлено: Rome от Январь 28, 2010, 11:21
GraninAS. все собралось, но дллки к сожалению не подхватываются.


Название: Re: Сборка eXaro 2.0.0
Отправлено: GraninAS от Апрель 06, 2010, 08:48
И вам спасибо за отзывы.
(Да, я тормоз, давно не заглядывал :)) )

Видимо, придется с eXaro автора пинать. Пущай объясняет.


Название: Re: Сборка eXaro 2.0.0
Отправлено: cya-st от Май 18, 2010, 12:48
Я тоже намучался с eXaro, но все-таки собрал его. Использовать сборку не пробовал. Если у вас она заработает, обязательно отпишитесь, интересно же!...
Все собирается кроме eXaro, собрался только один файл libReport.dll.a. Подскажите как эту хрень собрать.


Название: Re: Сборка eXaro 2.0.0
Отправлено: FantasyOR от Июль 12, 2010, 12:58
Не подскажите, зачем делать такое, это каждый должен скачивать кучу доп библиотек компилить их,каждый не то что велосипед изобретает, а целый самолет.

GraninAS будьте добры, залейте еще раз Вашу сборку, файлы стерлись.
Спасибо


Название: Re: Сборка eXaro 2.0.0
Отправлено: cya-st от Июль 12, 2010, 15:20
Так и не собрал я этот eXaro, на мой взгляд фигня полная, вообще вменяемой документации нет...румын.....написал......мать...... ....... ...... ..........


Название: Re: Сборка eXaro 2.0.0
Отправлено: f0x от Июль 12, 2010, 20:07
Уважаемый, вам уже все разжевали...
Ни румын, ни кто-либо другой вам ничего не обязаны...
Выложили - пользуйтесь, не можете читать список зависимостей и писать багрепорты - обратитесь за помощью к специалистам.


Название: Re: Сборка eXaro 2.0.0
Отправлено: cya-st от Июль 12, 2010, 20:18
Уважаемый, вам уже все разжевали...
Ни румын, ни кто-либо другой вам ничего не обязаны...
Выложили - пользуйтесь, не можете читать список зависимостей и писать багрепорты - обратитесь за помощью к специалистам.

В том-то и дело что все зависимости установил, а этому кодеру можно было бы хоть какую нибудь доку по установке выкинуть.


Название: Re: Сборка eXaro 2.0.0
Отправлено: f0x от Июль 12, 2010, 20:37
давайте сюда вывод сборки


Название: Re: Сборка eXaro 2.0.0
Отправлено: pichini от Сентябрь 14, 2010, 14:23
Всем привет!
QT 4.6.2, Win Vista
Пытаюсь собрать сабж. Собрал quazip, libpng, а вот zint не получается. cmake вроде отрабатывает нормально, а make выдает следующее:

D:\Qt\eXaro_src\my\zint\zint-2.3.2\backend\png.c: In function 'bullseye_pixel':
D:\Qt\eXaro_src\my\zint\zint-2.3.2\backend\png.c:513: error: 'bullseye_compresse
d' undeclared (first use in this function)
D:\Qt\eXaro_src\my\zint\zint-2.3.2\backend\png.c:513: error: (Each undeclared id
entifier is reported only once
D:\Qt\eXaro_src\my\zint\zint-2.3.2\backend\png.c:513: error: for each function i
t appears in.)
D:\Qt\eXaro_src\my\zint\zint-2.3.2\backend\png.c: In function 'draw_hexagon':
D:\Qt\eXaro_src\my\zint\zint-2.3.2\backend\png.c:553: error: 'hexagon' undeclare
d (first use in this function)
mingw32-make[2]: *** [backend/CMakeFiles/zint.dir/png.c.obj] Error 1
mingw32-make[2]: *** Waiting for unfinished jobs....
mingw32-make[1]: *** [backend/CMakeFiles/zint.dir/all] Error 2
mingw32-make: *** [all] Error 2

Пробовал сборку, которую выложил GraninAS. Так же скачивал сам более свежие версии, все равно упираюсь в ошибки на этапе make. В чем может быть проблема. 
 


Название: Re: Сборка eXaro 2.0.0
Отправлено: pichini от Сентябрь 14, 2010, 15:38
Разобрался.
Пропустил:
В backend_qt4/readme:
Edit zint-1.6.pro and edit the 'DEFINES'  section
    NO_PNG -> compile zint without png support

В backend_qt4/backend_qt4.pro:
#EDIT THIS !!!!
DEFINES += NO_PNG NO_QR ZINT_VERSION="2.3.0"

Не знаю насколько правильно, но убрал NO_PNG и собралось.


Название: Re: Сборка eXaro 2.0.0
Отправлено: andybeg от Июль 19, 2011, 11:58
собираю quazip, затыка вышла на cmake
Код:
c:\dev\quazip\build>cmake .. -G "MinGW Makefiles"
CMake Error at quazip/CMakeLists.txt:22 (install):
  install Library TARGETS given no DESTINATION!
строка 22 вышеозначенной ошибки выглядит
Код:
install(TARGETS quazip LIBRARY DESTINATION lib)
не знаком шибко с cmake, не подскажете, чего ему надо?


Название: Re: Сборка eXaro 2.0.0
Отправлено: andybeg от Июль 19, 2011, 14:36
ответ нашёлся тут (http://www.prog.org.ru/topic_13513_0.html)


Название: Re: Сборка eXaro 2.0.0
Отправлено: kolob от Декабрь 09, 2011, 23:06
Все зависимости собрал CMake-м так как описал GraninAS. При сборке eXaro получал ошибку:
Цитировать
[ 49%] Building CXX object plugins/report/export/ods/CMakeFiles/Ods.dir/ods.cpp.
obj
In file included from C:\Qt\eXaro2.0.0\includes\quazip/quazip/quazip.h:39,
                 from C:\Qt\eXaro2.0.0\src\exaro_2.0.0\plugins\report\export\ods
\ods.cpp:36:
C:\Qt\eXaro2.0.0\includes\quazip/quazip/zip.h:54:18: error: zlib.h: No such file
 or directory
In file included from C:\Qt\eXaro2.0.0\includes\quazip/quazip/zip.h:58,
                 from C:\Qt\eXaro2.0.0\includes\quazip/quazip/quazip.h:39,
                 from C:\Qt\eXaro2.0.0\src\exaro_2.0.0\plugins\report\export\ods
\ods.cpp:36:
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:38: error: ISO C++ forbids decla
ration of 'voidpf' with no type
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:38: error: typedef 'voidpf' is i
nitialized (use decltype instead)
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:38: error: 'open_file_func' was
not declared in this scope
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:39: error: ISO C++ forbids decla
ration of 'uLong' with no type
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:39: error: typedef 'uLong' is in
itialized (use decltype instead)
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:39: error: 'read_file_func' was
not declared in this scope
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:40: error: ISO C++ forbids decla
ration of 'uLong' with no type
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:40: error: typedef 'uLong' is in
itialized (use decltype instead)
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:40: error: 'write_file_func' was
 not declared in this scope
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:41: error: expected initializer
before 'OF'
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:42: error: expected initializer
before 'OF'
C:\Qt\eXaro2.0.0\includes\quazip/quazip/ioapi.h:43: error: expected initializer
before 'OF'
и т.д.
Открыл файл CMakeLists.txt из eXaro в QtCreator-е, все собрал нормально.

Далее открыл консоль, в build директории запустил mingw32-make install, как в wiki написано.
В директории С:\Program~\exaro-package появляются все либы.
Подключаю их к проекту. Но при компиляции не находит reportengine.h


Название: Re: Сборка eXaro 2.0.0
Отправлено: kolob от Январь 03, 2012, 18:41
Либы не подгружаются.
Вот ошибку выдает:
Цитировать
Возникло исключение:
Exception at 0x7c9673be, code: 0xc0000135: DLL not found, flags=0x0.
During startup program exited with code 0xc0000135.


Название: Re: Сборка eXaro 2.0.0
Отправлено: pethead от Ноябрь 30, 2012, 14:59
Только что удалось собрать сорцы в студии 2010.
Собрался дизайнер с плагинами, пропертиедитор с плагинами, репортенжин.
Если что я взял сорцы с репозитория автора exaro_2.0.0,
собрал симейком солюшены для студии 2010. и собрал их в студии, объединив все в один солюшн.
все работает.
Если интересно поделюсь опытом.


Название: Re: Сборка eXaro 2.0.0
Отправлено: DeadCookie от Июнь 04, 2013, 15:45
Доброго времени суток.
Не выходит собрать eXaro. Гугл ничего сказать по этому поводу не может, к сожалению.
Лог:
Код:
[ 69%] [ 71%] Built target ChartContainer
Built target Piechart
Linking CXX executable exaro
CMakeFiles/exaro.dir/namevalidator.cpp.o: In function `PropertyValidator':
/usr/include/propertyvalidator.h:54: undefined reference to `vtable for PropertyEditor::PropertyValidator'
CMakeFiles/exaro.dir/namevalidator.cpp.o: In function `~PropertyValidator':
/usr/include/propertyvalidator.h:49: undefined reference to `vtable for PropertyEditor::PropertyValidator'
CMakeFiles/exaro.dir/moc_namevalidator.cxx.o: In function `NameValidator::qt_metacall(QMetaObject::Call, int, void**)':
/home/deadcookie/exaro-build/apps/designer/moc_namevalidator.cxx:78: undefined reference to `PropertyEditor::PropertyValidator::qt_metacall(QMetaObject::Call, int, void**)'
CMakeFiles/exaro.dir/moc_namevalidator.cxx.o: In function `NameValidator::qt_metacast(char const*)':
/home/deadcookie/exaro-build/apps/designer/moc_namevalidator.cxx:72: undefined reference to `PropertyEditor::PropertyValidator::qt_metacast(char const*)'
CMakeFiles/exaro.dir/moc_namevalidator.cxx.o: In function `~PropertyValidator':
/usr/include/propertyvalidator.h:49: undefined reference to `vtable for PropertyEditor::PropertyValidator'
/usr/include/propertyvalidator.h:49: undefined reference to `vtable for PropertyEditor::PropertyValidator'
/usr/include/propertyvalidator.h:49: undefined reference to `vtable for PropertyEditor::PropertyValidator'
/usr/include/propertyvalidator.h:49: undefined reference to `vtable for PropertyEditor::PropertyValidator'
CMakeFiles/exaro.dir/moc_namevalidator.cxx.o:(.rodata._ZTI13NameValidator[_ZTI13NameValidator]+0x10): undefined reference to `typeinfo for PropertyEditor::PropertyValidator'
CMakeFiles/exaro.dir/moc_namevalidator.cxx.o:(.rodata+0x0): undefined reference to `PropertyEditor::PropertyValidator::staticMetaObject'
collect2: ошибка: выполнение ld завершилось с кодом возврата 1
make[2]: *** [apps/designer/exaro] Ошибка 1
make[1]: *** [apps/designer/CMakeFiles/exaro.dir/all] Ошибка 2
make: *** [all] Ошибка 2
В чем проблема толком не понятно. Зависимости, с горем пополам, установлены.
Заглядывал в /usr/include/propertyvalidator.h - объявление и реализация конструктора присутствуют.
#С Linux я знаком мало, так что не исключено, что что-то неправильно установил\собрал .