LINUX.ORG.RU

QPxTool 0.6


0

0

Новая версия утилки для скана качества CD/DVD. Изменений довольно много:)

О главном:
- по просьбам трудящихся вынес большинство функций в отдельные библиотеки (libqpx*)
- улучшена стабильность:)
- частично переписал отрисовку Pi/Cx (имхо, стало читабельней)
- скан PIE/PIF в один проход (кроме приводов Plextor и Nec)
- скан C2 для приводов, поддерживающих C2-pointers
- pioquiet (утилка для управления QuietMode на Pioneer'ах A**XL)

качаем отсюда

>>> страничка проекта

Предпологается, что она должна собираться? У меня не получилось :( Куча ошибок qpxtool/include/moc_ASDB.cc scons

Hokum ☆☆☆☆
()
Ответ на: комментарий от Syncro

Вот так это выглядит. Видимо что-то из qt не хватает/не подходит, или я не так понял?

scons: Building targets ...bmp g++ -Wall -O2 -pipe -W -DQT_NO_DEBUG -DQT_SHARED -DQT_THREAD_SUPPORT -I/usr/local/include -I/usr/X11R6/include -Iqpxtool/include -Iqpxtool/ui -Iqpxtool -Ilib/qpxtransport/include -Ilib/qpxplextor/include -Ilib/qpxpioneer/include -Ilib/qpxscan/include -c -o qpxtool/include/moc_ASDB.o qpxtool/include/moc_ASDB.cc In file included from qpxtool/include/moc_ASDB.cc:11: qpxtool/include/ASDB.h:19:23: ошибка: qlistview.h: No such file or directory qpxtool/include/ASDB.h:20:20: ошибка: qlabel.h: No such file or directory In file included from qpxtool/include/ASDB.h:22, from qpxtool/include/moc_ASDB.cc:11: qpxtool/ui/ASDB_ui.h:13:22: ошибка: qvariant.h: No such file or directory qpxtool/ui/ASDB_ui.h:14:21: ошибка: qpixmap.h: No such file or directory qpxtool/ui/ASDB_ui.h:15:21: ошибка: qdialog.h: No such file or directory qpxtool/include/moc_ASDB.cc:12:25: ошибка: qmetaobject.h: No such file or directory qpxtool/include/moc_ASDB.cc:13:26: ошибка: qapplication.h: No such file or directory qpxtool/include/moc_ASDB.cc:15:34: ошибка: private/qucomextra_p.h: No such file or directory qpxtool/include/moc_ASDB.cc:17:2: ошибка: #error "This file was generated using the moc from 3.3.6. It" qpxtool/include/moc_ASDB.cc:18:2: ошибка: #error "cannot be used with the include files from this version of Qt." qpxtool/include/moc_ASDB.cc:19:2: ошибка: #error "(The moc has changed too much.)" qpxtool/ui/ASDB_ui.h:30: error: expected class-name before ‘{’ token qpxtool/ui/ASDB_ui.h:31: error: ISO C++ forbids declaration of ‘Q_OBJECT’ with no type qpxtool/ui/ASDB_ui.h:33: error: expected ‘;’ before ‘public’ qpxtool/ui/ASDB_ui.h:51: error: expected `:' before ‘slots’ qpxtool/ui/ASDB_ui.h:52: error: expected primary-expression before ‘virtual’ qpxtool/ui/ASDB_ui.h:52: error: ISO C++ forbids declaration of ‘slots’ with no type qpxtool/ui/ASDB_ui.h:52: error: expected ‘;’ before ‘virtual’ qpxtool/ui/ASDB_ui.h:69: error: expected `:' before ‘slots’ qpxtool/ui/ASDB_ui.h:70: error: expected primary-expression before ‘virtual’ qpxtool/ui/ASDB_ui.h:70: error: ISO C++ forbids declaration of ‘slots’ with no type qpxtool/ui/ASDB_ui.h:70: error: expected ‘;’ before ‘virtual’ qpxtool/ui/ASDB_ui.h:73: error: ‘QPixmap’ does not name a type qpxtool/include/ASDB.h:26: error: ISO C++ forbids declaration of ‘Q_OBJECT’ with no type qpxtool/include/ASDB.h:28: error: expected ‘;’ before ‘public’ qpxtool/include/ASDB.h:42: error: expected `:' before ‘slots’ qpxtool/include/ASDB.h:43: error: expected primary-expression before ‘void’ qpxtool/include/ASDB.h:43: error: ISO C++ forbids declaration of ‘slots’ with no type qpxtool/include/ASDB.h:43: error: expected ‘;’ before ‘void’ qpxtool/include/moc_ASDB.cc:22: error: no ‘const char* asdb_edit_dialog::className() const’ member function declared in class ‘asdb_edit_dialog’ qpxtool/include/moc_ASDB.cc:27: error: expected constructor, destructor, or type conversion before ‘*’ token qpxtool/include/moc_ASDB.cc:28: error: ‘QMetaObjectCleanUp’ does not name a type qpxtool/include/moc_ASDB.cc:31: error: ‘QString’ does not name a type qpxtool/include/moc_ASDB.cc:39: error: ‘QString’ does not name a type qpxtool/include/moc_ASDB.cc:50: error: expected constructor, destructor, or type conversion before ‘*’ token qpxtool/include/moc_ASDB.cc:103: error: no ‘void* asdb_edit_dialog::qt_cast(const char*)’ member function declared in class ‘asdb_edit_dialog’ qpxtool/include/moc_ASDB.cc: In member function ‘void* asdb_edit_dialog::qt_cast(const char*)’: qpxtool/include/moc_ASDB.cc:105: error: ‘qstrcmp’ was not declared in this scope qpxtool/include/moc_ASDB.cc:107: error: ‘qt_cast’ is not a member of ‘asdb_edit_dialog_UI’ qpxtool/include/moc_ASDB.cc: At global scope: qpxtool/include/moc_ASDB.cc:110: error: ‘QUObject’ has not been declared qpxtool/include/moc_ASDB.cc:110: error: no ‘bool asdb_edit_dialog::qt_invoke(int, int*)’ member function declared in class ‘asdb_edit_dialog’ qpxtool/include/moc_ASDB.cc: In member function ‘bool asdb_edit_dialog::qt_invoke(int, int*)’: qpxtool/include/moc_ASDB.cc:112: error: ‘staticMetaObject’ was not declared in this scope qpxtool/include/moc_ASDB.cc:113: error: no matching function for call to ‘asdb_edit_dialog::asdb_act_deact()’ qpxtool/include/ASDB.h:44: note: candidates are: virtual void asdb_edit_dialog::asdb_act_deact(QListViewItem*) qpxtool/include/moc_ASDB.cc:114: error: ‘static_QUType_ptr’ was not declared in this scope qpxtool/include/moc_ASDB.cc:116: error: ‘static_QUType_bool’ was not declared in this scope qpxtool/include/moc_ASDB.cc:123: error: ‘qt_invoke’ is not a member of ‘asdb_edit_dialog_UI’ qpxtool/include/moc_ASDB.cc:125: error: ‘TRUE’ was not declared in this scope qpxtool/include/moc_ASDB.cc: At global scope: qpxtool/include/moc_ASDB.cc:128: error: ‘QUObject’ has not been declared qpxtool/include/moc_ASDB.cc:128: error: no ‘bool asdb_edit_dialog::qt_emit(int, int*)’ member function declared in class ‘asdb_edit_dialog’ qpxtool/include/moc_ASDB.cc: In member function ‘bool asdb_edit_dialog::qt_emit(int, int*)’: qpxtool/include/moc_ASDB.cc:130: error: ‘qt_emit’ is not a member of ‘asdb_edit_dialog_UI’ qpxtool/include/moc_ASDB.cc: At global scope: qpxtool/include/moc_ASDB.cc:134: error: ‘QVariant’ has not been declared qpxtool/include/moc_ASDB.cc:134: error: no ‘bool asdb_edit_dialog::qt_property(int, int, int*)’ member function declared in class ‘asdb_edit_dialog’ qpxtool/include/moc_ASDB.cc: In member function ‘bool asdb_edit_dialog::qt_property(int, int, int*)’: qpxtool/include/moc_ASDB.cc:136: error: ‘qt_property’ is not a member of ‘asdb_edit_dialog_UI’ qpxtool/include/moc_ASDB.cc: At global scope: qpxtool/include/moc_ASDB.cc:139: error: ‘bool asdb_edit_dialog::qt_static_property’ is not a static member of ‘class asdb_edit_dialog’ qpxtool/include/moc_ASDB.cc:139: error: ‘QObject’ was not declared in this scope qpxtool/include/moc_ASDB.cc:139: error: expected primary-expression before ‘,’ token qpxtool/include/moc_ASDB.cc:139: error: expected primary-expression before ‘int’ qpxtool/include/moc_ASDB.cc:139: error: expected primary-expression before ‘int’ qpxtool/include/moc_ASDB.cc:139: error: ‘QVariant’ was not declared in this scope qpxtool/include/moc_ASDB.cc:139: error: expected primary-expression before ‘)’ token qpxtool/include/moc_ASDB.cc:139: error: initializer expression list treated as compound expression qpxtool/include/moc_ASDB.cc:139: error: expected ‘,’ or ‘;’ before ‘{’ token scons: *** [qpxtool/include/moc_ASDB.o] Error 1 scons: building terminated because of errors. make: *** [all] Ошибка 2

Hokum ☆☆☆☆
()
Ответ на: комментарий от Hokum

> ошибка: qapplication.h: No such file or directory qpxtool/include/moc_ASDB.cc:15:34: ошибка: private/qucomextra_p.h: No such file or directory qpxtool/include/moc_ASDB.cc:17:2: ошибка: #error "This file was generated using the moc from 3.3.6. It" qpxtool/include/moc_ASDB.cc:18:2: ошибка: #error "cannot be used with the include files from this version of Qt."

какой-то другой Qt ему нужен:) сделай ./configure --help, укажи путь к Qt3

Syncro ★★★★★
()
Ответ на: комментарий от Syncro

ха, так там готовый makefile и нет скрипта конфигуринга

Hokum ☆☆☆☆
()
Ответ на: комментарий от Syncro

Лучше конечно стало, но всё равно: QPxTool.o: In function `QPxToolWidget::QPxToolWidget(QWidget*, char const*)':QPxTool.cpp:(.text+0x14cc5): undefined reference to `libver_qpxscan()' :QPxTool.cpp:(.text+0x14cfc): undefined reference to `libver_qpxplextor()' :QPxTool.cpp:(.text+0x14d33): undefined reference to `libver_qpxpioneer()' QPxTool.o: In function `QPxToolWidget::QPxToolWidget(QWidget*, char const*)':QPxTool.cpp:(.text+0x18e2d): undefined reference to `libver_qpxscan()' :QPxTool.cpp:(.text+0x18e64): undefined reference to `libver_qpxplextor()' :QPxTool.cpp:(.text+0x18e9b): undefined reference to `libver_qpxpioneer()' collect2: ld returned 1 exit status make: *** [qpxtool-0.6] Ошибка 1

Hokum ☆☆☆☆
()
Ответ на: комментарий от Hokum

Залезь руками в SConstruct в корне и добавь правильные директории с инклюдами и либами QT. Стрелять, блин, новаторов, ниасиливших gnu auto-tools... прям как будто там больше писать нужно...

Gharik
()
Ответ на: комментарий от Hokum

По типу того:

		   CCFLAGS = [ '-Wall', '-O2 -march=k8 -m64 -pipe' ],
		   CXXFLAGS = [ '-Wall', '-O2 -march=k8 -m64 -pipe' ],
		   CPPPATH = [ '/usr/local/include', '/usr/X11R6/include', '/usr/local/lib/qt/include' ],
		   LIBS = [ ],
		   LIBPATH = [ '/usr/local/lib', '/usr/X11R6/lib', '/usr/local/lib/qt/lib' ],

Gharik
()

Теперь вопросы автору по существу... уж так совпало, что идет злой бакап не на один десяток ДВД-х :) Если все графики Pi/Cx сплошь зелененькие - то запись правильная и ничего менять не нужно?

Gharik
()
Ответ на: комментарий от Gharik

И первый багрепорт... QT-3.3.6, Xorg-7.1, GCC-3.4.6, Glibc-2.3.6, имеем segmentation fault вот с таким началом при завершении теста PIE:

....
:-[ nec_pie_do_one_interval failed with SK=5h/ASC=2Ch/ACQ=00h]: COMMAND SEQUENCE ERROR
:-[ nec_pie_do_one_interval failed with SK=5h/ASC=2Ch/ACQ=00h]: COMMAND SEQUENCE ERROR
X Error: BadGC (invalid GC parameter) 13
  Major opcode:  56
  Minor opcode:  0
  Resource id:  0xaf
X Error: BadGC (invalid GC parameter) 13
  Major opcode:  59
  Minor opcode:  0
  Resource id:  0xaf
Segmentation fault

Привод NEC-4571A, dvd - verbatim adv.azo+ 16x, писалось на 4x, прога автоматом выбрала набор команд 'NEC'.

Gharik
()

Второй багрепорт... :) На 98% PIF'а вывалилось вот это:

:-[ nec_pif_do_one_interval failed with SK=5h/ASC=2Ch/ACQ=00h]: COMMAND SEQUENCE ERROR
*** glibc detected *** free(): invalid pointer: 0x0000000000b518a0 ***
Aborted63040 / 2295008, max: 84, curr: 1, total: 2877

И добавим, архитектура х86-64.

Gharik
()
Ответ на: комментарий от Syncro

> qmake -project && qmake qpxtool-0.6.pro && make

Действительно, а зачем какой-то scons, если есть qmake? Я правда не
понимаю, объясните мне. Или есть убогие дистрибутивы с Qt, но без
qmake? Кстати, а кто такой scons и почему он должен у меня быть?

scons
make: scons: Command not found
make: *** [all] Error 127


Впрочем, он и с qmake у меня не собирается в slackware 10.2:

g++ -Wl,-rpath,/usr/lib/qt/lib -o qpxtool-0.6 pioquiet.o pxcontrol.o About.o main.o QPxTool.o SaveHTML.o pioneer_spdctl.o version.o plextor_features.o version.o media_check_benq.o media_check_benq_rom.o media_check_generic.o media_check_liteon.o media_check_nec.o media_check_pioneer.o plextor_qcheck.o version.o common_functions.o qpx_mmc.o qpx_transport.o version.o ASDB.o MQChk.o plextor_ext_cx.o test_threads.o About_ui.o ASDB_ui.o MQChk_ui.o plextor_ext_cx_ui.o QPxTool_ui.o SaveHTML_ui.o moc_About.o moc_ASDB.o moc_MQChk.o moc_plextor_ext_cx.o moc_QPxTool.o moc_SaveHTML.o moc_About_ui.o moc_ASDB_ui.o moc_MQChk_ui.o moc_plextor_ext_cx_ui.o moc_QPxTool_ui.o moc_SaveHTML_ui.o   -L/usr/lib/qt/lib -L/usr/X11R6/lib -lqt-mt -lXext -lX11 -lm
pxcontrol.o(.bss+0x0): multiple definition of `flags'
pioquiet.o(.bss+0x0): first defined here
pxcontrol.o(.text+0x0): In function `scanbus()':
: multiple definition of `scanbus()'
pioquiet.o(.text+0x0): first defined here
pxcontrol.o(.text+0x1c0): In function `get_device_info(drive_info*)':
: multiple definition of `get_device_info(drive_info*)'
pioquiet.o(.text+0x1c0): first defined here
/usr/lib/gcc-lib/i486-slackware-linux/3.3.6/../../../../i486-slackware-linux/bin
/ld: Warning: size of symbol `get_device_info(drive_info*)' changed from 170 in pioquiet.o to 2080 in pxcontrol.o
pxcontrol.o(.text+0x9e0): In function `usage(char*)':
: multiple definition of `usage(char*)'
pioquiet.o(.text+0x270): first defined here
/usr/lib/gcc-lib/i486-slackware-linux/3.3.6/../../../../i486-slackware-linux/bin
/ld: Warning: size of symbol `usage(char*)' changed from 146 in pioquiet.o to 540 in pxcontrol.o
pxcontrol.o(.text+0xc00): In function `main':
: multiple definition of `main'
pioquiet.o(.text+0x310): first defined here
/usr/lib/gcc-lib/i486-slackware-linux/3.3.6/../../../../i486-slackware-linux/bin
/ld: Warning: size of symbol `main' changed from 1578 in pioquiet.o to 9986 in pxcontrol.o
main.o(.text+0x0): In function `main':
: multiple definition of `main'
pioquiet.o(.text+0x310): first defined here
/usr/lib/gcc-lib/i486-slackware-linux/3.3.6/../../../../i486-slackware-linux/bin
/ld: Warning: size of symbol `main' changed from 9986 in pioquiet.o to 650 in main.o
version.o(.text+0x0): In function `libver_qpxtransport()':
: multiple definition of `libver_qpxtransport()'
version.o(.text+0x0): first defined here
version.o(.text+0x0): In function `libver_qpxtransport()':
: multiple definition of `libver_qpxtransport()'
version.o(.text+0x0): first defined here
version.o(.text+0x0): In function `libver_qpxtransport()':
: multiple definition of `libver_qpxtransport()'
version.o(.text+0x0): first defined here
QPxTool.o(.text+0x309): In function `QPxToolWidget::QPxToolWidget[not-in-charge]
(QWidget*, char const*)':
: undefined reference to `libver_qpxscan()'
QPxTool.o(.text+0x340): In function `QPxToolWidget::QPxToolWidget[not-in-charge](QWidget*, char const*)':
: undefined reference to `libver_qpxplextor()'
QPxTool.o(.text+0x377): In function `QPxToolWidget::QPxToolWidget[not-in-charge](QWidget*, char const*)':
: undefined reference to `libver_qpxpioneer()'
QPxTool.o(.text+0x40d9): In function `QPxToolWidget::QPxToolWidget[in-charge](QWidget*, char const*)':
: undefined reference to `libver_qpxscan()'
QPxTool.o(.text+0x4110): In function `QPxToolWidget::QPxToolWidget[in-charge](QWidget*, char const*)':
: undefined reference to `libver_qpxplextor()'
QPxTool.o(.text+0x4147): In function `QPxToolWidget::QPxToolWidget[in-charge](QWidget*, char const*)':
: undefined reference to `libver_qpxpioneer()'
collect2: ld returned 1 exit status
make: *** [qpxtool-0.6] Error 1

anonymous
()
Ответ на: комментарий от Gharik

> На 98% PIF'а вывалилось вот это:
> :-[ nec_pif_do_one_interval failed with SK=5h/ASC=2Ch/ACQ=00h]: COMMAND SEQUENCE ERROR

хмм... толи я перемудрил, толи Нек плющит:)
в 0.5.4 работало, но в последний месяц доступа к неку у меня не было и сейчас нет:(

ShultZ
() автор топика
Ответ на: комментарий от anonymous

> это же qt. если что идёт не так - значит он криво установлен

Ага. Так смачно пёрнул, что аж сам поверил, да? Я сам пишу на Qt - как на 3.3, так и на 4. И мои проекты почему-то собираются на раз-два. А теперь попробуй угадать, что означает

pxcontrol.o(.bss+0x0): multiple definition of `flags' pioquiet.o(.bss+0x0): first defined here

Просьба к остальным - не подсказывать, пусть сам угадает. Я-то знаю.

anonymous
()
Ответ на: комментарий от blind

> вот выкинет автор qt и сделает просто текстовый лог тогда это будет тру.

На Qt надо просто уметь писать, тогда и проблем не будет. А херню можно слепить в любом фреймворке.

anonymous
()
Ответ на: комментарий от ShultZ

С ходу на Убунте не собралось, ваш бинарник вроде бы запустился, но работает только read transfer rate, всё остальное не работает на _nec

привод nd3540A

через sudo вообще не запускается бинарник ** Scaning for MMC compliant devices... ** Scan compleete: 0 device(s) found *** glibc detected *** malloc(): memory corruption: 0x08537868 ***

вообщем в таком духе.

было бы нелишним что-нибудь сделать с системой сборки imho.

Ну и по интерфейсу, если что, не совсем очевидно как им пользоваться, неискушённый юзер может запутаться.

Hokum ☆☆☆☆
()
Ответ на: комментарий от anonymous

> Действительно, а зачем какой-то scons, если есть qmake?
> Я правда не понимаю, объясните мне.
ну, понимаешь, если использовать qmake, то он привязывает libqt-mt ко всему, что будет компиляться (хоть и динамически)...
а на кой это надо для библиотек и консольных утилок???
вот я от qmake и отказался

ShultZ
() автор топика
Ответ на: комментарий от ShultZ

> ну, понимаешь, если использовать qmake, то он привязывает libqt-mt ко всему, что будет компиляться (хоть и динамически)... а на кой это надо для библиотек и консольных утилок??? вот я от qmake и отказался

Ясно. Просто мои проекты внутренние, используются только внутри фирмы, и среда везде одна, поэтому у меня таких проблем не возникало - везде работает.

anonymous
()

У меня нет scons (и не хочу ставить - ни разу ещё не понадобился), а qmake не собирает. Чё делать?

anonymous
()

Какая версия qt требуется? У меня 3.3.4 сейчас стоит, но вот что выдаётся при сборке:

> scons: warning: Could not detect qt, using moc executable as a hint (QTDIR=/usr)

Далее много строчек с компиляцией и в конце валится с кучей ошибок типа:

> qpxtool/include/moc_ASDB.cc:128: error: type specifier omitted for parameter ` QUObject'

anonymous_incognito ★★★★★
()
Ответ на: комментарий от anonymous

> У меня нет scons (и не хочу ставить - ни разу ещё не понадобился), а qmake не собирает. Чё делать?
если так ломает ставить scons (который, кстати, оччень маленький) могу намылить 0.6RC1, где всё собиралось скриптами... но прикручивать эти скрипты к релизу придётся самому (не так уж и сложно)

> Какая версия qt требуется? У меня 3.3.4 сейчас стоит, но вот что выдаётся при сборке:
>> scons: warning: Could not detect qt, using moc executable as a hint (QTDIR=/usr)
любая из 3.3.х должна работать...
попробуй в SConstruct прописать путь QT

= Envirinment (...
QTDIR = [ '/real/qt/path' ],
...
)

ShultZ
() автор топика
Ответ на: комментарий от anonymous

> ну, понимаешь, если использовать qmake, то он привязывает libqt-mt ко всему, что будет компиляться (хоть и динамически)... а на кой это надо для библиотек и консольных утилок??? вот я от qmake и отказался

откуда данные?

config-=qt

и то, дефолтно от выключен.

и никаких проблем. qmake независимый инструмент, который о qt ничего не знает.

daaaad
()
Ответ на: комментарий от daaaad

> и никаких проблем. qmake независимый инструмент, который о qt ничего не знает

имеется ввиду, что qmake можно использовать в проектах вообще никак не связанных с библиотекой QT

daaaad
()
Ответ на: комментарий от daaaad

> откуда данные?
проверено на собственном опыте

> config-=qt
> и то, дефолтно от выключен.
странно, у меня почему-то дефолтно включен. это первое

и потом, либы надо собирать отдельно, qpxtool и консольные утилки - отдельно...
сначала делал всё это скриптами


PS: если все так недовольны, может кто предложит более универсальную систему сборки (не на словах, а реализацию)?

ShultZ
() автор топика
Ответ на: комментарий от Hokum

Собственно, вот это побороть не получилось:

:QPxTool.cpp:(.text+0x14cfc): undefined reference to `libver_qpxplextor()' :QPxTool.cpp:(.text+0x14d33): undefined reference to `libver_qpxpioneer()' QPxTool.o: In function `QPxToolWidget::QPxToolWidget(QWidget*, char const*)':QPxTool.cpp:(.text+0x18e2d): undefined reference to `libver_qpxscan()' :QPxTool.cpp:(.text+0x18e64): undefined reference to `libver_qpxplextor()' :QPxTool.cpp:(.text+0x18e9b): undefined reference to `libver_qpxpioneer()' collect2: ld returned 1 exit status make: *** [qpxtool-0.6] Ошибка 1

Может, кто собрал под Даппер?

Hokum ☆☆☆☆
()
Ответ на: комментарий от Gharik

> Makefile.am + configure.ac + aclocal.m4
через autotools уже пытался, гемора оказалось больше чем со scons

ShultZ
() автор топика
Ответ на: комментарий от Gharik

> Если все графики Pi/Cx сплошь зелененькие - то запись правильная и ничего менять не нужно?

Они по-моему там всегда зелёненькие... Нормой считается если везде PIE<280 и PIF<4. Кое-что про это написано тут: http://qpxtool.sourceforge.net/glossar.html#pie

slav ★★
()
Ответ на: комментарий от ShultZ

> config-=qt > и то, дефолтно от выключен. > cтранно, у меня почему-то дефолтно включен. это первое ну, возможно и включает не страшно.

>и потом, либы надо собирать отдельно, qpxtool и консольные утилки - >отдельно... >сначала делал всё это скриптами

Надо немного приложить голову и руки, http://doc.trolltech.com/3.3/qmake-manual.html

>PS: если все так недовольны, может кто предложит более универсальную систему сборки (не на словах, а реализацию)?

если уж завязан на qt , и используй qmake с использованием qmake ты можешь сделать все значительно логичнее и короче раза в три.

реализацию нет времени писать поскольку проект мне как таковой не требуется :)

могу образцы на примере твоего проекта накидать и скинуть куданить или сюда.

и еще советы:

- там по коду у тебя везде printf - писал бы в stdlog протокол и в stderr ошибки, по крайней мере сможешь это логично перенаправить - много мусора в коде смотреть страшно через неделю не разберешься - параметры инсталляции qmake (search INSTALL): http://doc.trolltech.com/3.3/qmake-manual-8.html - переопределять можно так: qmake "install=//d//d//d/d" - но вообще ребята правильно говорят, совт долже под configure make install clean работать на ура :) (т.е. поверх qmake еще automake надо делать)

daaaad
()

Ещё вот такая вещь: это так и должно быть что тестирование диска (типа PIE/PIF, Cx) работает только из-под рута (права на запись в /dev/hdc, где у меня резак висит, у меня есть)? А то нехорошо как-то получается - для тестирования диска надо из-под рута прогу пускать...

slav ★★
()

ЛОР в выходные прямо какая-то "десятка злобных зрителей" :)

скоро девелоперы бояться будут постить на ЛОР анонсы ;)

Hokum ☆☆☆☆
()
Ответ на: комментарий от slav

> работает только из-под рута (права на запись в /dev/hdc, где у меня резак висит, у меня есть)?
права на запись мало... драйвер пропускает неизвестные команды только от рута => ( запускать рутом | suid root | патчить ядро )

ShultZ
() автор топика
Ответ на: комментарий от Hokum

>ЛОР в выходные прямо какая-то "десятка злобных зрителей" :)

+ 1

>скоро девелоперы бояться будут постить на ЛОР анонсы ;)

правильно - ОТК

daaaad
()
Ответ на: комментарий от ShultZ

Точно, спасибо, после суида заработало!

правда, недолго, но всё же.

:-[ nec_pie_do_one_interval failed with SK=5h/ASC=2Ch/ACQ=00h]: COMMAND SEQUENCE ERROR Segmentation fault

Hokum ☆☆☆☆
()
Ответ на: комментарий от ShultZ

> PS: если все так недовольны, может кто предложит более универсальную систему сборки (не на словах, а реализацию)?

CMake

anonymous
()
Ответ на: комментарий от anonymous

> Я сам пишу на Qt - как на 3.3, так и на 4. И мои проекты почему-то собираются на раз-два. А теперь попробуй угадать, что означает

>pxcontrol.o(.bss+0x0): multiple definition of `flags' pioquiet.o(.bss+0x0): first defined here

>Просьба к остальным - не подсказывать, пусть сам угадает. Я-то знаю.

кривой код? сам пишу на 4, _никогда_ не встречал похожих проблем. (несколько проектов с исходниками по 3-15 тыс. строк). Наверно, я пишу как в мануале, а не изобретаю что-то?

anonymous
()
Ответ на: комментарий от Hokum

Может, вы свои багрепорты в багзиллу/почту/личку и т.д.?! Здесь все же обсуждение новостей, а простыни ваших логов отношения к этому имеют мало, а людям их качать. Модераторы, куда смотрите!?

SySAlex
()
Ответ на: комментарий от anonymous

> кривой код? сам пишу на 4, _никогда_ не встречал похожих проблем. (несколько проектов с исходниками по 3-15 тыс. строк). Наверно, я пишу как в мануале, а не изобретаю что-то?

IMHO человек что-то намудрил с #include

anonymous
()
Ответ на: комментарий от anonymous

> кривой код? сам пишу на 4, _никогда_ не встречал похожих проблем. (несколько проектов с исходниками по 3-15 тыс. строк). Наверно, я пишу как в мануале, а не изобретаю что-то?

Давай смотреть. Вот объявление в pioquiet/pioquiet.cpp (глобальное, т.е. не в методе или там в функции):

unsigned int flags = 0;

Вот объявление в pxcontrol/pxcontrol.cpp (глобальное, т.е. не в методе или там в функции):

unsigned int flags = 0;

Теперь остаётся внимательно изучить их взаимосвязи :)

anonymous
()

Ребят, вы че? Даже под FreeBSD собралось без проблем. Ставьте нормальны дистры. За scons - мегазачет, более удобной системы сборки не встречал. qpxtool супер!

anonymous
()
Ответ на: комментарий от anonymous

да ладно, совт написан с ошибками в языке, неговоря уже о сборке. хотя как шутят иногда ПРАВИЛЬНО написаная программа не только компилируется, но и линкуется :)

daaaad
()
Ответ на: комментарий от anonymous

> Теперь остаётся внимательно изучить их взаимосвязи :)
из этих 2х исходников собираются ДВА НЕЗАВИСИМЫХ бинарника:)
а кто-то пытался слинковать их с одно целое... ГЫ

ShultZ
() автор топика
Ответ на: комментарий от anonymous

> Даже под FreeBSD собралось без проблем.
ничего удивительного, под Фрю затачивалось отдельно

ShultZ
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.