LinuxForum.Fans
Тема

сборка kde-стиля

Автор: Fat-Zer 3 сообщений 1647 просмотров
#166524

вопрос скорее по cmake'у. собираю стиль keramik для qt4/kde4.

Показать
[console]alexander@goblin /tmp $ tar -xjf /store/distros/gentoo/distfiles/kdebase-workspace-4.6.2.tar.bz2
alexander@goblin /tmp $ cd kdebase-workspace-4.6.2/
alexander@goblin /tmp/kdebase-workspace-4.6.2 $ ls
cmake COPYING freespacenotifier kdm kscreensaver ksysguard mkpamserv solid
CMakeLists.txt COPYING.DOC kcheckpass khotkeys kscreensaver.pamd ksystraycmd plasma startkde.cmake
config-unix.h.cmake COPYING.LIB kcminit kinfocenter ksmserver kwin powerdevil statusnotifierwatcher
ConfigureChecks.cmake CTestConfig.cmake kcontrol klipper ksplash kwrited qguiplatformplugin_kde systemsettings
config-workspace.h.cmake cursors KDE4WorkspaceConfig.cmake.in kmenuedit kstartupconfig libs README wallpapers
config-X11.h.cmake doc kde.pamd krunner kstyles Mainpage.dox README.pam
alexander@goblin /tmp/kdebase-workspace-4.6.2 $ ls kstyles/
CMakeLists.txt highcolor highcontrast keramik light Mainpage.dox Messages.sh oxygen themes web
alexander@goblin /tmp/kdebase-workspace-4.6.2 $ ls kstyles/keramik/
bitmaps.h CMakeLists.txt colorutil.cpp colorutil.h config genembed.cpp gradients.cpp gradients.h keramik.cpp keramikimage.h pics pixmaploader.cpp pixmaploader.h
alexander@goblin /tmp/kdebase-workspace-4.6.2 $ mkdir build
alexander@goblin /tmp/kdebase-workspace-4.6.2 $ cd build/
alexander@goblin /tmp/kdebase-workspace-4.6.2/build $ cmake ../kstyles/keramik/
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
CMake Error at CMakeLists.txt:4 (find_package):
Could not find module FindQImageBlitz.cmake or a configuration file for
package QImageBlitz.

Adjust CMAKE_MODULE_PATH to find FindQImageBlitz.cmake or set
QImageBlitz_DIR to the directory containing a CMake configuration file for
QImageBlitz. The file will have one of the following names:

QImageBlitzConfig.cmake
qimageblitz-config.cmake



CMake Error at config/CMakeLists.txt:9 (kde4_add_plugin):
Unknown CMake command "kde4_add_plugin".


CMake Warning (dev) in CMakeLists.txt:
No cmake_minimum_required command is present. A line of code such as

cmake_minimum_required(VERSION 2.8)

should be added at the top of the file. The version specified may be lower
if you wish to support older CMake versions for this project. For more
information run "cmake --help-policy CMP0000".
This warning is for project developers. Use -Wno-dev to suppress it.

-- Configuring incomplete, errors occurred!
[/console]

пакет QImageBlitz установлен. упомянутый файл ни где не найду...
в общем вопрос для начала: как вообще работает find_package ?

#166820

Напишите свой модуль для поиска хедеров и либы. Вот пример:

text
FIND_PATH(XATTR_INCLUDE xattr.h
  ${XATTR_PREFIX}/include/attr
  /usr/include/attr
)

FIND_LIBRARY(XATTR_LIB NAMES attr PATHS /usr/lib ${XATTR_PREFIX}/lib )

IF(XATTR_INCLUDE AND XATTR_LIB) SET(XATTR_FOUND TRUE) SET(XATTR_INCLUDE_DIRS ${XATTR_INCLUDE}) SET(XATTR_LIBRARIES ${XATTR_LIB}) ELSE(XATTR_INCLUDE AND XATTR_LIB) SET(XATTR_FOUND FALSE) ENDIF(XATTR_INCLUDE AND XATTR_LIB)

Называете файл FindXattr.cmake и помещаете его в project_dir/cmake. В сценарии выполняете find_package (Xattr). Надеюсь пример понятен.

#166920

спасибо за разъяснение, проблема оказалась в другом месте.... в каталоге выше строчка "add_subdirectory( keramik )" была закомментирована.

Собрал, и понял почему она была закомментирована - тема недописана...

[added]
Глянул в исходники... ну там и жесть...

Войдите или зарегистрируйтесь, чтобы ответить.