Comments 147
Кстати в КДЕ4 есть бинарные часы в стандартной поставке, я ими тоже почему то пользуюсь:


во! они, как и все, — двоично-десятичные, а мне хотелось полностью двоичные :-)
согласен, но они объективно удобнее.
Мне больше такой вариант нравится, тут эстетичность, не так сильно усложняет восприятие. Твой вариант так, для побаловаться. А для повседневного лично мне такой больше нравится.
Мне больше такой вариант нравится, тут эстетичность, не так сильно усложняет восприятие. Твой вариант так, для побаловаться. А для повседневного лично мне такой больше нравится.
А они точно двоично-десятичные? Просто я сталкивался с конструкциями, когдя 2/3 старших разряда смещены в правый столбец для удобства чтения. (увы, сам проверить никак не могу)
Полностью двоичные должны показывать unix time!
предлагаю написать для QNix в 16-й системе :)
предлагаю написать для QNix в 16-й системе :)
Мне их так не хватает в винде :(
я уже пару месяцев только такими часами пользуюсь на своей рабочей тачке)
Фигею молча…
ну блин нет слов просто!!!
часики наручне где купить то можно??
Очень вдруг захотелось приобрести
часики наручне где купить то можно??
Очень вдруг захотелось приобрести
Смотрите сайт, я кроме ниго ничего не знаю. Мне подарили :-)
$242.30
за часы в целом не дорого
но мне кажется что за эти дороговато
ну что ж если не найду дешевле придется брать!!!
за часы в целом не дорого
но мне кажется что за эти дороговато
ну что ж если не найду дешевле придется брать!!!
www.thinkgeek.com/homeoffice/lights/59e0/
LED Binary Clock $19.99 — $27.99 в зависимости от расцветки…
LED Binary Clock $19.99 — $27.99 в зависимости от расцветки…
www.thinkgeek.com/gadgets/watches/6a17/
наручный вариант за $69.99
наручный вариант за $69.99
вот несколько интересных вариантов нашел для себя, может и тебе понравятся:
www.stormwatches.com/watches/mens/mk-2-circuit--11084
www.stormwatches.com/watches/mens/vibe-11025
правда они показывают время не в двоичной системе, но смотрятся шикарно!
www.stormwatches.com/watches/mens/mk-2-circuit--11084
www.stormwatches.com/watches/mens/vibe-11025
правда они показывают время не в двоичной системе, но смотрятся шикарно!
я купил неделю занад именно эти часы как у автора на картинке. суппер :)
я купил неделю занад именно эти часы как у автора на картинке. суппер :)
покупал их в Штуттгарте, Германия за 149 евро (2 года гарантии). Место продажи нашел на сайте The One — www.01theone.com/
Автору пасибо за статью, для меня актуально :)
покупал их в Штуттгарте, Германия за 149 евро (2 года гарантии). Место продажи нашел на сайте The One — www.01theone.com/
Автору пасибо за статью, для меня актуально :)
Он по лкм должен закрыватся?
101011 — 5*8+3 = 43.
я к стрелкам Seiko после дигитов Casio привыкал очень долго, а тут такая мясорубка. Представьте, а если за рулем время смотреть по таким? Да и пешком в открытый люк можно сигануть пока считаешь.
Было бы забавно если б они еще показывали не обычное время а unix-time. Вот это настоящий хардкор)
Это идея! Можно внизу пустить строку маленких LEDов c юникстаймом!
Пожелание записано! (и мне оно нравится :-))
Пожелание записано! (и мне оно нравится :-))
кстати, задумался что довольно часто лезу в консоль посмотреть unix-time при администрировании, ковырянии в БД и скриптах. думаю даже была бы польза от такого хардкора
…
подумал, и повесил на хоткей
date +%s | xclip -sel clipboard
…
подумал, и повесил на хоткей
date +%s | xclip -sel clipboard
Идешь по улице, прохожий попросить сказать, сколько сейчас времени… А вы стоите и думаете, блин, сколько же…: )
А если вместо ответа — просто показать часы, то ненулевой шанс схлопотать :)
— Который час?
— Вот, смотрите!
— Вот, смотрите!
Да, как в анекдоте — некогда мне 11 на 15 делить, сам дели :)
у меня точно такие же часы и однажды был случай когда я шел по городу, как говорят «весь в себе» и очень неожиданно у меня как раз спросили время, я жутко растеряно повтыкал в свои часы (спросивший кстати тоже) и ответил с очень глупой улыбкой, что не имею ни малейшего понятия о том, который же сейчас час :)))
Черт, хочу!
может вы сделаете always on top и скомпилите в exe? поставил бы на десктоп. Был бы рад.
очепяточка небольшая (я думаю):
"...16+7 но это очень ложно складывать..."
"...16+7 но это очень ложно складывать..."
Как-то автор довольно сложно понимает перевод из двоичной системы в десятичную…
Вот как это понимаю я:
1001 → 8+1 = 9
10101 → 1+4+16 = 21
именно для упрощения восприятия на часиках и написаны веса разрядов.
ЗЫ: не спорю — кому-то может быть и проще запоминать конкретные значения, кому-то проще понимать, что 1010 — это сдвинутое 101, которое = 5, а значит 1010 — это 10. Но мне проще (если ещё не отложилось в моск) складывать.
ЗЫЫ: Надеюсь мой подход для кого-то окажется полезным =)
Вот как это понимаю я:
1001 → 8+1 = 9
10101 → 1+4+16 = 21
именно для упрощения восприятия на часиках и написаны веса разрядов.
ЗЫ: не спорю — кому-то может быть и проще запоминать конкретные значения, кому-то проще понимать, что 1010 — это сдвинутое 101, которое = 5, а значит 1010 — это 10. Но мне проще (если ещё не отложилось в моск) складывать.
ЗЫЫ: Надеюсь мой подход для кого-то окажется полезным =)
Хм! Поместил в Избранное
А я наверно очень глуп… :( Скачал часы от сюда www.rexi.org/software/binclock/ и никак не пойму как на них считать…
Вы безумный! :)
И молодец.
И молодец.
16+7 сложнее чем 5*4 + 3?.. Вы угадали с рубрикой :)
ну и ну ;)
теперь очередь за тем, кто сделает это в другой системе счисления. В 16-ричной, например
В 16-ричной еще проще, меньше операций сложения для перевода в десятичную, но это не тру :)
Идея для дизайнерских часов: показывать время цветом в RGB. К примеру, 16:30:47 == #101E2f. И он будет пла-а-а-авно меняться с каждой секундой %)
Хотя очень темно получится… Максимально светлый цвет будет за секунду до полуночи: 23:59:59 == #173B3B.
С другой стороны, можно умножить на коэффициент. К примеру, на 4 — тогда будет охвачен почти весь RGB.
Хотя очень темно получится… Максимально светлый цвет будет за секунду до полуночи: 23:59:59 == #173B3B.
С другой стороны, можно умножить на коэффициент. К примеру, на 4 — тогда будет охвачен почти весь RGB.
Прикольно.
Есть небольшие стилистические замечания.
* имена хидеров не совпадают с именами классов
* переменные цикла лучше объявлять внутри цикла
например:
for (int i = 0; i < 10; ++i)…
* зачем писать this->…?
* смешивание стилей именования переменных click_pos, displayDots
* в C++ есть более элегантные способы объявления констат, чем через #define
мне больше всего нравиться вот такой способ
enum { ZOC_WINDOW_EIDTH = 54 };
Есть небольшие стилистические замечания.
* имена хидеров не совпадают с именами классов
* переменные цикла лучше объявлять внутри цикла
например:
for (int i = 0; i < 10; ++i)…
* зачем писать this->…?
* смешивание стилей именования переменных click_pos, displayDots
* в C++ есть более элегантные способы объявления констат, чем через #define
мне больше всего нравиться вот такой способ
enum { ZOC_WINDOW_EIDTH = 54 };
Забавная шутка, только используя ее сейчас и не смотря в окно не известно сколько сейчас часов 3 часа дня или 3 часа ночи. Можно сделать один из неиспользуемых разрядов в часах для обозначение p.m., a.m. или выводить часы от 000000 (0) до 010111 (23).
Я немного дописал код, что бы можно было выводить часы и в 12 и в 24 системах.
В файле zoclock.h добавил константу:
ZOC_CLOCK_TYPE_24 0
ZOC_CLOCK_TYPE_24 1
А вот архивчик с дописанным кодом.
Я немного дописал код, что бы можно было выводить часы и в 12 и в 24 системах.
В файле zoclock.h добавил константу:
ZOC_CLOCK_TYPE_24 0

ZOC_CLOCK_TYPE_24 1

А вот архивчик с дописанным кодом.
а часы то где такие заказать? :)
можно сделать, чтоб эти часики ещё в тетрис трансформировались. Так поиграл — «о! время-то изменилось! пора домой!»
Буду благодарен если кто-нибудь выложит бинарник этих часов под win32
А зачем оно вообще надо?
Начнем с того, чем вас не устаивают часи в десятичной системе?
Начнем с того, чем вас не устаивают часи в десятичной системе?
Чтобы мозг не атрофировался. =)
p.s. у меня тоже такие часы есть
p.s. у меня тоже такие часы есть
А чем вас не устраивает способ вообще обходится без часов тогда уж, ведь есть небо над головой — никто не отменял способ определения времени по солнцу, луне и звездам. У меня, к примеру, дядя довольно не плохо справляется с этой задачей, причем даже без компаса :)))
Вау, интересная вещь!
Мне понравились троичные часы, о троичной логике тут писали недавно.
(Синхрон)
(Синхрон)
juick.com/150795 Скрипт на bash для conky реализует похожий функционал
А я хочу себе не двоичные, а троичные часы, небольшой экранчик и 4 гармоники на экране, чистый дзен на такие смотреть trinary.ru/projects/sinchron/
А откуда Вам покупали такие часы? По приведенной ссылке только каталог, а дистрибьютора в моей стране нету.
Кстати, мне большое вот большое такой способ запоминания стандартных двоичных кодов десятичных чисел понравился:
1010 = 8+2 = 10
8421
Т.е. тут первая цифра — единица, ей соотв. ноль, тогда ноль, вторая цифра — двойка, ей соотв. 1, т.е. 2 и т.д.
1111 = 8+4+2+1 = 15
8421
101 = 4+1 = 5
421
1010 = 8+2 = 10
8421
Т.е. тут первая цифра — единица, ей соотв. ноль, тогда ноль, вторая цифра — двойка, ей соотв. 1, т.е. 2 и т.д.
1111 = 8+4+2+1 = 15
8421
101 = 4+1 = 5
421
Нас с этим «хитрым способом» познакомили на уроках информатики в 8-м классе, и я знать не знал, что нас посвятили в какое-то «тайное знание». Более того: я другого способа как-то и представить не могу, кроме как использование степеней двойки. Ибо использование степени основания — основополагающий принцип составления чисел в любой системе счисления (включая десятичную).
a1f0 = 10*16^3 + 1*16^2 + 15*16^1 + 0*16^0 - шестнадцатиричная 2341 = 2*10^3 + 3*10^2 + 4*10^1 + 1*10^0 - десятичная 1010 = 1*2^3 + 0*2^2 + 1*2^1 + 0*2^0 - двоичная
Уже полгода крутится двоичный таймер на koibas.ru — когда открытие сайта? ;)
судя по исходнику — Aug 1, 2009
Там можно и не по исходнику посчитать. Нужно найти разряд, который отсчитывает секунды. Всё что слева — время в секундах до открытия, справа — типа эмуляция бесконечно точного таймера с дискретным отображением )
либо я торможу, либо мой браузер, но у меня было целых _пять_ разрядов, которые я подозревал в том, что они отображают секунды.
посчитав по одному из них, я получил какую-то совершенно дикую сумму, плюнул, и посмотрел исходник :)
посчитав по одному из них, я получил какую-то совершенно дикую сумму, плюнул, и посмотрел исходник :)
а можно бинарник под Win?
А у меня под убунтой не компилится, а так хотелось :(
~/Downloads$ cd zoclock/
~/Downloads/zoclock$ ls
COPYING MANIFEST README src zoclock.pro
~/Downloads/zoclock$ qmake
~/Downloads/zoclock$ ls
bin build COPYING Makefile MANIFEST README src zoclock.pro
~/Downloads/zoclock$ make
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DZOCVERSION=1.0.0 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -Ibuild/ -o build/popupmenu.o src/popupmenu.cpp
make: g++: Command not found
make: *** [build/popupmenu.o] Error 127
~/Downloads$ cd zoclock/
~/Downloads/zoclock$ ls
COPYING MANIFEST README src zoclock.pro
~/Downloads/zoclock$ qmake
~/Downloads/zoclock$ ls
bin build COPYING Makefile MANIFEST README src zoclock.pro
~/Downloads/zoclock$ make
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DZOCVERSION=1.0.0 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -Ibuild/ -o build/popupmenu.o src/popupmenu.cpp
make: g++: Command not found
make: *** [build/popupmenu.o] Error 127
h0rr0rr_drag0n прав. Или у вас нет g++, или к нему не прописан путь. И то и другое очень странно.
Попробуйте поискать g++:
$ find / -name 'g++'
если он нашёлся, то посмотрите, прописан ли путь к нему
$ echo $PATH
Попробуйте поискать g++:
$ find / -name 'g++'
если он нашёлся, то посмотрите, прописан ли путь к нему
$ echo $PATH
>Или у вас нет g++, или к нему не прописан путь. И то и другое очень странно.
Ничего странного: в Убунте действительно по дефолту не установлен g++ :)
Так что решение проблемы — $ sudo aptitude install g++
Ничего странного: в Убунте действительно по дефолту не установлен g++ :)
Так что решение проблемы — $ sudo aptitude install g++
теперь следующая проблема :)
~/Downloads/zoclock$ make
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DZOCVERSION=1.0.0 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -Ibuild/ -o build/popupmenu.o src/popupmenu.cpp
In file included from src/popupmenu.cpp:20:
src/popupmenu.h:23:17: error: QMenu: No such file or directory
In file included from src/popupmenu.cpp:20:
src/popupmenu.h:26: error: expected class-name before ‘{’ token
src/popupmenu.h:28: error: ISO C++ forbids declaration of ‘Q_OBJECT’ with no type
src/popupmenu.h:30: error: expected ‘;’ before ‘typedef’
src/popupmenu.h:33: error: ISO C++ forbids declaration of ‘QAction’ with no type
src/popupmenu.h:33: error: expected ‘;’ before ‘*’ token
src/popupmenu.h:36: error: expected `)' before ‘*’ token
src/popupmenu.h:41: error: expected primary-expression before ‘void’
src/popupmenu.h:41: error: ISO C++ forbids declaration of ‘signals’ with no type
src/popupmenu.h:41: error: expected ‘;’ before ‘void’
src/popupmenu.h:43: error: expected `:' before ‘slots’
src/popupmenu.h:44: error: expected primary-expression before ‘void’
src/popupmenu.h:44: error: ISO C++ forbids declaration of ‘slots’ with no type
src/popupmenu.h:44: error: expected ‘;’ before ‘void’
src/popupmenu.cpp:23: error: expected `)' before ‘*’ token
src/popupmenu.cpp: In member function ‘bool PopupMenu::is_window_locked()’:
src/popupmenu.cpp:63: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: In member function ‘void PopupMenu::set_window_lock(bool)’:
src/popupmenu.cpp:69: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:76: error: no ‘void PopupMenu::color_0()’ member function declared in class ‘PopupMenu’
src/popupmenu.cpp: In member function ‘void PopupMenu::color_1()’:
src/popupmenu.cpp:83: error: ‘emit’ was not declared in this scope
src/popupmenu.cpp:83: error: expected `;' before ‘set_color’
make: *** [build/popupmenu.o] Error 1
~/Downloads/zoclock$ make
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DZOCVERSION=1.0.0 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -Ibuild/ -o build/popupmenu.o src/popupmenu.cpp
In file included from src/popupmenu.cpp:20:
src/popupmenu.h:23:17: error: QMenu: No such file or directory
In file included from src/popupmenu.cpp:20:
src/popupmenu.h:26: error: expected class-name before ‘{’ token
src/popupmenu.h:28: error: ISO C++ forbids declaration of ‘Q_OBJECT’ with no type
src/popupmenu.h:30: error: expected ‘;’ before ‘typedef’
src/popupmenu.h:33: error: ISO C++ forbids declaration of ‘QAction’ with no type
src/popupmenu.h:33: error: expected ‘;’ before ‘*’ token
src/popupmenu.h:36: error: expected `)' before ‘*’ token
src/popupmenu.h:41: error: expected primary-expression before ‘void’
src/popupmenu.h:41: error: ISO C++ forbids declaration of ‘signals’ with no type
src/popupmenu.h:41: error: expected ‘;’ before ‘void’
src/popupmenu.h:43: error: expected `:' before ‘slots’
src/popupmenu.h:44: error: expected primary-expression before ‘void’
src/popupmenu.h:44: error: ISO C++ forbids declaration of ‘slots’ with no type
src/popupmenu.h:44: error: expected ‘;’ before ‘void’
src/popupmenu.cpp:23: error: expected `)' before ‘*’ token
src/popupmenu.cpp: In member function ‘bool PopupMenu::is_window_locked()’:
src/popupmenu.cpp:63: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: In member function ‘void PopupMenu::set_window_lock(bool)’:
src/popupmenu.cpp:69: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:76: error: no ‘void PopupMenu::color_0()’ member function declared in class ‘PopupMenu’
src/popupmenu.cpp: In member function ‘void PopupMenu::color_1()’:
src/popupmenu.cpp:83: error: ‘emit’ was not declared in this scope
src/popupmenu.cpp:83: error: expected `;' before ‘set_color’
make: *** [build/popupmenu.o] Error 1
Это не находятся файлы заголовков. У вас, видимо, не стоит девелоперская часть Qt. Или стоит, но в нестандартном месте (что мало вероятно). Спросите у знающих людей, как в вашем дистрибутиве поставить девелоперскую часть Qt. Или погуглите.
Вам надо сделать что-то в таком духе
sudo apt-get install libqt4-dev
ключевые моменты — цифра «4» и префикс "-dev"; остальное может отличаться
Вам надо сделать что-то в таком духе
sudo apt-get install libqt4-dev
ключевые моменты — цифра «4» и префикс "-dev"; остальное может отличаться
Поставил libqt4-dev — не помогло… больше идей нет? :)
Ошибка осталась той же!
Прежде всего, всё сотрите, переразверните архив и снова сделайте qmake. Возможно, теперь qmake правильно найдёт все пути и сделает правильный Makefile. Если это не поможет — пишиет :-) будем дальше разбираться :-)
Спасибо вам за упорство :-)
Спасибо вам за упорство :-)
Это вам спасибо за отзывчивость :)
Но, к сожалению, это не помогло.
Меня смущает, что qmake отрабатывает моментально и не дает вывода. И еще одна вещь — появляющиеся после qmake каталоги build и bin — пусты, это нормально?)
Но, к сожалению, это не помогло.
Меня смущает, что qmake отрабатывает моментально и не дает вывода. И еще одна вещь — появляющиеся после qmake каталоги build и bin — пусты, это нормально?)
Нормально. build наполнятеся временными файлами во время сборки (а её у Вас пока не происходит), а в bin потом кладётся готовый бинарник.
Я предлагаю такое решение.
1. Сперва поищите, куда же всё встало
find / -type f -name 'QMenu'
(Слово QMenu потому, что ваша ошибка «error: QMenu: No such file or directory») Я на это получаю строчку /usr/local/include/qt4/QtGui/QMenu, у вас должно получиться что-то в этом же духе
2. Открываете файл Makefile, находите там строчку вида
INCPATH = -I… (она обычно очень длинная)
В неё дописываете "-I ваш путь к QMenu" (у меня там есть соотвествующая строка "-I/usr/local/include/qt4/QtGui"; у меня её qmake сам создаёт, как это и должно быть)
3. make
(qmake больше не знапускайте! он перепишет Makefile назад и потрёт всю вашу работу)
4. Если снова возникли похожие ошибки — повторяем итерацию :-)
1. Сперва поищите, куда же всё встало
find / -type f -name 'QMenu'
(Слово QMenu потому, что ваша ошибка «error: QMenu: No such file or directory») Я на это получаю строчку /usr/local/include/qt4/QtGui/QMenu, у вас должно получиться что-то в этом же духе
2. Открываете файл Makefile, находите там строчку вида
INCPATH = -I… (она обычно очень длинная)
В неё дописываете "-I ваш путь к QMenu" (у меня там есть соотвествующая строка "-I/usr/local/include/qt4/QtGui"; у меня её qmake сам создаёт, как это и должно быть)
3. make
(qmake больше не знапускайте! он перепишет Makefile назад и потрёт всю вашу работу)
4. Если снова возникли похожие ошибки — повторяем итерацию :-)
Нужно будет тогда добавить не только путь к QtGui, но и к QtCore, потому что у Вас и оттуда классы используются (QTime, QSettings).
А можно решить проблему раз и навсегда, без вмешательства со стороны пользователей ;)
Патч тут: pastebin.com/m44be2b67
А можно решить проблему раз и навсегда, без вмешательства со стороны пользователей ;)
Патч тут: pastebin.com/m44be2b67
Чёрт, там съедаются @@ в начале строк =\
Продублировал патч тут: snipt.org/kkll
Продублировал патч тут: snipt.org/kkll
Прошу прощения за назойливость :)
Путь к QMenu в Makefile я прописал. Начало ругаться вот так:
/usr/include/qt4/QtGui/qmenu.h:45:27: error: QtGui/qwidget.h: No such file or directory
/usr/include/qt4/QtGui/qmenu.h:46:28: error: QtCore/qstring.h: No such file or directory
/usr/include/qt4/QtGui/qmenu.h:47:25: error: QtGui/qicon.h: No such file or directory
/usr/include/qt4/QtGui/qmenu.h:48:27: error: QtGui/qaction.h: No such file or directory
Я подправил файл qmenu.h и удалил QtGui/ и QtCore/, правильно ли я сделал? Может ли это помешать корректной работе других приложений? ))
Потом стало ругаться вот так:
/usr/include/qt4/QtGui/qicon.h:45:28: error: QtCore/qglobal.h: No such file or directory
/usr/include/qt4/QtGui/qicon.h:46:26: error: QtCore/qsize.h: No such file or directory
/usr/include/qt4/QtGui/qicon.h:47:26: error: QtCore/qlist.h: No such file or directory
/usr/include/qt4/QtGui/qicon.h:48:27: error: QtGui/qpixmap.h: No such file or directory
Я поменял файл qicon.h.
И теперь стало ругаться совсем уж не понятно и у меня кончились идеи по поводу того что делать: Р
~/Downloads/zoclock$ make
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DZOCVERSION=1.0.0 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -Ibuild/ -I/usr/include/qt4/QtGui/ -I/usr/include/qt4/QtGui/QCore -o build/popupmenu.o src/popupmenu.cpp
In file included from /usr/include/qt4/QtGui/qmenu.h:47,
from /usr/include/qt4/QtGui/QMenu:1,
from src/popupmenu.h:23,
from src/popupmenu.cpp:20:
/usr/include/qt4/QtGui/qicon.h:50: error: ‘QT_BEGIN_HEADER’ does not name a type
/usr/include/qt4/QtGui/qicon.h:60: error: function definition does not declare parameters
/usr/include/qt4/QtGui/qicon.h:128: error: expected constructor, destructor, or type conversion before ‘(’ token
/usr/include/qt4/QtGui/qicon.h:132: error: expected initializer before ‘&’ token
/usr/include/qt4/QtGui/qicon.h:133: error: expected initializer before ‘&’ token
/usr/include/qt4/QtGui/qicon.h:140: error: ‘QT_END_NAMESPACE’ does not name a type
In file included from /usr/include/qt3/qaction.h:46,
from /usr/include/qt4/QtGui/qmenu.h:48,
from /usr/include/qt4/QtGui/QMenu:1,
from src/popupmenu.h:23,
from src/popupmenu.cpp:20:
/usr/include/qt3/qiconset.h:80: error: ‘QIconFactory’ has not been declared
In file included from /usr/include/qt4/QtGui/QMenu:1,
from src/popupmenu.h:23,
from src/popupmenu.cpp:20:
/usr/include/qt4/QtGui/qmenu.h:54: error: ‘QT_BEGIN_HEADER’ does not name a type
/usr/include/qt4/QtGui/qmenu.h:68: error: function definition does not declare parameters
/usr/include/qt4/QtGui/qmenu.h:424: error: ‘QT_END_NAMESPACE’ does not name a type
src/popupmenu.cpp:23: error: ‘PopupMenu’ has not been declared
src/popupmenu.cpp:23: error: ISO C++ forbids declaration of ‘PopupMenu’ with no type
src/popupmenu.cpp: In function ‘int PopupMenu(QWidget*)’:
src/popupmenu.cpp:24: error: only constructors take base initializers
src/popupmenu.cpp:27: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:28: error: ‘tr’ was not declared in this scope
src/popupmenu.cpp:28: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:29: error: ‘class QAction’ has no member named ‘setCheckable’
src/popupmenu.cpp:30: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:31: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp:32: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:33: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:34: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:35: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:35: error: ‘connect’ was not declared in this scope
src/popupmenu.cpp:36: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:37: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:38: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:39: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:40: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:42: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:43: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:44: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:46: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:47: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:49: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:50: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:52: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:53: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:54: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:55: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:57: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:61: error: ‘PopupMenu’ is not a class or namespace
src/popupmenu.cpp: In function ‘bool is_window_locked()’:
src/popupmenu.cpp:63: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:67: error: ‘PopupMenu’ is not a class or namespace
src/popupmenu.cpp: In function ‘void set_window_lock(bool)’:
src/popupmenu.cpp:69: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:76: error: ‘PopupMenu’ is not a class or namespace
src/popupmenu.cpp: In function ‘void color_0()’:
src/popupmenu.cpp:78: error: ‘set_color’ was not declared in this scope
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:81: error: ‘PopupMenu’ is not a class or namespace
src/popupmenu.cpp: In function ‘void color_1()’:
src/popupmenu.cpp:83: error: ‘set_color’ was not declared in this scope
make: *** [build/popupmenu.o] Error 1
Путь к QMenu в Makefile я прописал. Начало ругаться вот так:
/usr/include/qt4/QtGui/qmenu.h:45:27: error: QtGui/qwidget.h: No such file or directory
/usr/include/qt4/QtGui/qmenu.h:46:28: error: QtCore/qstring.h: No such file or directory
/usr/include/qt4/QtGui/qmenu.h:47:25: error: QtGui/qicon.h: No such file or directory
/usr/include/qt4/QtGui/qmenu.h:48:27: error: QtGui/qaction.h: No such file or directory
Я подправил файл qmenu.h и удалил QtGui/ и QtCore/, правильно ли я сделал? Может ли это помешать корректной работе других приложений? ))
Потом стало ругаться вот так:
/usr/include/qt4/QtGui/qicon.h:45:28: error: QtCore/qglobal.h: No such file or directory
/usr/include/qt4/QtGui/qicon.h:46:26: error: QtCore/qsize.h: No such file or directory
/usr/include/qt4/QtGui/qicon.h:47:26: error: QtCore/qlist.h: No such file or directory
/usr/include/qt4/QtGui/qicon.h:48:27: error: QtGui/qpixmap.h: No such file or directory
Я поменял файл qicon.h.
И теперь стало ругаться совсем уж не понятно и у меня кончились идеи по поводу того что делать: Р
~/Downloads/zoclock$ make
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DZOCVERSION=1.0.0 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -Ibuild/ -I/usr/include/qt4/QtGui/ -I/usr/include/qt4/QtGui/QCore -o build/popupmenu.o src/popupmenu.cpp
In file included from /usr/include/qt4/QtGui/qmenu.h:47,
from /usr/include/qt4/QtGui/QMenu:1,
from src/popupmenu.h:23,
from src/popupmenu.cpp:20:
/usr/include/qt4/QtGui/qicon.h:50: error: ‘QT_BEGIN_HEADER’ does not name a type
/usr/include/qt4/QtGui/qicon.h:60: error: function definition does not declare parameters
/usr/include/qt4/QtGui/qicon.h:128: error: expected constructor, destructor, or type conversion before ‘(’ token
/usr/include/qt4/QtGui/qicon.h:132: error: expected initializer before ‘&’ token
/usr/include/qt4/QtGui/qicon.h:133: error: expected initializer before ‘&’ token
/usr/include/qt4/QtGui/qicon.h:140: error: ‘QT_END_NAMESPACE’ does not name a type
In file included from /usr/include/qt3/qaction.h:46,
from /usr/include/qt4/QtGui/qmenu.h:48,
from /usr/include/qt4/QtGui/QMenu:1,
from src/popupmenu.h:23,
from src/popupmenu.cpp:20:
/usr/include/qt3/qiconset.h:80: error: ‘QIconFactory’ has not been declared
In file included from /usr/include/qt4/QtGui/QMenu:1,
from src/popupmenu.h:23,
from src/popupmenu.cpp:20:
/usr/include/qt4/QtGui/qmenu.h:54: error: ‘QT_BEGIN_HEADER’ does not name a type
/usr/include/qt4/QtGui/qmenu.h:68: error: function definition does not declare parameters
/usr/include/qt4/QtGui/qmenu.h:424: error: ‘QT_END_NAMESPACE’ does not name a type
src/popupmenu.cpp:23: error: ‘PopupMenu’ has not been declared
src/popupmenu.cpp:23: error: ISO C++ forbids declaration of ‘PopupMenu’ with no type
src/popupmenu.cpp: In function ‘int PopupMenu(QWidget*)’:
src/popupmenu.cpp:24: error: only constructors take base initializers
src/popupmenu.cpp:27: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:28: error: ‘tr’ was not declared in this scope
src/popupmenu.cpp:28: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:29: error: ‘class QAction’ has no member named ‘setCheckable’
src/popupmenu.cpp:30: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:31: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp:32: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:33: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:34: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:35: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:35: error: ‘connect’ was not declared in this scope
src/popupmenu.cpp:36: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:37: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:38: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:39: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:40: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:42: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:43: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:44: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:46: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:47: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:49: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:50: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:52: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:53: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:54: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:55: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp:57: error: invalid use of ‘this’ in non-member function
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:61: error: ‘PopupMenu’ is not a class or namespace
src/popupmenu.cpp: In function ‘bool is_window_locked()’:
src/popupmenu.cpp:63: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:67: error: ‘PopupMenu’ is not a class or namespace
src/popupmenu.cpp: In function ‘void set_window_lock(bool)’:
src/popupmenu.cpp:69: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:76: error: ‘PopupMenu’ is not a class or namespace
src/popupmenu.cpp: In function ‘void color_0()’:
src/popupmenu.cpp:78: error: ‘set_color’ was not declared in this scope
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:81: error: ‘PopupMenu’ is not a class or namespace
src/popupmenu.cpp: In function ‘void color_1()’:
src/popupmenu.cpp:83: error: ‘set_color’ was not declared in this scope
make: *** [build/popupmenu.o] Error 1
Нее… править хедеры это не хорошо. Вам надо было просто добавить ещё путей в INCPATH в Makefile. Видимо вот такой /usr/include/qt4/
Как-то у вас всё не кряжно стоит :-) А вы не пробовали патч, который тут Mezomish предалагает?
У вас жабер есть? Если — да (а ваш кураж ещё не иссяк :-)), — напишите мне в личку.
Как-то у вас всё не кряжно стоит :-) А вы не пробовали патч, который тут Mezomish предалагает?
У вас жабер есть? Если — да (а ваш кураж ещё не иссяк :-)), — напишите мне в личку.
Не-е-е, править хедеры лучше не надо. Верните всё как было :)
Потом сохраните патч отсюда (там в конце есть ссылка «Download») в каталог zoclock (к примеру, под именем «headers_fix.patch»), после чего выполните в консоли команду
После этого должно собираться без проблем.
Потом сохраните патч отсюда (там в конце есть ссылка «Download») в каталог zoclock (к примеру, под именем «headers_fix.patch»), после чего выполните в консоли команду
$ patch -p0 < headers_fix.patch
После этого должно собираться без проблем.
Теперь вот так:
~/Downloads/zoclock$ make
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DZOCVERSION=1.0.0 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -Ibuild/ -o build/popupmenu.o src/popupmenu.cpp
In file included from src/popupmenu.cpp:20:
src/popupmenu.h:23:23: error: QtGui/QMenu: No such file or directory
In file included from src/popupmenu.cpp:20:
src/popupmenu.h:26: error: expected class-name before ‘{’ token
src/popupmenu.h:28: error: ISO C++ forbids declaration of ‘Q_OBJECT’ with no type
src/popupmenu.h:30: error: expected ‘;’ before ‘typedef’
src/popupmenu.h:33: error: ISO C++ forbids declaration of ‘QAction’ with no type
src/popupmenu.h:33: error: expected ‘;’ before ‘*’ token
src/popupmenu.h:36: error: expected `)' before ‘*’ token
src/popupmenu.h:41: error: expected primary-expression before ‘void’
src/popupmenu.h:41: error: ISO C++ forbids declaration of ‘signals’ with no type
src/popupmenu.h:41: error: expected ‘;’ before ‘void’
src/popupmenu.h:43: error: expected `:' before ‘slots’
src/popupmenu.h:44: error: expected primary-expression before ‘void’
src/popupmenu.h:44: error: ISO C++ forbids declaration of ‘slots’ with no type
src/popupmenu.h:44: error: expected ‘;’ before ‘void’
src/popupmenu.cpp:23: error: expected `)' before ‘*’ token
src/popupmenu.cpp: In member function ‘bool PopupMenu::is_window_locked()’:
src/popupmenu.cpp:63: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: In member function ‘void PopupMenu::set_window_lock(bool)’:
src/popupmenu.cpp:69: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:76: error: no ‘void PopupMenu::color_0()’ member function declared in class ‘PopupMenu’
src/popupmenu.cpp: In member function ‘void PopupMenu::color_1()’:
src/popupmenu.cpp:83: error: ‘emit’ was not declared in this scope
src/popupmenu.cpp:83: error: expected `;' before ‘set_color’
make: *** [build/popupmenu.o] Error 1
Таже ошибка, которая была когда я правил хеадеры сам)
~/Downloads/zoclock$ make
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DZOCVERSION=1.0.0 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -Ibuild/ -o build/popupmenu.o src/popupmenu.cpp
In file included from src/popupmenu.cpp:20:
src/popupmenu.h:23:23: error: QtGui/QMenu: No such file or directory
In file included from src/popupmenu.cpp:20:
src/popupmenu.h:26: error: expected class-name before ‘{’ token
src/popupmenu.h:28: error: ISO C++ forbids declaration of ‘Q_OBJECT’ with no type
src/popupmenu.h:30: error: expected ‘;’ before ‘typedef’
src/popupmenu.h:33: error: ISO C++ forbids declaration of ‘QAction’ with no type
src/popupmenu.h:33: error: expected ‘;’ before ‘*’ token
src/popupmenu.h:36: error: expected `)' before ‘*’ token
src/popupmenu.h:41: error: expected primary-expression before ‘void’
src/popupmenu.h:41: error: ISO C++ forbids declaration of ‘signals’ with no type
src/popupmenu.h:41: error: expected ‘;’ before ‘void’
src/popupmenu.h:43: error: expected `:' before ‘slots’
src/popupmenu.h:44: error: expected primary-expression before ‘void’
src/popupmenu.h:44: error: ISO C++ forbids declaration of ‘slots’ with no type
src/popupmenu.h:44: error: expected ‘;’ before ‘void’
src/popupmenu.cpp:23: error: expected `)' before ‘*’ token
src/popupmenu.cpp: In member function ‘bool PopupMenu::is_window_locked()’:
src/popupmenu.cpp:63: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: In member function ‘void PopupMenu::set_window_lock(bool)’:
src/popupmenu.cpp:69: error: ‘lock_pos’ was not declared in this scope
src/popupmenu.cpp: At global scope:
src/popupmenu.cpp:76: error: no ‘void PopupMenu::color_0()’ member function declared in class ‘PopupMenu’
src/popupmenu.cpp: In member function ‘void PopupMenu::color_1()’:
src/popupmenu.cpp:83: error: ‘emit’ was not declared in this scope
src/popupmenu.cpp:83: error: expected `;' before ‘set_color’
make: *** [build/popupmenu.o] Error 1
Таже ошибка, которая была когда я правил хеадеры сам)
А qmake Вы перед этим вызывали ещё раз (чтобы отменить те изменения, которые Вы там сделали)?
Т.е. я имел в виду «отменить те изменения в Makefile, которые Вы там сделали».
В общем, должно быть так:
1) все изменения, которые Вы сделали в кутешных хедерах — отменены, и хедеры находятся в первоначальном виде
2) наложен мой патч
3) qmake
4) make
Ради чистоты эксперимента можно попробовать удалить все исходники со всеми изменениями и проделать всё с начала (распаковав архив с «чистыми» исходниками).
В общем, должно быть так:
1) все изменения, которые Вы сделали в кутешных хедерах — отменены, и хедеры находятся в первоначальном виде
2) наложен мой патч
3) qmake
4) make
Ради чистоты эксперимента можно попробовать удалить все исходники со всеми изменениями и проделать всё с начала (распаковав архив с «чистыми» исходниками).
Не помогает…
Причем патч выдает одну ошибку:
~/Downloads/zoclock$ sudo patch -p0 < fix.patch
patching file src/zocwidget.cpp
Hunk #1 FAILED at 17.
1 out of 1 hunk FAILED — saving rejects to file src/zocwidget.cpp.rej
patching file src/zoclock.cpp
patching file src/zocwidget.h
patching file src/settings.h
patching file src/zocdot.h
patching file src/popupmenu.h
Причем патч выдает одну ошибку:
~/Downloads/zoclock$ sudo patch -p0 < fix.patch
patching file src/zocwidget.cpp
Hunk #1 FAILED at 17.
1 out of 1 hunk FAILED — saving rejects to file src/zocwidget.cpp.rej
patching file src/zoclock.cpp
patching file src/zocwidget.h
patching file src/settings.h
patching file src/zocdot.h
patching file src/popupmenu.h
Возможно, у Вас другая версия файла (я из свн обновлялся). Попробуйте тогда в проблемном файле src/zocwidget.cpp вручную заменить
на
#include <QFrame> #include <QGridLayout> #include <QMouseEvent> #include <QTime> #include <QMessageBox> #include <QColorDialog>
на
#include <QtCore/QTime> #include <QtGui/QFrame> #include <QtGui/QGridLayout> #include <QtGui/QMouseEvent> #include <QtGui/QMessageBox> #include <QtGui/QColorDialog>
Неа, не помогло… Видимо, тут уже ничего не поможет: Р
Чего-то как-то совсем не судьба:
gzip: stdin: decompression OK, trailing garbage ignored
tar: Child returned status 2
tar: Error exit delayed from previous errors
:))))))))))))))))))))))))
gzip: stdin: decompression OK, trailing garbage ignored
tar: Child returned status 2
tar: Error exit delayed from previous errors
:))))))))))))))))))))))))
Жжесть! %)))
Шлите в личку контакты — вышлю архив мылом :)))
Шлите в личку контакты — вышлю архив мылом :)))
Я думаю, что у вас что-то глобально криво в системе. И скорее всего qmake стоит от одной сборки, а все девелоперсеие файлы — от другой. Надо проверить версии пакетов — наверняка косяк выползет.
А если просто хотите собрать, не ломая систему (глобальные обновления библиотек могу привести к значительному перерасходу нервных клеток :-)), то проще всего, собрать qt отдельно. Посто не от рута, а от обычного пользоателя.
Я в понедельник появлюсь в жабере — можно там дообсудить эту тему.
А если просто хотите собрать, не ломая систему (глобальные обновления библиотек могу привести к значительному перерасходу нервных клеток :-)), то проще всего, собрать qt отдельно. Посто не от рута, а от обычного пользоателя.
Я в понедельник появлюсь в жабере — можно там дообсудить эту тему.
Ну всё, разобрались! Блин, говорила мне мама: «будь внимательнее!» — не слушал я маму…
В выхлопе make нам черным по белому говорит, что он пытается подключить include-path от Qt3. А почему? Да потому что мейкфайл был сгенерирован для Qt3. А был он сгенерирован для Qt3 потому что в системе стоят обе dev-версии, и qmake указывает на qmake-qt3.
При использовании qmake-qt4 всё собирается и работает, и патч мой не нужен %)
В выхлопе make нам черным по белому говорит, что он пытается подключить include-path от Qt3. А почему? Да потому что мейкфайл был сгенерирован для Qt3. А был он сгенерирован для Qt3 потому что в системе стоят обе dev-версии, и qmake указывает на qmake-qt3.
При использовании qmake-qt4 всё собирается и работает, и патч мой не нужен %)
В некоторых системах (в частности, в Убунте :)) в include path прописан только основной каталог Qt /usr/include/qt4/, а подкаталоги QtCore, QtGui и так далее — не прописаны. Поэтому я давно взял в привычку писать не #include <QMenu>, а #include <QtGui/QMenu> и так далее.
Sign up to leave a comment.
Точное время 0100 часов 010111 минут