LINUX.ORG.RU

Консольное QT приложение?


0

0

Нужно написать небольшой сервер на qt, использую QServerSocket, MainWindow не устанавливаю. Компилю и при попытке запуска без X-ов пишет cannot connect to X sever :( ... ?
На Qt вообще можно писать консольные приложения?

anonymous

обещается, что можно будет на 4..
На 3.x гарантированно что, нет.
Вообще-то сервер на qt рановато пока :-)
даже небольшой. QServerSocket вообче-то тормознутый..

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

++
offtopic: удаленное сообщение писал не я.

посмотрел src (qt-3.2.2)
qapplication.cpp
qeventloop_unix.cpp
qeventloop.cpp


конечно можно.

The following example shows how to create an application that
uses a graphical interface when available.

int main( int argc, char **argv )
{
#ifdef Q_WS_X11
bool useGUI = getenv( "DISPLAY" ) != 0;
#else
bool useGUI = TRUE;
#endif
QApplication app(argc, argv, useGUI);

if ( useGUI ) {
//start GUI version
...
} else {
//start non-GUI version
...
}
return app.exec();
}

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

потом посмотрите, что скажет ldd про ваше приложение,
и попробуйте его запустить на машине без X-ов..
насколько я понимаю "консольное приложение" это приложение,
не тянущее за собой хвост зависимостей от графических библиотек.


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

>потом посмотрите, что скажет ldd про ваше приложение,

будет молчать, "как партизан"

>"консольное приложение" это приложение,
>не тянущее за собой хвост зависимостей от графических
>библиотек.

консольное приложение - приложение, которое работает без
X servera, как говорят физики in-batch-mode.
btw, для M$ Windows - существует "другое определение"

Кстати, упоминалось Qt4 - интерeсует, насколько Qt4 modules
независимы друг от друга?

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

сообщение было удалено, потому что у анонима не спрашивали, что лучше, его спрашивали как. ОпенГл для консоли - и есть в.н.инф.

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

> консольное приложение - приложение, которое работает без X servera, как говорят физики in-batch-mode. btw, для M$ Windows - существует "другое определение"

Художественное отступление : IMHO, отсутствие зависимостей от граф. и Х библиотек все-же более строгое определение для "консольных" программ.

>Кстати, упоминалось Qt4 - интерeсует, насколько Qt4 modules независимы друг от друга?

QtCore не имеет зависомстей от других модулей, QtOpenGl завсит от QtGui, QtSql от QtNetwork..(это по обещаниям разработчика) зависимости вполне понятны и оправданны. Большой плюс, это то что QApplication внесен в QtCore и соотв. весь механизм EventDriven тож.

когда говорил, что нельзя написать консольное приложение на Qt3, имел в виду, не то что нельзя написать приложение без единого окна, а то что нельзя избавится от завязок с графикой..

anonymous
()

Всем спасибо! Особенно за ссылку на маиллист тролтехов:) Помогла подсказка про QApplication и bool GUIenabled!
Говоря про консольные приложения я имел ввиду именно необходимость подключения к X серверу ... невозможность собрать qt3 без иксов мне известна:(

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

Вай вай ))) как будто не заметно что человек сказал это с иронией... Человек имел в виду что использовать QT для консольной программы как минимум глупо (это если кто юмора не понял :).. Имхо юмор заметен невооруженным глазом..

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