* [newbies] Cmake не может найти QtCore
@ 2011-12-26 15:17 gBopHuk_alt
2011-12-26 15:33 ` Евгений Ростовцев
` (2 more replies)
0 siblings, 3 replies; 17+ messages in thread
From: gBopHuk_alt @ 2011-12-26 15:17 UTC (permalink / raw)
To: devel-newbies
Всем привет =)) Тут такое дело: при сборке пакета на cmake выдает
ошибку : fatal error: QtCore/QList: No such file or directory
установил пакеты libqt4-devel и qt4-devel, но упорно не хочет находить
путь к QtCore. Buildreq добавил ещё два пакета : phonon-devel и
qt4-designer, но ситуация не изменилась. Может можно как-то вручную
указать путь к QtCore?
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-26 15:17 [newbies] Cmake не может найти QtCore gBopHuk_alt
@ 2011-12-26 15:33 ` Евгений Ростовцев
2011-12-26 21:14 ` gBopHuk_alt
2011-12-26 16:16 ` Michael Shigorin
2012-01-13 14:27 ` gBopHuk_alt
2 siblings, 1 reply; 17+ messages in thread
From: Евгений Ростовцев @ 2011-12-26 15:33 UTC (permalink / raw)
To: devel@ where you _can_ ask
26.12.11, gBopHuk_alt<gbophuk_alt@mail.ru> написал(а):
> Всем привет =)) Тут такое дело: при сборке пакета на cmake выдает
> ошибку : fatal error: QtCore/QList: No such file or directory
> установил пакеты libqt4-devel и qt4-devel, но упорно не хочет находить
> путь к QtCore. Buildreq добавил ещё два пакета : phonon-devel и
> qt4-designer, но ситуация не изменилась. Может можно как-то вручную
> указать путь к QtCore?
Для этого хедера достаточно libqt4-devel, путь к нему -
/usr/include/qt4/QtCore/QList
Так что просто достаточно добавить во флаги -I%_includedir/qt4 или же
$(pkg-config QtCore --cflags)
--
REAL aka Евгений Ростовцев, программист ЦНИТ КемГУ
ALT Linux team
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-26 15:17 [newbies] Cmake не может найти QtCore gBopHuk_alt
2011-12-26 15:33 ` Евгений Ростовцев
@ 2011-12-26 16:16 ` Michael Shigorin
2012-01-13 14:27 ` gBopHuk_alt
2 siblings, 0 replies; 17+ messages in thread
From: Michael Shigorin @ 2011-12-26 16:16 UTC (permalink / raw)
To: devel-newbies
On Mon, Dec 26, 2011 at 07:17:47PM +0400, gBopHuk_alt wrote:
> Тут такое дело: при сборке пакета на cmake
На всякий: http://www.altlinux.org/SampleSpecs/cmakeprogram
--
---- WBR, Michael Shigorin <mike@altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-26 15:33 ` Евгений Ростовцев
@ 2011-12-26 21:14 ` gBopHuk_alt
2011-12-27 2:33 ` Евгений Ростовцев
0 siblings, 1 reply; 17+ messages in thread
From: gBopHuk_alt @ 2011-12-26 21:14 UTC (permalink / raw)
To: devel@ where you _can_ ask
В Пнд, 26/12/2011 в 22:33 +0700, Евгений Ростовцев пишет:
> -I%_includedir/qt4
То есть в конец cmake добавить эту штуку?
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-26 21:14 ` gBopHuk_alt
@ 2011-12-27 2:33 ` Евгений Ростовцев
2011-12-27 10:02 ` gBopHuk_alt
0 siblings, 1 reply; 17+ messages in thread
From: Евгений Ростовцев @ 2011-12-27 2:33 UTC (permalink / raw)
To: devel@ where you _can_ ask
27.12.11, gBopHuk_alt<gbophuk_alt@mail.ru> написал(а):
> В Пнд, 26/12/2011 в 22:33 +0700, Евгений Ростовцев пишет:
>> -I%_includedir/qt4
>
> То есть в конец cmake добавить эту штуку?
Нет. Надо перед вызовом cmake добавить строчку:
%add_optflags -I%_includedir/qt4
Далее, если пользуетесь макросом %cmake, то этого и достаточно, а если
вызываете cmake напрямую, надо руками добавить в вызов параметры:
-DCMAKE_C_FLAGS="%optflags" -DCMAKE_CXX_FLAGS="%optflags"
--
REAL aka Евгений Ростовцев, программист ЦНИТ КемГУ
ALT Linux team
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-27 2:33 ` Евгений Ростовцев
@ 2011-12-27 10:02 ` gBopHuk_alt
2011-12-27 10:04 ` Евгений Ростовцев
0 siblings, 1 reply; 17+ messages in thread
From: gBopHuk_alt @ 2011-12-27 10:02 UTC (permalink / raw)
To: devel@ where you _can_ ask
В Втр, 27/12/2011 в 08:33 +0600, Евгений Ростовцев пишет:
> 27.12.11, gBopHuk_alt<gbophuk_alt@mail.ru> написал(а):
> > В Пнд, 26/12/2011 в 22:33 +0700, Евгений Ростовцев пишет:
> >> -I%_includedir/qt4
> >
> > То есть в конец cmake добавить эту штуку?
>
> Нет. Надо перед вызовом cmake добавить строчку:
>
> %add_optflags -I%_includedir/qt4
>
> Далее, если пользуетесь макросом %cmake, то этого и достаточно, а если
> вызываете cmake напрямую, надо руками добавить в вызов параметры:
>
> -DCMAKE_C_FLAGS="%optflags" -DCMAKE_CXX_FLAGS="%optflags"
>
Плохо дело - результат тот-же . Куда можно ещё капнуть?
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-27 10:02 ` gBopHuk_alt
@ 2011-12-27 10:04 ` Евгений Ростовцев
2011-12-27 21:56 ` gBopHuk_alt
0 siblings, 1 reply; 17+ messages in thread
From: Евгений Ростовцев @ 2011-12-27 10:04 UTC (permalink / raw)
To: devel@ where you _can_ ask
> Плохо дело - результат тот-же . Куда можно ещё капнуть?
Самое простое - выложить куда-нибудь то, что Вы собираете, включая и
спек, и дать ссылку сюда. Посмотрим, что там такое.
--
REAL aka Евгений Ростовцев, программист ЦНИТ КемГУ
ALT Linux team
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-27 10:04 ` Евгений Ростовцев
@ 2011-12-27 21:56 ` gBopHuk_alt
2011-12-28 2:34 ` Евгений Ростовцев
0 siblings, 1 reply; 17+ messages in thread
From: gBopHuk_alt @ 2011-12-27 21:56 UTC (permalink / raw)
To: devel@ where you _can_ ask
В Втр, 27/12/2011 в 16:04 +0600, Евгений Ростовцев пишет:
> > Плохо дело - результат тот-же . Куда можно ещё капнуть?
>
> Самое простое - выложить куда-нибудь то, что Вы собираете, включая и
> спек, и дать ссылку сюда. Посмотрим, что там такое.
>
http://dl.dropbox.com/u/6823852/ALT%
20Linux/libvlc-qt/libvlc-qt-0.6.0-alt0.src.rpm
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-27 21:56 ` gBopHuk_alt
@ 2011-12-28 2:34 ` Евгений Ростовцев
2011-12-28 7:47 ` gBopHuk_alt
2011-12-28 8:38 ` gBopHuk_alt
0 siblings, 2 replies; 17+ messages in thread
From: Евгений Ростовцев @ 2011-12-28 2:34 UTC (permalink / raw)
To: devel@ where you _can_ ask
>> > Плохо дело - результат тот-же . Куда можно ещё капнуть?
>>
>> Самое простое - выложить куда-нибудь то, что Вы собираете, включая и
>> спек, и дать ссылку сюда. Посмотрим, что там такое.
>>
> http://dl.dropbox.com/u/6823852/ALT%
> 20Linux/libvlc-qt/libvlc-qt-0.6.0-alt0.src.rpm
У Вас в спеке:
#%add_optflags -I/usr/include/qt4/QtCore
Оно не только закомментировано, его если даже раскомментировать, будет
ошибка. Найдите отличие от того, что я говорил:
%add_optflags -I/usr/include/qt4
Кстати, там ещё в спеке есть косяки:
Group: Multimedia/Video
Группы Multimedia/Video у нас нет, есть Video.
%_libdir/*
[...]
%exclude %_libdir/debug
Так делать не стоит, вместо этого нужно вместо %_libdir/* указывать
более конкретный паттерн:
%_libdir/*.so.*
Ну и добавить подпакет %name-devel, куда пойдут:
%_includedir/*
%_libdir/*.so
%_pkgconfigdir/*
В самом пакете косяк, он кладёт pkg-config файл не в
%_libdir/pkgconfig (во что разворачивается %_pkgconfigdir), а в
%_libexecdir/pkgconfig. Нужно либо
1. править в исходниках: в файле libvlc-qt/pkgconfig/CMakeLists.txt
заменить строку 30 с
INSTALL(FILES ${CMAKE_BINARY_DIR}/pkgconfig/libvlc-qt.pc DESTINATION
${CMAKE_INSTALL_PREFIX}/lib/pkgconfig)
на
INSTALL(FILES ${CMAKE_BINARY_DIR}/pkgconfig/libvlc-qt.pc DESTINATION
${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/pkgconfig)
либо
2. в спеке после вызова %makeinstall_std добавить:
%ifarch x86_64
install -d %buildroot%_pkgconfigdir
mv %buildroot%_libexecdir/pkgconfig/* %buildroot%_pkgconfig/
%endif
--
REAL aka Евгений Ростовцев, программист ЦНИТ КемГУ
ALT Linux team
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-28 2:34 ` Евгений Ростовцев
@ 2011-12-28 7:47 ` gBopHuk_alt
2011-12-28 8:38 ` gBopHuk_alt
1 sibling, 0 replies; 17+ messages in thread
From: gBopHuk_alt @ 2011-12-28 7:47 UTC (permalink / raw)
To: devel@ where you _can_ ask
В Срд, 28/12/2011 в 08:34 +0600, Евгений Ростовцев пишет:
> #%add_optflags -I/usr/include/qt4/QtCore
>
> Оно не только закомментировано, его если даже раскомментировать, будет
> ошибка. Найдите отличие от того, что я говорил:
>
>
Это я уже от безысходности разные варианты перебирал.
Тоже сначала делал с devel пакетом , потом когда ошибки полезли решил
оставить один общий.
Спасибо за подробную инструкцию - попробую теперь собрать.
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-28 2:34 ` Евгений Ростовцев
2011-12-28 7:47 ` gBopHuk_alt
@ 2011-12-28 8:38 ` gBopHuk_alt
2011-12-28 8:48 ` Евгений Ростовцев
1 sibling, 1 reply; 17+ messages in thread
From: gBopHuk_alt @ 2011-12-28 8:38 UTC (permalink / raw)
To: devel@ where you _can_ ask
В Срд, 28/12/2011 в 08:34 +0600, Евгений Ростовцев пишет:
> В самом пакете косяк, он кладёт pkg-config файл не в
> %_libdir/pkgconfig (во что разворачивается %_pkgconfigdir), а в
> %_libexecdir/pkgconfig
Говорит
mv: `/usr/src/tmp/libvlc-qt-buildroot/usr/lib/pkgconfig/libvlc-qt.pc'
and `/usr/src/tmp/libvlc-qt-buildroot/usr/lib/pkgconfig/libvlc-qt.pc'
are the same file
Открыл rpm собранный со старым спеком - по-умолчанию сохраняет
в /usr/lib/pckcongif. Копать нужно куда-то ещё.
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-28 8:38 ` gBopHuk_alt
@ 2011-12-28 8:48 ` Евгений Ростовцев
2011-12-28 9:13 ` gBopHuk_alt
0 siblings, 1 reply; 17+ messages in thread
From: Евгений Ростовцев @ 2011-12-28 8:48 UTC (permalink / raw)
To: devel@ where you _can_ ask
> Говорит
> mv: `/usr/src/tmp/libvlc-qt-buildroot/usr/lib/pkgconfig/libvlc-qt.pc'
> and `/usr/src/tmp/libvlc-qt-buildroot/usr/lib/pkgconfig/libvlc-qt.pc'
> are the same file
Вы забыли обернуть этот перенос в условную конструкцию:
%ifarch x86_64
...
%endif
--
REAL aka Евгений Ростовцев, программист ЦНИТ КемГУ
ALT Linux team
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-28 8:48 ` Евгений Ростовцев
@ 2011-12-28 9:13 ` gBopHuk_alt
2011-12-28 9:16 ` Евгений Ростовцев
0 siblings, 1 reply; 17+ messages in thread
From: gBopHuk_alt @ 2011-12-28 9:13 UTC (permalink / raw)
To: devel@ where you _can_ ask
В Срд, 28/12/2011 в 14:48 +0600, Евгений Ростовцев пишет:
> Вы забыли обернуть этот перенос в условную конструкцию:
>
> %ifarch x86_64
> ...
> %endif
>
>
результат тот же : пакет собирается, но не работает, потому как не может
найти QtCore
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-28 9:13 ` gBopHuk_alt
@ 2011-12-28 9:16 ` Евгений Ростовцев
2011-12-28 9:40 ` gBopHuk_alt
0 siblings, 1 reply; 17+ messages in thread
From: Евгений Ростовцев @ 2011-12-28 9:16 UTC (permalink / raw)
To: devel@ where you _can_ ask
> результат тот же : пакет собирается, но не работает, потому как не может
> найти QtCore
Непонятно: каким образом работа пакета зависит от хедера?
--
REAL aka Евгений Ростовцев, программист ЦНИТ КемГУ
ALT Linux team
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-28 9:16 ` Евгений Ростовцев
@ 2011-12-28 9:40 ` gBopHuk_alt
2011-12-28 9:44 ` Евгений Ростовцев
0 siblings, 1 reply; 17+ messages in thread
From: gBopHuk_alt @ 2011-12-28 9:40 UTC (permalink / raw)
To: devel@ where you _can_ ask
В Срд, 28/12/2011 в 15:16 +0600, Евгений Ростовцев пишет:
> > результат тот же : пакет собирается, но не работает, потому как не может
> > найти QtCore
>
> Непонятно: каким образом работа пакета зависит от хедера?
>
В общем ситуация такая: этот пакет нужен для работы tano-player, при
сборке tano ругается на функцию VLCMediaPlayer, которая не понимает
параметр Qstring. VLCMediaPlayer создаётся libvlc-qt, которая
собирается, но ругается на все QtCore/* :No such file or directory
QtString и все не работающие функции как раз находятся в QtCore.
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-28 9:40 ` gBopHuk_alt
@ 2011-12-28 9:44 ` Евгений Ростовцев
0 siblings, 0 replies; 17+ messages in thread
From: Евгений Ростовцев @ 2011-12-28 9:44 UTC (permalink / raw)
To: devel@ where you _can_ ask
> В общем ситуация такая: этот пакет нужен для работы tano-player, при
> сборке tano ругается на функцию VLCMediaPlayer, которая не понимает
> параметр Qstring. VLCMediaPlayer создаётся libvlc-qt, которая
> собирается, но ругается на все QtCore/* :No such file or directory
> QtString и все не работающие функции как раз находятся в QtCore.
Если tano-player использует pkg-config для получения флагов
компилятора из libvlc-qt, то надо фиксить
libvlc-qt/pkgconfig/libvlc-qt.pc.in. См. строку 10, куда нужно
добавить -I/usr/include/qt4.
В противном случае эти флаги нужно давать самому tano-player. Хотя
libvlc-qt/pkgconfig/libvlc-qt.pc.in пофиксить всё равно не помешает :)
--
REAL aka Евгений Ростовцев, программист ЦНИТ КемГУ
ALT Linux team
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [newbies] Cmake не может найти QtCore
2011-12-26 15:17 [newbies] Cmake не может найти QtCore gBopHuk_alt
2011-12-26 15:33 ` Евгений Ростовцев
2011-12-26 16:16 ` Michael Shigorin
@ 2012-01-13 14:27 ` gBopHuk_alt
2 siblings, 0 replies; 17+ messages in thread
From: gBopHuk_alt @ 2012-01-13 14:27 UTC (permalink / raw)
To: devel@ where you _can_ ask
Запустил cmake c парметром -v
Определил что проблемы возникают с файлами начинающимися на moc_ :
/usr/src/RPM/BUILD/libvlc-qt-0.5.1/BUILD/src/core/moc_Audio.cxx:50:
warning: documented function `const QMetaObject * VlcAudio::metaObject'
was not declared or defined.
/usr/src/RPM/BUILD/libvlc-qt-0.5.1/BUILD/src/core/moc_Audio.cxx:55:
warning: documented function `void * VlcAudio::qt_metacast' was not
declared or defined.
/usr/src/RPM/BUILD/libvlc-qt-0.5.1/BUILD/src/core/moc_Audio.cxx:63:
warning: documented function `int VlcAudio::qt_metacall' was not
declared or defined.
Посмотрел Buildlog от разработчиков, там при генерации moc файлов
используется /usr/bin/moc-qt4
[ 3%] Generating gui/moc_VideoWidget.cxx
cd /build/buildd/libvlc-qt-0.5.1/builddir/src && /usr/bin/moc-qt4
-I/build/buildd/libvlc-qt-0.5.1/builddir/src
-I/build/buildd/libvlc-qt-0.5.1/src -I/usr/include/qt4
-I/usr/include/qt4/QtGui -I/usr/include/qt4/QtCore -DQT_GUI_LIB
-DQT_CORE_LIB
-o /build/buildd/libvlc-qt-0.5.1/builddir/src/gui/moc_VideoWidget.cxx /build/buildd/libvlc-qt-0.5.1/src/gui/VideoWidget.h
/usr/bin/cmake -E
cmake_progress_report /build/buildd/libvlc-qt-0.5.1/builddir/CMakeFiles
23
А у меня /usr/lib/qt4/bin/moc
[ 27%] Generating gui/moc_VideoWidget.cxx
cd /usr/src/RPM/BUILD/libvlc-qt-0.5.1/BUILD/src && /usr/lib/qt4/bin/moc
-I/usr/src/RPM/BUILD/libvlc-qt-0.5.1/BUILD/src
-I/usr/src/RPM/BUILD/libvlc-qt-0.5.1/src -I/usr/include/qt4
-I/usr/include/qt4/QtGui -I/usr/include/qt4/QtCore -DQT_GUI_LIB
-DQT_CORE_LIB
-o /usr/src/RPM/BUILD/libvlc-qt-0.5.1/BUILD/src/gui/moc_VideoWidget.cxx /usr/src/RPM/BUILD/libvlc-qt-0.5.1/src/gui/VideoWidget.h
/usr/bin/cmake -E
cmake_progress_report /usr/src/RPM/BUILD/libvlc-qt-0.5.1/BUILD/CMakeFiles 35
Может они как-то по разному обрабатывают файл?
Buildlog у разрабов был только под ubuntu
При сборке tano-player ругается на файлы libvlc-qt:
/usr/src/RPM/BUILD/tano-player-0.8.1/src/ui/MainWindow.cpp:484:30:
error: no matching function for call to 'VlcMediaPlayer::open(const
QString&)'
/usr/include/vlc-qt/MediaPlayer.h:103:10: note: candidate is: void
VlcMediaPlayer::open(VlcMedia*)
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2012-01-13 14:27 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-12-26 15:17 [newbies] Cmake не может найти QtCore gBopHuk_alt
2011-12-26 15:33 ` Евгений Ростовцев
2011-12-26 21:14 ` gBopHuk_alt
2011-12-27 2:33 ` Евгений Ростовцев
2011-12-27 10:02 ` gBopHuk_alt
2011-12-27 10:04 ` Евгений Ростовцев
2011-12-27 21:56 ` gBopHuk_alt
2011-12-28 2:34 ` Евгений Ростовцев
2011-12-28 7:47 ` gBopHuk_alt
2011-12-28 8:38 ` gBopHuk_alt
2011-12-28 8:48 ` Евгений Ростовцев
2011-12-28 9:13 ` gBopHuk_alt
2011-12-28 9:16 ` Евгений Ростовцев
2011-12-28 9:40 ` gBopHuk_alt
2011-12-28 9:44 ` Евгений Ростовцев
2011-12-26 16:16 ` Michael Shigorin
2012-01-13 14:27 ` gBopHuk_alt
devel@ where you _can_ ask
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel-newbies/0 devel-newbies/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel-newbies devel-newbies/ http://lore.altlinux.org/devel-newbies \
devel-newbies@lists.altlinux.org devel-newbies@lists.altlinux.ru devel-newbies@lists.altlinux.com
public-inbox-index devel-newbies
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel-newbies
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git