Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Сборка программы с помощью CMake


Автор: Fover 11.5.2014, 22:43
Здравствуйте! Помогите собрать программу, я начинающий и много не знаю.
Я скачал одну программу с гитхаба, вот исходные файлы удалено модератором
Скомпилировал в Cmake, вроде все нормально, но дальше как я понял надо работать в Visual Studio, но там не запускается выдает кучу ошибок.
Пробовал в Visual Studio 9.0 и 12.0 
Помогите, пожалуйста. Заранее всем спасибо.

Автор: bsa 12.5.2014, 11:32
Fover, если хочешь помощи, кидай ссылку на гитхаб, а не на файлообменник.

Автор: Fover 12.5.2014, 12:49
Цитата(bsa @ 12.5.2014,  11:32)
Fover, если хочешь помощи, кидай ссылку на гитхаб, а не на файлообменник.

Ой дико извиняюсь. Вот ссылка на гитхабе https://github.com/lue/hertools

Автор: bsa 12.5.2014, 13:37
Цитата(Fover @  11.5.2014,  23:43 Найти цитируемый пост)
Скомпилировал в Cmake, вроде все нормально, но дальше как я понял надо работать в Visual Studio, но там не запускается выдает кучу ошибок.
Как ты скомпилировал "в Cmake"? И причем тут вообще студия?

Для компиляции проекта тебе нужна библиотека png++ (не только lib/dll, но еще и *.h!!!) и CMake. Найди и установи их. Затем запусти консоль mingw или msvc, перейди в каталог, где лежит проект hertools, и дай команду cmake. Скорее всего, она ругнется на отсутствие png++. надо задать в параметрах путь к ней. Параметры можно найти в описании cmake.
Дай команду cmake еще раз. Если конфигурирование пройдет успешно (не будет надписей Error и Fail), то теперь можешь уже компилировать. Для этого используй команды nmake (msvc) или make/mingw32-make (mingw). Если и они завершились без ошибок, то экзешники лежат в каталоге src. Запускать их надо из консоли. Не забудь положить dll от png++ рядом с ними.


Автор: Fover 12.5.2014, 15:13
bsa, Пишет ошибку Linking CXX shared library libHERtools.dll
P.S. использовал mingw

Автор: bsa 13.5.2014, 11:02
Fover, там кроме этого сообщения еще несколько. Ты png++ поставил?

Автор: Fover 13.5.2014, 21:40
Цитата(bsa @ 13.5.2014,  11:02)
Fover, там кроме этого сообщения еще несколько. Ты png++ поставил?

Библиотеку счкачал какую-то, там есть .h файл, но нет lib/dll библиотек. И с dll вообще не нашел нигде.

Автор: bsa 15.5.2014, 10:28
http://www.nongnu.org/pngpp/
Там не один *.h файл, а куча *.hpp. Более того, она не работает без libpng. А вот она уже имеет и lib, и dll. Идешь на сайт libpng, качаешь исходники, распаковываешь, читаешь инструкцию, компилируешь, устанавливаешь и вуаля.

Автор: Fover 17.5.2014, 10:05
Что то я не понял как компилировать библиотеку libpng. Zlib тоже что-то туго у меня с ним, но я скачал готовые .lib и .dll, но все равно не компилируется libpng, или я что-то не так делаю?

Автор: bsa 21.5.2014, 19:49
Fover, ответ "не компилируется" говорит о том, что проблему решать ты не хочешь. А хочешь, чтобы тебе дали все готовое. Но этого не будет.

Автор: Fover 22.5.2014, 08:42
Я хочу научиться собирать библиотеки, прежде мне не приходилось их собирать, но тут видно помощи не стоит ждать.
Лан пойду в других местах спрошу. 

Автор: bsa 25.6.2014, 09:38
Что проблемный экзешник говорит при запуске? Может ему просто библиотек не хватает?

Автор: Fover 25.6.2014, 09:49
Цитата(bsa @  25.6.2014,  09:38 Найти цитируемый пост)
Что проблемный экзешник говорит при запуске? Может ему просто библиотек не хватает?

Невозможно запустить приложение на Вашем ПК. Чтобы найти версию и блаблабла... И еще он зачем то весит 0кб.

А еще я возможно как-то криво поставил библеотеку PNG++, однако два других exe-шника работают. В интсрукции указано что PNG++ компилировать не надо.

При сборке проги, сначала собирается avfdec.exe, вылетает ошибка "Прекращена работа программы ld.exe". Вот скрин ошибки в командной строке:

user posted image

Далее снова даю команду и собираются два других exe без проблем.


Автор: bsa 27.6.2014, 10:58
найди файл link в каталоге avfdec.dir. И скопируй сюда его содержимое.

Автор: Fover 27.6.2014, 11:13
Цитата(bsa @  27.6.2014,  10:58 Найти цитируемый пост)
найди файл link в каталоге avfdec.dir. И скопируй сюда его содержимое. 

"C:\Program Files (x86)\CMake 2.8\bin\cmake.exe" -E remove -f CMakeFiles\avfdec.dir/objects.a
C:\MinGW\bin\ar.exe cr CMakeFiles\avfdec.dir/objects.a @CMakeFiles\avfdec.dir\objects1.rsp
C:\MinGW\bin\g++.exe  -Wall -std=c++11    -Wl,--whole-archive CMakeFiles\avfdec.dir/objects.a -Wl,--no-whole-archive  -o avfdec.exe -Wl,--out-implib,libavfdec.dll.a -Wl,--major-image-version,0,--minor-image-version,0  ..\lib\libHERtools.dll.a C:\MinGW\bin\libpng12.dll C:\MinGW\bin\zlib1.dll -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 

Вот такой...

Автор: bsa 27.6.2014, 11:21
Так вот, убедись, что есть ..\lib\libHERtools.dll.a, C:\MinGW\bin\libpng12.dll и C:\MinGW\bin\zlib1.dll.

Автор: Fover 27.6.2014, 11:39
bsa, все на местах

По той ссылке с гитхаба появилась новая версия программы. Она требует библиотеку theora. Я ее скачал, но собрать не могу. Делаю ./configure, но все равно не появляется  Makefile, есть только Makefile.am и Makefile.in


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)