суббота, 18 июля 2009 г.
среда, 15 июля 2009 г.
как подружить CMake и ccache
из коробки эти две штуки не работают сообща, что бы сборщик компилировал только изменённые исходники, а не каждый раз всё и сразу нужно:
в /usr/local/bin сделать симлинки на /usr/bin/ccache с названиями: "сс","gcc", "g++"
lrwxrwxrwx 1 root root 15 2009-07-15 00:45 cc -> /usr/bin/ccache
lrwxrwxrwx 1 root root 15 2009-07-15 00:45 g++ -> /usr/bin/ccache
lrwxrwxrwx 1 root root 15 2009-07-15 00:45 gcc -> /usr/bin/ccache
а теперь для cmake нужно указать 2 дополнительных аргумента:
-DCMAKE_C_COMPILER='/usr/local/bin/gcc'
-DCMAKE_CXX_COMPILER='/usr/local/bin/g++'
cmake -DCMAKE_C_COMPILER='/usr/local/bin/gcc' -DCMAKE_CXX_COMPILER='/usr/local/bin/g++' -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` -DCMAKE_BUILD_TYPE=debugfull .. && make
ура, теперь cmake дружит с ccache
в /usr/local/bin сделать симлинки на /usr/bin/ccache с названиями: "сс","gcc", "g++"
lrwxrwxrwx 1 root root 15 2009-07-15 00:45 cc -> /usr/bin/ccache
lrwxrwxrwx 1 root root 15 2009-07-15 00:45 g++ -> /usr/bin/ccache
lrwxrwxrwx 1 root root 15 2009-07-15 00:45 gcc -> /usr/bin/ccache
а теперь для cmake нужно указать 2 дополнительных аргумента:
-DCMAKE_C_COMPILER='/usr/local/bin/gcc'
-DCMAKE_CXX_COMPILER='/usr/local/bin/g++'
cmake -DCMAKE_C_COMPILER='/usr/local/bin/gcc' -DCMAKE_CXX_COMPILER='/usr/local/bin/g++' -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` -DCMAKE_BUILD_TYPE=debugfull .. && make
ура, теперь cmake дружит с ccache
понедельник, 13 июля 2009 г.
Qt creator 1.0 и построчный дебаг амарока
Qt creator отличная сифтина для проектов на C++
Удобный интерфейс и редактор, встроенный дебагер и все работает без бубна..
Единственное - у него странно работает управление проектом..в проекте нет возможности создать папку :) все файлики рядом и никаких суб-дирректорий, серьезно просто нет такого пункта меню, файлы создавать можно а папки нет. это как я понял какие то религиозные убеждения разработчика..
Я уже думал выбросить его из за этого..но..поставил я его что бы покапатся в коде амарока, и в поисках решения как же импортировать исходники(а там много вложенных папок) я наткнулся на решение.
Решение это очень не очевидное но работающее безотказно:
Нужно через File -> Open открыть CMakeLists.txt. для qt creator это что-то типа файла проекта. потом откроется неведомо откуда окно с предложением сделать билд исходников..туда нужно скормить команду типа:
cmake -DCMAKE_INSTALL_PREFIX=`/usr` -DCMAKE_BUILD_TYPE=debugfull .. && make
жмем Build и ура у нас нормальный проект с вложенной структурой папок..только папочки видно не все, только те в которых есть cpp файлы..что является еще одной странностью qtcreator`а..
что мне очень понравилось - дебагер работает из коробки и без всяких настроек, я просто открыл main.cpp и поставил на строчку
int main( int argc, char *argv[] )
брейкпоинт..запускаю дебагер и он работает..класс
есть еще одна фишка, амарак при старте форкается из main в другой процесс
KUniqueApplication::start( startFlag )
по этому на этой строке дебаг слетает и запускается обычный амарок...что бы можно было дебажить недра амарока нужно пнуть кнопку Projects слева, перейти на вкладку Run settings и там в выпадающем меню выбрать custom exacutable. Там прописать путь кк свеже-скомпиленому бинарнику амарока, у меня например
/home/alex/amarokprg/qtcreator-build/src/amarok
и ниже добавить аргумент --nofork.
воскресенье, 12 июля 2009 г.
amarok QSystemTrayIcon::setVisible: No Icon set
поставил амарок 2.1
пропали все картинки/иконки в плеерев консоли вижу
Object::connect: No such signal KLineEdit::downPressed() in /build/buildd/amarok-2.1mysql5.1.30/amarok-2.1/src/widgets/ProgressiveSearchWidget.cpp:57
QSystemTrayIcon::setVisible: No Icon set
QSystemTrayIcon::setVisible: No Icon set
решение: sudo apt-get install kde-icons-oxygen
суббота, 11 июля 2009 г.
Компилирую амарок 2.1 в убунту
пробую собрать амарок из исходников...система всё просит и просит различные пакеты
sudo apt-get install cmake
sudo apt-get install lsb-cxx
sudo apt-get install libtag1-dev
sudo apt-get install libtag-extras-dev
пришлось поставить apt-file что бы найти пакет которому принадлежит файл FindKDE4Internal.cmake
sudo apt-get install kdelibs5-dev
sudo apt-get install liblastfm-ocaml-dev либа для ластфм 30мб...афигеть...
sudo apt-get install libmysqlclient16-dev
sudo apt-get install libstreamanalyzer-dev
libqtscriptbindings1_0.1.0-0ubuntu1~jaunty1_i386.deb
libstrigiqtdbusclient-dev
если говорит что не установлен пакет, который точно установлен - нужно удалить в текущей папке CMakeCache.txt
все у меня пошёл собирать...и собрался, но чёрт, я думал сборка из свн починит отсутствие всех иконок..ан нет
Gnome panel applet и php-gtk
Сегодня занимался поисками возможности написания апплетов для гном панели на php. Не нашёл ничего вменяемого...
в 2006 году парень предлагал биндинг gnome-php как задачу на Google Summer of Code...заявка не прошла
а вообще такая фитча пользовалась бы популярностью среди программистов
Подписаться на:
Сообщения (Atom)