powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
368 сообщений из 368, показаны все 15 страниц
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005649
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужен минимальный код демона либо на C++ либо на Qt.
Только под линукс.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005659
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, также, как и по старому. Ничего не поменялось.
Делаешь fork(), если результат положительный, значит ты в родителе - вываливаешься, оставляя потомка сиротой (его усыновит init); если результат == 0, ты в потомке - в демоне, инициализируешь перехват и обработку сигналов и далее...
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005661
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

fork не нужен.
Демон это просто любая программа, которая не завершается, а выполняет какую-то работу, например слушает на TCP сокете.
В юнит файле указываете для нее (помимо других опций) тип сервиса:
Код: plaintext
1.
2.
[Service]
Type=simple




ЗЫ. Но старые демоны с fork тоже поддерживаются (Type=forking).
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005664
без форка надо будет hup делать, что не комильфо
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005668
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky,

Пробую
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005672
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky,
Юнит файл где создать?
Счас
etc/systemd/system/my.service это линк на
lib/systemd/...
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005674
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Как не изменилось, если от заказчика сервис это скрипт в /etc/init.d/
А так называемый юнит файл отсутствует.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005675
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза 2020
без форка надо будет hup делать, что не комильфо
это пока не дошел. Мне бы запустить hello world))))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005678
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза 2020без форка надо будет hup делать

С systemd - не надо. Он способен демонизировать всё что угодно и как угодно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005679
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky,

Нашел
/usr/lib/systemd/system/: юниты, предоставляемые пакетами при их установке;
/etc/systemd/system/: юниты, устанавливаемые системным администратором.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005680
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpот заказчика сервис это скрипт в /etc/init.d/

Так тебя свой сервис или "от заказчика" (что бы это ни значило)? systemd поддерживает и
старую init.d систему.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005681
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky, демона отличает то, что его "родителем" становится процесс init, который и приглядывает за демоном, и хоронит его, если тот склеил ласты и перешёл в состояние "зомби".
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005683
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Как не изменилось, если от заказчика сервис это скрипт в /etc/init.d/
А так называемый юнит файл отсутствует.
man systemd.unit
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005684
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

Алексей Роза 2020без форка надо будет hup делать

С systemd - не надо. Он способен демонизировать всё что угодно и как угодно.
SIGHUP, как правило, используют для того, чтобы заставить демона перечитать и переприменить конфигурацию без рестарта демона.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005686
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC Sharpот заказчика сервис это скрипт в /etc/init.d/

Так тебя свой сервис или "от заказчика" (что бы это ни значило)? systemd поддерживает и
старую init.d систему.мне свой новый. А перед глазами от заказчика по старому.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005687
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Dimitry Sibiryakov

пропущено...

С systemd - не надо. Он способен демонизировать всё что угодно и как угодно.
SIGHUP, как правило, используют для того, чтобы заставить демона перечитать и переприменить конфигурацию без рестарта демона.
ну дак по новому это
systemctl reload?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005689
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
Как не изменилось, если от заказчика сервис это скрипт в /etc/init.d/
А так называемый юнит файл отсутствует.
man systemd.unit
некогда доки читать. Код пишу)))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005690
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Anatoly Moskovsky, демона отличает то, что его "родителем" становится процесс init, который и приглядывает за демоном, и хоронит его, если тот склеил ласты и перешёл в состояние "зомби".
ключевое слово - становится.
Сразу нельзя создать под init?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005694
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
SIGHUP, как правило, используют для того, чтобы заставить демона перечитать и переприменить конфигурацию без рестарта демона.
ну дак по новому это
systemctl reload?
И как, по твоему, демон должен перечитать конфигурацию без соответствующей реализации?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005695
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
man systemd.unit
некогда доки читать. Код пишу)))
Всё равно придётся прочесть, чтобы научить systemd призывать твоего демона.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005697
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
ключевое слово - становится.
Сразу нельзя создать под init?
Штатным способом нет.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005698
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На тебе хороший пример systemd.unit'а
Обрати внимание на строку 23.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005700
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devSIGHUP, как правило, используют для того, чтобы заставить демона перечитать и
переприменить конфигурацию без рестарта демона.

Для этого надо чтобы
1) у демона была конфигурация;
2) он умел её применять без рестарта.

Второе - задача довольно-таки нетривиальная.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005701
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov, естественно!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005706
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
На тебе хороший пример systemd.unit'а
Обрати внимание на строку 23.
мне минимальный конфиг нужен.
И перезагрузку не гася сервис я лет 10 в винде не использовал. Оффтоп.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005707
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpмне минимальный конфиг нужен.

Google is your friend:
https://gist.github.com/ryankurte/4f00605ced06613b3b1354d08d25ec5f
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005710
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
демона отличает то, что его "родителем" становится процесс init, который и приглядывает за демоном, и хоронит его, если тот склеил ласты и перешёл в состояние "зомби".

Такие детали и многое другое берет на себя systemd.
В коде ничего такого специально делать не нужно. Остается просто написать функционал самого демона.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005719
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
Спс. Класс.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005720
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
systemd, как и SysV-init позволяет demon-инизировать любое приложение.

P.S.
Нет, конечно, полезно уметь обрабатывать разные сигналы, но их и простому приложению полезно уметь обрабатывать.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005721
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky,
Вот счас и проверю. Нужен fork метод или нет.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005722
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky, если проводить параллели с Windows, то линуховый процесс init, это wininit.exe, а линуховый systemd это services.exe.
По умолчанию systemd не призывает демона, а запускает службу (Type=simple) со всеми вытекающими (systemd is a parent process). Чтобы призвать демона, в systemd.unit надо прописать Type=forking (init is a parent process) и код запуска должен делать fork().
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005724
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
systemd, как и SysV-init позволяет demon-инизировать любое приложение.

P.S.
Нет, конечно, полезно уметь обрабатывать разные сигналы, но их и простому приложению полезно уметь обрабатывать.
у меня в Qt проблема.
Там QtService вроде пропала в новых версиях.
Вот и смотрю, как сделать консольное Любое без всякого кода в main
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005725
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Anatoly Moskovsky,
Вот счас и проверю. Нужен fork метод или нет.
Службе не нужен fork(), он нужен демону.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005726
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Там QtService вроде пропала в новых версиях.
Вот и смотрю, как сделать консольное Любое без всякого кода в main
Оно сразу консольное, если ты не закрыл принудительно STDIN, STDOUT, STDERR.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005729
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devСлужбе не нужен fork(), он нужен демону.

Он и демону не нужен, но надо же как-то отвязываться от запускающей консоли...

Флаг forked в systemd вовсе не то, что ты о нём думаешь.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005738
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

rdb_devСлужбе не нужен fork(), он нужен демону.
Он и демону не нужен,Демону нужен! Только так можно породить дочерний процесс из самого себя и сделать его сиротой, чтобы передать на обслуживание процессу init. Кстати, сам systemd является именно демоном.

Dimitry Sibiryakov
но надо же как-то отвязываться от запускающей консоли...
Код: plaintext
1.
2.
3.
fclose(STDIN);
fclose(STDOUT);
fclose(STDERR);


Dimitry Sibiryakov
Флаг forked в systemd вовсе не то, что ты о нём думаешь.
Type=forking заставляет systemd порождать дочерний процесс себя самого и тот завершится сразу за завершением кода призыва демона указанного в systemd.service исполняемого бинарного образа.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005743
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devТолько так можно породить дочерний процесс из самого себя и сделать его сиротой, чтобы
передать на обслуживание процессу init.

Да, но как раз это-то и есть необходимый, но побочный эффект отвязки от консоли. Чисто
чтобы при запуске не приходилось указывать запяточку в конце команды и не оказаться
внезапно пристреленным при выходе пользователя.

И нет, закрытие хэндлов тут никак не помогает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005744
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Anatoly Moskovsky, если проводить параллели с Windows
Не надо проводить таких параллелей: сервисы Windows - совершенно отдельный класс приложений, со своими правилами. Сервисы *nix, в основном, обычные приложения.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005745
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Демону нужен!
Я бы вам поверил, если бы не работал с сервисами из "обычных" приложений.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005747
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Type=forking заставляет systemd порождать дочерний процесс себя самого
... пропускать этап "демонизации" процесса-сервиса.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005749
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Да, но как раз это-то и есть необходимый, но побочный эффект отвязки от консоли. Чисто
чтобы при запуске не приходилось указывать запяточку в конце команды и не оказаться
внезапно пристреленным при выходе пользователя.
Ты попутал с сессией (setsid()).
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005751
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
rdb_dev
Type=forking заставляет systemd порождать дочерний процесс себя самого
... пропускать этап "демонизации" процесса-сервиса.
У systemd нет никакого "процесса демонизации". По умолчанию systemd запускает службы, а демонами становятся только сироты, попцы которым подтирает процесс init и для управления такими процессами, процессу systemd необходимо указать pid-файл.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005754
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
rdb_dev
Демону нужен!
Я бы вам поверил, если бы не работал с сервисами из "обычных" приложений.
Что вы подразумевается под понятием "работать с сервисами из обычных приложений"? Сервисы, это и есть обычные приложения, и демоны тоже - обычные приложения, и взаимодействовать им никто не запрещает.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005757
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
По умолчанию systemd запускает службы, а демонами становятся только сироты, попцы которым подтирает процесс init и для управления такими процессами, процессу systemd необходимо указать pid-файл.
Огорчу я тебя до невозможности
Код: plaintext
1.
2.
3.
4.
#Type=forking
#ExecStart=/opt/firebird/bin/fbguard
Type=simple
ExecStart=/opt/firebird/bin/fb_smp_server
Restart=on-failure

В обоих случаях никакой PID-файл для systemd не нужен. Он даже "вреден".
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005758
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Сервисы, это и есть обычные приложения, и демоны тоже - обычные приложения
Вот это и подразумеваю.
Что кардинально отличается от винды, где сервис - специальный класс приложений, работающих "по специальным правилам".
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005762
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov, в данном случае для fbguard pid-файл не нужен, так как предполагается, что демон fbguard берёт на себя роль демона systemd, чтобы контролировать падения службы fb_smp_server и перезапускать её, что естественно подразумевает не меньшую стабильность работы fbguard в сравнении с systemd, поэтому последнему не указывается pid-файл fbguard и systemd благополучно забывает об fbguard по принципу "выстрелил и забыл", а при Type=simple в запуске fb_smp_server pid-файл не нужен, потому что родительский процесс (systemd) и так знает идентификатор процесса СЛУЖБЫ (не демона) fb_smp_server, так как является его родителем.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005765
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
Там QtService вроде пропала в новых версиях.
Вот и смотрю, как сделать консольное Любое без всякого кода в main
Оно сразу консольное, если ты не закрыл принудительно STDIN, STDOUT, STDERR.
как сделать консольное Демоном!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005767
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
Anatoly Moskovsky,
Вот счас и проверю. Нужен fork метод или нет.
Службе не нужен fork(), он нужен демону.
в чем разница? Может слово сервис добавим? Контекст топика только линукс
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005769
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Вот это помоги осмыслить.

Демоны нового стиля
Современные сервисы для Linux должны быть реализованы как демоны нового стиля.
Это упрощает наблюдение и управление во время выполнения и
упрощает их выполнение.

Для разработки демона нового стиля ни один из шагов инициализации
рекомендуется для демонов SysV. Инициализация нового стиля
такие системы, как systemd, делают их все избыточными. Более того, поскольку
некоторые из этих шагов мешают мониторингу процесса,
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005771
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
Службе не нужен fork(), он нужен демону.
в чем разница?
Перечитай все сообщения в этой ветке.

PetroNotC Sharp
Может слово сервис добавим? Контекст топика только линукс
Нет, не будем добавлять слово "service"! <daemon_name>.service это вообще текстовый файл ( man systemd.service ).
Сделай обычное приложение, пни его как сервис и не насилуй моск!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005772
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Вот это помоги осмыслить.

Демоны нового стиля
Современные сервисы для Linux должны быть реализованы как демоны нового стиля.
Это упрощает наблюдение и управление во время выполнения и
упрощает их выполнение.

Для разработки демона нового стиля ни один из шагов инициализации
рекомендуется для демонов SysV. Инициализация нового стиля
такие системы, как systemd, делают их все избыточными. Более того, поскольку
некоторые из этих шагов мешают мониторингу процесса,
Это результат работы google переводчика? Лучше приведи ссылку на оригинал статьи.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005775
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Службе не нужен fork(), он нужен демону.

Демон - это всего лишь частный случай службы.
В systemd нет отдельного понятия демон. Там любой демон реализуется просто службой. При этом программа реализующая службу может и не знать что она работает в режиме демона.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005777
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
...
Вы были бы совершенно правы, если бы маленько не заблуждались.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005778
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky,
Вот тоже не понял разницу Служа, демон, сервис))))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005779
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашёл...
Код: plaintext
1.
2.
3.
4.
5.
6.
DESCRIPTION
       A daemon is a service process that runs in the background and supervises the system
       or provides functionality to other processes. Traditionally, daemons are implemented
       following a scheme originating in SysV Unix. Modern daemons should follow a simpler
       yet more powerful scheme (here called "new-style" daemons), as implemented by
       systemd(1). This manual page covers both schemes, and in particular includes
       recommendations for daemons that shall be included in the systemd init system.
Ключевая фраза (here called "new-style" daemons) ! Просто они так назвали обычные программы, которые пинает и контролирует systemd. Видимо, для упрощения объяснения терминологии, чтобы не распинаться долго и упорно, как некоторые, вроде меня. :)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005781
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Anatoly Moskovsky,
Вот тоже не понял разницу Служа, демон, сервис))))
"Служба" это перевод с англ. слова "сервис". Что тут непонятного?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005782
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

New-Style Daemons
Modern services for Linux should be implemented as new-style daemons.
This makes it easier to supervise and control them at runtime and
simplifies their implementation.

For developing a new-style daemon, none of the initialization steps
recommended for SysV daemons need to be implemented. New-style init
systems such as systemd make all of them redundant. Moreover, since
some of these steps interfere with process monitoring,
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005784
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
Anatoly Moskovsky,
Вот тоже не понял разницу Служа, демон, сервис))))
"Служба" это перевод с англ. слова "сервис". Что тут непонятного?
ну а про демонов?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005786
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
нашёл...
Код: plaintext
1.
2.
3.
4.
5.
6.
DESCRIPTION
       A daemon is a service process that runs in the background and supervises the system
       or provides functionality to other processes. Traditionally, daemons are implemented
       following a scheme originating in SysV Unix. Modern daemons should follow a simpler
       yet more powerful scheme (here called "new-style" daemons), as implemented by
       systemd(1). This manual page covers both schemes, and in particular includes
       recommendations for daemons that shall be included in the systemd init system.
Ключевая фраза (here called "new-style" daemons) ! Просто они так назвали обычные программы, которые пинает и контролирует systemd. Видимо, для упрощения объяснения терминологии, чтобы не распинаться долго и упорно, как некоторые, вроде меня. :)
ну. То есть с 8 версии дебиан новый механизм?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005787
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovпропускать этап "демонизации" процесса-сервиса.

Точнее сказать - не обращать внимания на преждевременное завершение запущенного процесса.

Внешняя демонизация мне неизвестна.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005793
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Код: plaintext
A daemon is a service process that runs in the background 

Если запустить любую программу в systemd service unit type=simple, то она будет демоном согласно этому вашему же определению )))
- service process
- runs in the background
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005794
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Basil A. Sidorovпропускать этап "демонизации" процесса-сервиса.

Точнее сказать - не обращать внимания на преждевременное завершение запущенного процесса.Похожего эффекта можно добиться с помощью Type=oneshot.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
If set to  forking , it is expected that the process configured with ExecStart=
will call fork() as part of its start-up. The parent process is expected to exit
when start-up is complete and all communication channels are set up. The child
continues to run as the main daemon process. This is the behavior of traditional
UNIX daemons. If this setting is used, it is recommended to also use the
PIDFile= option, so that systemd can identify the main process of the daemon.
systemd will proceed with starting follow-up units as soon as the parent process
exits.

Behavior of  oneshot  is similar to simple; however, it is expected that the
process has to exit before systemd starts follow-up units.  RemainAfterExit= is
particularly useful for this type of service. This is the implied default if
neither Type= or ExecStart= are specified.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005796
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky
rdb_dev
Код: plaintext
A daemon is a service process that runs in the background 

Если запустить любую программу в systemd service unit type=simple, то она будет демоном согласно этому вашему же определению )))
- service process
- runs in the background
Это не моё определение.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005800
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
ну. То есть с 8 версии дебиан новый механизм?
Нет. Принципиально ничего не поменялось.
Просто в линухе запилили что-то типа RunAsService в лице демона systemd, который позволяет превращать привычным способом запускаемые программы в так называемые "new-style" daemons . :) Так понятнее?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005803
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Похожего эффекта можно добиться с помощью Type=oneshot
Вот simple и oneshot - два принципиально разных типа сервисов. Они даже близко не могут заменить друг друга.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005804
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov, прочти внимательней! Имелась в виду схожесть forking и oneshot , а не oneshot и simple .
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005805
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Понятнее)).
Теперь смотри.
Я не ставил fork в main.
systemctl status my
Показывает
The FLY login manager.
Из за этого?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005810
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, ты зарегистрировал его в качестве службы my.service, создав соответствующий текстовый файл в правильном каталоге systemd? А systemctl daemon-reload тоже сделал?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005811
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Понятнее)).
Теперь смотри.
Я не ставил fork в main.
systemctl status my
Показывает
The FLY login manager.
Из за этого?
упс. Разобрался)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005812
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Имелась в виду схожесть forking и oneshot
И эти два ни разу не схожи. Если, конечно, вас интересует функционал, а не выпендрёж.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005814
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Внешняя демонизация мне неизвестна.
Код: plaintext
 nohup
?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005815
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov, немного схожи, если для Type=forking не указывать pid-файл.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005816
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Короче. Он стартует и сразу неактивный.
Из за return 0;
?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005819
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, если ты в запускаемом коде программы делаешь fork(), в my.service у тебя Type=forking, в потомке ты создаёшь pid-файл, путь к которому указан в my.service и в потомке крутится какой-то цикл, то так быть не должно! Но если ты сделал обычную программу и запускаешь её с Type=simple, а программа просто сразу завершает работу, вместо того, чтобы изображать из себя службу и крутить какой-то цикл, то всё Ok.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005822
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Из за return 0;
А должно быть:
Код: plaintext
1.
while (true) ...
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005825
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
немного схожи, если для Type=forking не указывать pid-файл.
Вообще не похожи и вообще не поэтому.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005827
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
PetroNotC Sharp
Из за return 0;
А должно быть:
Код: plaintext
1.
while (true) ...

шутка?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005830
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Еще раз.
Обычное консольное.
Тип в юните строки нету. По умолчанию значит.
Как не закрывать?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005836
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Сделай обычное приложение, пни его как сервис и не насилуй моск!
Консольное не вышло пока
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005841
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Еще раз.
Обычное консольное.
Тип в юните строки нету. По умолчанию значит.
Как не закрывать?
Если по умолчанию, то это Type=simple - обычное приложение без призыва демона через fork() с последующим завершением призывающего процесса.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005842
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще его нет в
service - - status-all
Даже неактивным.
Хотя на
systemctl start my
Запускается и hello world в консоль выкидывает.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005844
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
То есть simple не может быть активным в фоне?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005846
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
>Сделай обычное приложение, пни его как сервис и не насилуй моск!
Консольное не вышло пока
Что именно не вышло? Переключись на нулевую терминальную сессию (sysconsole) с помощью Ctrl+Alt+F1 и посмотри результат вывода программы.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005847
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
То есть simple не может быть активным в фоне?
Может и должен, а может и не должен. Как напишешь программу, так и будет.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005848
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
шутка?
Недопонимание (с вашей стороны). Но попробую разжевать ...
Приложение способно выполнять свои функции до тех пор, пока он не завершилось. Вполне логично, не так ли?
Если приложение должно работать "вечно", то "где-то внутри" будет бесконечный цикл, выход из которого произойдёт или "по условию, которым управляет программист" или "по прерыванию внешним сигналом". Тоже логично?
Всё остальное (запуск при загрузке системы, независимость от терминала, перезапуск при аварийных падениях и т.п.) берёт на себя (под)система инициализации. Или SysV (шелл-скрипты "специального устройства") или systemd (юниты разных типов).
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005853
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Как напишешь программу, так и будет.
"Когда вы говорите, Иван Васильевич ..."
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005854
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,
Ну я думал цикл вынесен куда то в либы или метод какой давно....
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005856
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpТо есть simple не может быть активным в фоне?

Любое завершившееся приложение не может быть активным.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005859
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Короче без такого цикла нельзя?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
int main(void)
{
    while(1) {
        /* TODO: do something usefull here ;-) */
        sleep(1);
    }
}


Чего вы мне тогда твердите про любое приложение))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005861
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,
Ставлю цикл
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005862
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Basil A. Sidorov,
Ну я думал цикл вынесен куда то в либы или метод какой давно....
Даже не знаю кому может понадобиться служба с пустым циклом, внутри которого ничего кроме загрузки процессора не происходит...
Если это какой-то TCP сервер, то в цикле, к примеру, может находится опрос сокетов - какая-то полезная нагрузка, отвечающая решаемым службой задачам.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005867
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
Basil A. Sidorov,
Ну я думал цикл вынесен куда то в либы или метод какой давно....
Даже не знаю кому может понадобиться служба с пустым циклом, внутри которого ничего кроме загрузки процессора не происходит...
Если это какой-то TCP сервер, то в цикле, к примеру, может находится опрос сокетов - какая-то полезная нагрузка, отвечающая решаемым службой задачам.
консрльное подписывается на событие от главной ИС.
Логично?
Как без цикла?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005869
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC SharpТо есть simple не может быть активным в фоне?

Любое завершившееся приложение не может быть активным.пустой цикл поставил.
Теперь всегда активен.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005870
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Еще его нет в
service - - status-all
Даже неактивным.
Хотя на
systemctl start my
Запускается и hello world в консоль выкидывает.

?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005875
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сервис активен.
Проблема - нет в списке выше.
Кто знает?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005878
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тип на фоновый. Пробую.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005880
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpЧего вы мне тогда твердите про любое приложение))

Ну, нам просто лень набирать полностью "любое приложение, которое делает хоть что-то
полезное". Многа букафф, да и собеседник может подумать, что его за полного идиота держат.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005883
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

ОК)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005884
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Тип на фоновый. Пробую.
вылетело по таймауту.
Может при типе forking не надо цикл?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005888
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тип сервиса должен быть не forking, а simple.
Для forking приложение должно (само) демонизироваться, а это лишний код, который нафиг не нужен для нормального функционирования вашего приложения.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005891
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,

OK возвращаю.
Походу дело было в том что команда кажет сервисы СТАРОГО ТИПА
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005893
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
systemd запускает всё. Для SysV-скриптов он просто делает унифицированные обёртки где-то в /run
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005895
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
PetroNotC Sharp
Тип на фоновый. Пробую.
вылетело по таймауту.
Может при типе forking не надо цикл?
По ходу, ты вообще не читаешь ответы длиннее сотни символов... 22209648
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005897
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
systemd запускает всё. Для SysV-скриптов он просто делает унифицированные обёртки где-то в /run

Вот у меня от заказчика старое. Скриптом. Но в списке сервисов его нет.
Завтра буду разбираться. Как они так сделали.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005898
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Я просто не понял такой длинный месседж).
Извиняй.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005899
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Вот счас на
systemctl enable myservice
Failed....... myservice.service arleady exists.
?
То есть это лишняя команда или ошибка?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005902
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Остальное в типе simple и с циклом - работает.
Спасибо помогавшим.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005904
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Вот счас на
systemctl enable myservice
Failed....... myservice.service arleady exists.
?
То есть это лишняя команда или ошибка?
Что тебе выдаёт:
Код: plaintext
 sudo systemctl status myservice.service 
?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005906
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Loaded, active 5 минут
CGroup
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005907
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, я надеюсь, ты пинаешь systemctl с правами root?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005908
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Да
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005909
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sl - флаг у демона закащчика
Ss - у меня.
Это завтра.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005910
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
F STAT WCHAN0 Sl pol_s4 Ss hrtime
Сервис шефов и мой))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005912
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Вот у меня от заказчика старое. Скриптом. Но в списке сервисов его нет.
Код: plaintext
sudo service SysV-сервис команда
Управление зависит от системы: CentOS/Mandrake - chkconfig, Debian/Ubuntu - update.rc, но с этими я подробно не разбирался.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005913
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,
Можно еще учесть что тут Астра... а ля дебиан.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005915
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С "гос-линуксами" я - пас. Там могут "странные ньюансы" :)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005916
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
rdb_dev
Имелась в виду схожесть forking и oneshot
И эти два ни разу не схожи. Если, конечно, вас интересует функционал, а не выпендрёж.
Чего мы спорим, если у тебя под рукой классический демон fbguard? Напиши ему отдельный юнит fbguard.service и сверь результат запуска при Type=forking без указания pid-файла и при Type=oneshot.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005918
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Basil A. Sidorov,
Можно еще учесть что тут Астра... а ля дебиан.
Фиолетово!
Различий в запуске служб и приложений нет. Ко всему прочему, многие пакеты из репозитория Debian, не имеющие существенных зависимостей, спокойно ставятся на AstraLinux (к примеру, я так ставил CodeBlocks).
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005919
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Чего мы спорим, если
... если я уже модифицировал и проверил работу модифицированных SysV-скриптов (FB2.5) и юнитов systemd (FB3.0 и FB2.5).
Тем более, что назначение oneshot внятно описано в документации и это ни разу не forking.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40005922
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Согласен. Но все таки вопрос про список сервисов остался)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006006
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Промежуточные итоги:
- fork метод в простом варианте не нужен
- простой вариант это simple и его можно не писать в юните
- вместо скрипта в init.d в демонах "нового стиля" нужно написать так назваемый юнит файл и кинуть его в другое место
- в коде обеспечить нахождение программы постоянно в работе. Без return 0; Либо через циклы, либо слушая устройства ввода вывода.
- вся работа и управление демоном через systemctl xxxxxx
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006007
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
F STAT WCHAN0 Sl pol_s4 Ss hrtime

Сервис шефов и мой))
Я так понимаю, что Ss поменяется на Sl при установке демона в автозагрузку.
А метод ядра hrtime у меня из за банального цикла и sleep()
Заказчика демон вероятно слушает сеть и поэтому спит на pol_sXXX .
IMHO
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006030
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
rdb_dev
Как напишешь программу, так и будет.
"Когда вы говорите, Иван Васильевич ..."
Ничего не смущает?
Код: plaintext
1.
2.
3.
4.
5.
6.
echo -e "[Unit]
Description=Discard unused blocks

[Service]
Type=oneshot
ExecStart=/sbin/fstrim –av
" >/etc/systemd/system/fstrim.service

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
echo -e "[Unit]
Description=Discard unused blocks once at 48 hours
Documentation=man:fstrim

[Timer]
OnStartupSec=30sec
OnUnitInactiveSec=48hr
RandomizedDelaySec=1min
#AccuracySec=1h
Persistent=true

[Install]
WantedBy=timers.target
" >/etc/systemd/system/fstrim.timer
Не смущает, что /sbin/fstrim не висит в фоне, а лишь регулярно стартует через определённые интервалы времени, причём с Type=oneshot?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006048
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Не смущает
... что его регулярно дёргает какой-то из многочисленных таймеров systemd или задача в кроне?
Меня - нет. А вас?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006059
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov, меня тоже не смущает.
Тогда не понятно к чему было твоё "Когда вы говорите, Иван Васильевич ..." на "Как напишешь программу, так и будет". Утилита запускается как служба, отрабатывает и завершается (Inactive) - в фоне не висит, точно также, как это сделал бы, не являющийся мониторинговым, призывающий демона процесс, который точно также отрабатывает (запускает дочерний процесс через fork()) и завершается. Что не так? Как написано, так и работает.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006062
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Мне цикл не нравится в моей программе службе без ГУИ
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006063
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
Даже не знаю кому может понадобиться служба с пустым циклом, внутри которого ничего кроме загрузки процессора не происходит...
Если это какой-то TCP сервер, то в цикле, к примеру, может находится опрос сокетов - какая-то полезная нагрузка, отвечающая решаемым службой задачам.
консрльное подписывается на событие от главной ИС.
Логично?
Как без цикла?
Наверное ты хотел спросить как без пустого цикла, который ничего не делает? Элементарно!
Службы, как правило, обрабатывают приходящие им сигналы. Часть сигналов можно отправить на свой "автоматический" обработчик - handler, который отрабатывает по callback'у, а часть обрабатывать "вручную" - в цикле основного потока, для чего в этом цикле вешается sigwait(), результатом которого является номер обрабатываемого вручную сигнала. К примеру, ты можешь указать, что хочешь обрабатывать сигналы SIGHUP, SIGTERM, SIGQUIT данным способом и тогда, при появлении этих сигналов, sigwait() будет вываливаться с результатом signo.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006064
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Ты все рассказал про обработку сигналов unix системных.
Мне они не нужны.
Более высокий уровень. Прикладной код.
Класс подписывается и будет вызвана функция по каллбэку или адресу.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006068
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, а как на счёт штатного завершения твоей службы при получении сигнала от systemctl restart my.service ? Непредусмотрено? Просто киляем процесс и всё?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006070
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Это позже. Это рюшечки.
Счас идеальнобыло бы спящий процесс без цикла и он пробудился по какому либо признаку.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006071
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Еще хорошо бы при поступлении message показать его в systree.
Но тоже позже. Не уверен что это нужно в этом же процессе фоновом демона.
Пока можно в логах смотреть.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006073
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
То есть модель желательно такая
- не демон опрашивает, а демон подписывается на....
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006075
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, а как на счёт штатного завершения твоей службы при получении сигнала от systemctl restart my.service ? Непредусмотрено? Просто киляем процесс и всё?
кстати, это вроде уже работает из коробки.
И старт стоп вроде есть.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006080
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
То есть модель желательно такая
- не демон опрашивает, а демон подписывается на....
А что значит "подписывается"? Если ты используешь msgsnd/msgrcv, то msgrcv это по-любому блокируемый или неблокируемый(IPC_NOWAIT) вызов функции, для получения сообщения из очереди и эту функцию тебе надо крутить в цикле. Вот тебе и нагрузка для цикла! Сделай вызов msgrcv блокируемым и пусть реализация этой функции ждёт сообщения, чтобы не крутить постоянный опрос очереди внутри службы.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006081
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
PetroNotC Sharp, а как на счёт штатного завершения твоей службы при получении сигнала от systemctl restart my.service ? Непредусмотрено? Просто киляем процесс и всё?
кстати, это вроде уже работает из коробки.
И старт стоп вроде есть.
В Linux "из коробки" вообще мало что работает. Процесс будет тупо прибит, что даже мяукнуть не успеет.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006082
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
который точно также отрабатывает (запускает дочерний процесс через fork()) и завершается.
Хорошо, попробую и вам разжевать
Код: plaintext
1.
2.
3.
4.
5.
6.
   Loaded: loaded (/usr/lib/systemd/system/firebird-superserver.service; ...
   Active: active (running) since Wed 2020-10-07 16:31:12 +08; 10min ago
  Process: 761 ExecStart=/opt/firebird/bin/fbguard -daemon -forever (code=exited, status=0/SUCCESS)
 Main PID: 765 (fbguard)
   CGroup: /system.slice/firebird-superserver.service
           ├─765 /opt/firebird/bin/fbguard -daemon -forever
           └─766 /opt/firebird/bin/firebird

systemd стартовал fbguard (pid 761), который "подготовился к демонизации", fork-нулся, (как-то) проверил статус потомка (pid 765) и родительский процесс fbguard (успешно) завершился.
Всё это время systemd ожидал демонизации fbguard и "взял на контроль" дочерний (pid 765) процесс fbguard.

systemd "видит", что fbguard запустил ещё один процесс (firebird, pid 766), но состояние этого процесса-потомка systemd не контролирует. Отсутствие контроля легко проверить, сделав, например:
Код: plaintext
 sudo kill `pgrep firebird`
systemd отобразит новый процесс, но состояние сервиса останется прежним (с fbguard ничего не происходило).

Делаем:
Код: plaintext
1.
2.
Type=simple
ExecStart=/opt/firebird/bin/firebird
Restart=on-failure

Активируем изменения, перезапускаем сервис и смотрим статус:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
sudo systemctl daemon-reload
sudo systemctl restart firebird-superserver
systemctl status firebird-superserver
...
   Active: active (running) since Wed 2020-10-07 16:56:21 +08; 12s ago
 Main PID: 1063 (firebird)
   CGroup: /system.slice/firebird-superserver.service
           └─1063 /opt/firebird/bin/firebird

Вполне очевидно, что демонизацию процесса выполнил сам systemd и что он "следит" за напрямую целевым процессом. В частности, будет перезапускать процесс и устанавливать статус сервиса.
В качестве побочного эффекта будут потеряны записи fbguard в firebird.log. Этакий "windows-style".

Так вот - oneshot это подмножество simple, в котором systemd только выполняет демонизацию, но никак не заботится о завершении процесса и не реагирует на код ошибки завершённого процесса.

P.S.
Ах, да - директива PIDFile отсутствует в обоих вариантах юнита.

P.P.S.
Как сделать simple для fbguard - оставляется в качестве домашнего упражнения.
Ещё полезно подумать, что будет, если взять файл, который самостоятельно демонизируется и сделать из него simple-юнит, а потом - oneshot-юнит.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006083
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Я не понял. Чем поможет сигнал, если все равно мой цикл
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
int main()
{
	signal(SIGINT, sig_handler1);
	while(1)
	{
		printf("Hello\n");
		sleep(
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006086
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
В Linux "из коробки" вообще мало что работает. Процесс будет тупо прибит, что даже мяукнуть не успеет.
Вы бы эта, документацию бы, что ли, почитали ....
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006087
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
То есть модель желательно такая
- не демон опрашивает, а демон подписывается на....
А что значит "подписывается"? Если ты используешь msgsnd/msgrcv, то msgrcv это по-любому блокируемый или неблокируемый(IPC_NOWAIT) вызов функции, для получения сообщения из очереди и эту функцию тебе надо крутить в цикле. Вот тебе и нагрузка для цикла! Сделай вызов msgrcv блокируемым и пусть реализация этой функции ждёт сообщения, чтобы не крутить постоянный опрос очереди внутри службы.

Думаю подписчик модуль-классА заказчика вешается на порт и мониторит его. При поступлении message он каллбэком вызывает меня.
Вся кухня внутри классаА.
Зачем тут мой цикл?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006089
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
пропущено...
кстати, это вроде уже работает из коробки.
И старт стоп вроде есть.
В Linux "из коробки" вообще мало что работает. Процесс будет тупо прибит, что даже мяукнуть не успеет.

Бездоказательно.
Что мешает утилите systemctl послать все сигналы типа Приготовиться.... процессу?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006091
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov, ничего нового... Всё это мы уже обсудили:
22209583
22209769
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006093
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Идеально мне надо
Код: plaintext
1.
2.
3.
4.
int main()
{
      ClassA a = new ClassA(адресКаллбэкФункцииТуточки) ;
	//while(1)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006094
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
пропущено...
В Linux "из коробки" вообще мало что работает. Процесс будет тупо прибит, что даже мяукнуть не успеет.

Бездоказательно.
Что мешает утилите systemctl послать все сигналы типа Приготовиться.... процессу?
И как процесс должен эти сигналы обработать?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006096
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Слушай, обработать сигнал ТебяСчасГрохнут или плевать на него - дело программиста.
Напишет освободить ресурс - освободится.
Не напишет, Ось освободит как в винде вместе с процессом.
Неверно говорить что процесс грохают методом вилки из розетки.
Имхо
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006097
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Идеально мне надо
Код: plaintext
1.
2.
3.
4.
int main()
{
      ClassA a = new ClassA(адресКаллбэкФункцииТуточки) ;
	//while(1)

Так напиши подобный класс! В чём проблема?
Конечно, ты можешь порыскать на просторах гитхаба и, возможно, найдёшь там уже кем-то реализованную класс-обёртку или даже целую библиотеку-обёртку, если не надеешься на собственные силы и считаешь, что сделаешь это хуже, чем кто-либо.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006099
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Класс уже есть блин!
Как цикл убрать?
Или после return 0
Будет каллбэк работать?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006100
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Класс уже есть блин!
Как цикл убрать?
Никак!
Сделай классу метод ListenEvents, который будет в цикле крутить msgrcv() и вызывать твою callback функцию. Так или иначе без подобных циклов не обходится даже в венде, просто они скрыты за реализацией соответствующих библиотечных функций. Другое дело, что они там могут быть реализованы намного грамотнее, чем сделало бы большинство начинающих программистов.

PetroNotC Sharp
Или после return 0
Будет каллбэк работать?
Нет, не будет. Возврат из main() приводит к завершению процесса, это же очевидно!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006101
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Я понял.
while(1)+sleep(1) оптимально для данной задачи как усыпить процесс.
Класс уже написан, и убирать цикл внутрь него нет необходимости. Он и в ГУИ прогах работает.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006102
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Вот цикл номер два)))))
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
static volatile sig_atomic_t done_waiting = 0;

static void     handler()
{
  printf("Signal caught\n");
  done_waiting = 1;
}

void    my_pause()
{
  /**
   *  In ISO C, the signal system call is used
   *  to call a specific handler when a specified
   *  signal is received by the current process.
   *  In POSIX.1, it is encouraged to use the sigaction APIs.
   **/
  signal(SIGINT, handler);
  done_waiting = 0;
  while ( !done_waiting )
    ;
}

int     main()
{
  my_pause();
  printf("Hey ! The first call to my_pause returned !\n");
  my_pause();
  printf("The second call to my_pause returned !\n");
  return (0);
}
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006104
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Вместо цикла можно
pause()
?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006105
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpКласс уже написан, и убирать цикл внутрь него нет необходимости. Он и в ГУИ прогах работает.

Значит в консольных - не сможет. Внезапно, да?..

PetroNotC Sharpwhile(1)+sleep(1) оптимально для данной задачи

Нет, это тупо до безобразия. sleep(infinite) сделает то же самое гораздо эффективнее. Но
см.выше.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006106
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, опять sleep()? Зачем sleep()?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
// это не метод класса, а обычная функция
void ListenMessages( void (*fptr)(int, struct msgbuf *, size_t, long, int) )
{
  for (;;)
  {
    ssize_t rcv_size = msgrcv(msqid, *msgp, msgsz, msgtyp, msgflg);
    ...
    // callback твоей функции
    fptr(msqid, *msgp, rcv_size, msgtyp, msgflg);
  }
}
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006107
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
Класс не мой. Уже тебе объяснял. Его править не рекомендуется.
Нужно ТЭО.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006109
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
ОК. Вариант номер 4)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006112
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Вот цикл номер два)))))
Код: plaintext
1.
2.
3.
4.
5.
void main(int argc, char* argv[])
{
  ListenMessages(&my_callback_function);
  return 0;
}
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006113
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
>sleep(infinite)
Ну вот, я же не знал как усыпить поток правильно.
А ты молчишь.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006115
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
Вот цикл номер два)))))
Код: plaintext
1.
2.
3.
4.
5.
void main(int argc, char* argv[])
{
  ListenMessages(&my_callback_function);
  return 0;
}

отлично!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006116
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Dimitry Sibiryakov,
>sleep(infinite)
Ну вот, я же не знал как усыпить поток правильно.
А ты молчишь.
Кто будет опрашивать очередь сообщений?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006117
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpКласс не мой. Уже тебе объяснял. Его править не рекомендуется.
Нужно ТЭО.

Ну так начни уже программировать. Забудь на время о демонах, напиши простую консольную
программу, которая работает с этим классом. Как я уже сказал, на этом этапе тебя может
ждать неприятный облом.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006127
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
Dimitry Sibiryakov,
>sleep(infinite)
Ну вот, я же не знал как усыпить поток правильно.
А ты молчишь.
Кто будет опрашивать очередь сообщений?
ты системщик? Очередь операционки? Тогда сам и отвечай. А прикладника очередь порта в классе. Логично?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006129
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC SharpКласс не мой. Уже тебе объяснял. Его править не рекомендуется.
Нужно ТЭО.

Ну так начни уже программировать. Забудь на время о демонах, напиши простую консольную
программу, которая работает с этим классом. Как я уже сказал, на этом этапе тебя может
ждать неприятный облом.намекни, где облом? Работает гуёвая из qt
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006130
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpЛогично?
Нет, просто тупо. В стиле дельфийских хомячков.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006133
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Тогда пропускай. Жуй попкорн.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006135
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
С другой стороны, сигналы ядра приходят вне всяких очередей.
Так что про необходимость выгребать из очереди надо подробнее)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006136
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Логично?
Нет.
Какой метод класса заказчика крутит у себя внутри опрос очереди и на выходе предоставляет сообщение? Вот её вызов и крути в цикле!
А иначе со sleep() получаются насильственные действия сексуального характера в отношении представителей одного из родов водоплавающих птиц семейства утиных, отряда гусеобразных.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006137
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
С другой стороны, сигналы ядра приходят вне всяких очередей.
Так что про необходимость выгребать из очереди надо подробнее)
С сигналами работают другие функции. В основном потоке можно крутить обработку сигналов, в другом потоке - опрос очереди.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006142
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
С другой стороны, сигналы ядра приходят вне всяких очередей.
Так что про необходимость выгребать из очереди надо подробнее)
С сигналами работают другие функции. В основном потоке можно крутить обработку сигналов, в другом потоке - опрос очереди.
да.
Может это Уже так сделано.
Их ИС
-----
СервисБ
КлассПодписчикБ

Наша ИС
ДемонА c КлассПодписчикБ

В их ИС их подписчик может сделать что угодно - породить процесс, слушать порт, сокет и микрофон.
В нашем коде пока других очередей и асинхронности нет.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006149
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
Логично?
Нет.
Какой метод класса заказчика крутит у себя внутри опрос очереди и на выходе предоставляет сообщение? Вот её вызов и крути в цикле!
А иначе со sleep() получаются насильственные действия сексуального характера в отношении представителей одного из родов водоплавающих птиц семейства утиных, отряда гусеобразных.
хмм. Что делать если
А) презумция невиновности заказчика
Б) их модули без исходников и работают!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006150
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Я вообще не понимаю, почему Сишникам надо обязательно до цикла добраться?
Каллбэк уже не торт?
))))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006151
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, вероятно, внутри конструктора КлассПодписчикБ порождается другой поток, в котором и осуществляет опрос очереди. В этом случае тебе остаётся лишь написать обработку сигналов и при получении сигнала на завершение работы запустить деструктор экземпляра класса КлассПодписчикБ, чтобы тот правильно всё подчистил за собой и закрыл все дескрипторы, а не тупо отвалился так, что, к примеру, взаимодействующим с ним узлам придётся закрывать сокеты по таймауту, а на это время с их стороны будут блокированы конкурирующие потоки, потому что какая-то условная транзакция чего-либо не завершилась корректно. Так понятно?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006152
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имхо тут прикладник сошелся с системщиком.
Я не лезу в чужой класс и он рабочий.
Нужно запустить его в фоне.
Системщик хочет все переписать вместе с классом.
Притремся)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006154
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Я вообще не понимаю, почему Сишникам надо обязательно до цикла добраться?
Каллбэк уже не торт?
))))
Потому что в известных мне современных ОС callback'и вне циклов встречаются только в драйверах, но никак не на прикладном уровне. Я пока ещё не встречал чисто событийных ОС и все, так или иначе, используют циклы либо в коде самого приложения, либо в "in-proccess серверах" - в динамически линкуемых библиотеках...
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006155
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, вероятно, внутри конструктора КлассПодписчикБ порождается другой поток, в котором и осуществляет опрос очереди. В этом случае тебе остаётся лишь написать обработку сигналов и при получении сигнала на завершение работы запустить деструктор экземпляра класса КлассПодписчикБ, чтобы тот правильно всё подчистил за собой и закрыл все дескрипторы, а не тупо отвалился так, что, к примеру, взаимодействующим с ним узлам придётся закрывать сокеты по таймауту, а на это время с их стороны будут блокированы конкурирующие потоки, потому что какая-то условная транзакция чего-либо не завершилась корректно. Так понятно?

Именно!
Вполне поток может быть или по юниксСовести даже процесс.
Про деструктор подожди.
Оффтоп. Потом проверим корректное завершение.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006157
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
Я вообще не понимаю, почему Сишникам надо обязательно до цикла добраться?
Каллбэк уже не торт?
))))
Потому что в известных мне современных ОС callback'и вне циклов встречаются только в драйверах, но никак не на прикладном уровне. Я пока ещё не встречал чисто событийных ОС и все, так или иначе, используют циклы либо в коде самого приложения, либо в "in-proccess серверах" - в динамически линкуемых библиотеках...
-1
В java циклы вообще плохой тон.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006161
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, Код на Java несамостоятелен (ненативен), также, как и код на .NET или CSharp. В них циклы скрыты реализацией RTL.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006163
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpЯ вообще не понимаю, почему Сишникам надо обязательно до цикла добраться?
Каллбэк уже не торт?

Потому что они знают как на самом деле работают программы и что такое callback.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006168
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Вас в философию тянет)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006169
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Да.
Но ведь крупнейшие вендоры этого и хотят!
Нафига мне цикл в прикладном коде?
Мне нужна
my_pause()
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006175
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpНо ведь крупнейшие вендоры этого и хотят!

Ну так и иди к крупнейшим вендорам, что ты Си-то терроризируешь.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006177
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, Код на Java несамостоятелен (ненативен), также, как и код на .NET или CSharp. В них циклы скрыты реализацией RTL.

The Event System, и Signals & Slots
В первом суть в циклах так как надо выгребать очередь.
Есть второй путь сигналов Qt или подписчиков.
Так что нельзя однозначно говорить что циклы хорошо и нативны.
Имхо
https://habr.com/ru/post/424593/
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006179
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC SharpНо ведь крупнейшие вендоры этого и хотят!

Ну так и иди к крупнейшим вендорам, что ты Си-то терроризируешь.вы хотя бы разбавляйте свои посты технической инфой. Или тут типа бисер не хотите метать.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006184
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>callback'и вне циклов
= мы об одном и том же?
- есть опросить клаву на код нажатой клавишы
- есть подписаться на событие клавы.
Код из процедурного все более событийный. Увы.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006186
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpвы хотя бы разбавляйте свои посты технической инфой.

А смысл? Ты её наотрез отказываешься воспринимать, предпочитая собственные фантазии класса
"В первом суть в циклах так как надо выгребать очередь. Есть второй путь сигналов Qt или
подписчиков."

Что от человека, не знающего как эти технологии устроены, звучит как "есть сим-салабим,
абра-кадабра и ахалай-махалай, которые сами как-то всё делают".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006197
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC Sharpвы хотя бы разбавляйте свои посты технической инфой.

А смысл? Ты её наотрез отказываешься воспринимать, предпочитая собственные фантазии класса
"В первом суть в циклах так как надо выгребать очередь. Есть второй путь сигналов Qt или
подписчиков."

Что от человека, не знающего как эти технологии устроены, звучит как "есть сим-салабим,
абра-кадабра и ахалай-махалай, которые сами как-то всё делают".
Подчеркните красным техническую информацию для читающих публичный форум прогеров. Даже новичков)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006201
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
if (message.author != "PetroNotC Sharp")
   message.content.underline_color = clRed;


Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006265
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
Теоретик ты, против rdb_dev))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006285
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpТеоретик ты

Да нет, теоретик тут пока что только ты, а мои два демона исправно работают.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006293
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC SharpТеоретик ты

Да нет, теоретик тут пока что только ты, а мои два демона исправно работают.аргумент не помог. Ему 5, вам 3 с плюсом)))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006778
Dimitry Sibiryakov
Алексей Роза 2020без форка надо будет hup делать

С systemd - не надо. Он способен демонизировать всё что угодно и как угодно.
эмм... так это привязка к ОС уже
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006779
PetroNotC Sharp
Алексей Роза 2020
без форка надо будет hup делать, что не комильфо
это пока не дошел. Мне бы запустить hello world))))

а в чём сложность? в гугле сотни примеров есть
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006802
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза 2020,
Ну если сотни примеров, покажи первый попавшийся.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006804
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза 2020,
В топике не решены пока 2 вопроса
- почему демон отсутствует в списке на service xxxxx
- почему не работает servicectl enable.
Остальное все работает и решено.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006874
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Алексей Роза 2020,
Ну если сотни примеров, покажи первый попавшийся.
Примеров там хватает...
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006876
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
- почему демон отсутствует в списке на service xxxxx
- почему не работает servicectl enable.
Какое точное название файла "*.service" для systemd у твоей службы?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006878
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
my.service
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006879
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
Алексей Роза 2020,
Ну если сотни примеров, покажи первый попавшийся.
Примеров там хватает...

2011год? LOL

ПИШУТ
Демон должен сохранить свой PID в файл, для того чтобы потом можно было его корректно остановить.

У меня не делал. А новички кинутся делать.
У меня сосед пргер. Кинулся делать обработку сигналов)))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006882
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так что настоящий hello world на 2020год будет написан только тут. В этом топике))))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006885
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, ты же, вроде бы, писал "myservice.service", не?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006886
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Ну там имя вася или петя.
Что спросить то хотел?
Проверить бъёт имя с чем?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006888
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вот, вчера только узнал что это конфиг зовется юнит файлом.... Официально))))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006891
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Я вот, вчера только узнал что это конфиг зовется юнит файлом.... Официально))))
Я тебе об этом три дня тому назад написал. 22209498
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006894
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Ну там имя вася или петя.
Что спросить то хотел?
Проверить бъёт имя с чем?
Читай man systemd.unit , раздел "[INSTALL] SECTION OPTIONS".
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006896
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
Я вот, вчера только узнал что это конфиг зовется юнит файлом.... Официально))))
Я тебе об этом три дня тому назад написал. 22209498
да. Ты и Anatoly Moskovsky помогли врубиться в этот вопрос.
Спс.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006904
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
Ну там имя вася или петя.
Что спросить то хотел?
Проверить бъёт имя с чем?
Читай man systemd.unit , раздел "[INSTALL] SECTION OPTIONS".

Давай проще. Ты профи а я новичОк.
Вот мин юнит от Dimitry
https://gist.github.com/ryankurte/4f00605ced06613b3b1354d08d25ec5f
Рабочий он?
Кроме того что тип там тоже можно вырезать.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006912
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Рабочий он?
Нет. По смыслу (даже бессмысленного) действа типом сервиса должен быть oneshot.
Да, simple тоже работает, но результат вызывает когнитивный диссонанс.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006917
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
PetroNotC Sharp
Рабочий он?
Нет. По смыслу (даже бессмысленного) действа типом сервиса должен быть oneshot.
Да, simple тоже работает, но результат вызывает когнитивный диссонанс.
нужны пруфы или технические доводы
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006919
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если не работает простая логика, то техника уже бессмысленна.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006920
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovПо смыслу (даже бессмысленного) действа типом сервиса должен быть oneshot.

oneshot это для одноразовых действий во время загрузки типа проверки ФС или загрузки
шрифтов в видеокарту.

И вообще тип сервиса в файле описания должен соответствовать тому как приложение реально
работает, а не желанию видеть его таковым.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006939
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
oneshot это для одноразовых действий
... каковым и является:
Код: plaintext
 ExecStart=/bin/bash -c "echo Сообщение"
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006940
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Вы тоже на скамейку запасных.
И вам в шляпу всё, что положено.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006943
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovкаковым и является:

А, ну да, действительно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006954
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
пропущено...
Читай man systemd.unit , раздел "[INSTALL] SECTION OPTIONS".

Давай проще.
Давай!
Код: plaintext
[INSTALL] SECTION OPTIONS

Unit files may include an "[Install]" section, which carries installation
information for the unit. This section is not interpreted by systemd (1)
during runtime; it is used by the enable and disable commands of the
systemctl (1) tool during installation of a unit. Note that settings in the
"[Install]" section may not appear in .d/*.conf unit file drop-ins (see
above).
...
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006964
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, ты положил юнит-файл своего сервиса в каталог /etc/systemd/system/ ?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006967
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, ты положил юнит-файл своего сервиса в каталог /etc/systemd/system/ ?
конечно. Иначе статус бы не показывал процесс
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40006970
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
пропущено...

Давай проще.
Давай!
Код: plaintext
[INSTALL] SECTION OPTIONS

Unit files may include an "[Install]" section, which carries installation
information for the unit. This section is not interpreted by systemd (1)
during runtime; it is used by the enable and disable commands of the
systemctl (1) tool during installation of a unit. Note that settings in the
"[Install]" section may not appear in .d/*.conf unit file drop-ins (see
above).
...
ну ты жук)).
Если я прпвильно понял то строки с target у меня нет. Не понял зачем мне это.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007010
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хммм.. Простой и может дурацкий вопрос.
Можно взять класс в линуксе не из либы.so, а из бинарника?
У заказчика класс для подписок на сообщения из либы берется.
У меня пока есть бинарник. Для отладки пока в таком виде.
Можно?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007201
PetroNotC Sharp
2011год? LOL

полагаю демоны в C/C++ выглядят одинаково последние лет 30
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007213
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза 2020
PetroNotC Sharp
2011год? LOL

полагаю демоны в C/C++ выглядят одинаково последние лет 30
удивительно вы упрямые дуболомы.
Везде пишут Демоны нового стиля.
Но некоторые только что об этом узнают залезая в гугл.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007217
PetroNotC Sharp
Везде пишут Демоны нового стиля.

это которые под systemd чтоли?
так systemd есть далеко не везде
значит уже не везде пишут
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007220
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
удивительно вы упрямые дуболомы.
Везде пишут Демоны нового стиля.
Дуболом тот, кто путает демона (сервис) и (под)систему инициализации.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007221
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза 2020
PetroNotC Sharp
Везде пишут Демоны нового стиля.

это которые под systemd чтоли?
так systemd есть далеко не везде
значит уже не везде пишут
ну дак сделайте обзор профи
Методы создания демона на линукс.
Парой слов.
В чем проблема?
Лично я писал лет N назад демон для запуска GlassFish совсем не так как сейчас для своего работодателя.
Я имею ввиду не код а больше обвязку для запуска.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007222
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
PetroNotC Sharp
удивительно вы упрямые дуболомы.
Везде пишут Демоны нового стиля.
Дуболом тот, кто путает демона (сервис) и (под)систему инициализации.
дуболом пишет общие фразы ни о чем. Без конкретики.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007223
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IT меняется каждые 3 года. Каждые 5-7 лет кардинально (с)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007225
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Везде пишут Демоны нового стиля.
Везде пишут демоны "Нового стиля".
Дурацкое определение... По сути, обычные программы, у которых родителем (усыновителем) является демон systemd, а не процесс init.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007229
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Дурацкое определение...

1
Есть анекдот
Миллион мух не могут ошибаться
https://www.google.com/search?q=миллионы мух не могут ошибаться&rlz=1C1GIGM_enRU733RU775&oq=миллион мух&aqs=chrome.1.69i57j0i10l2j0.7704j0j15&sourceid=chrome&ie=UTF-8
2
Если портянка из 5 пунктов: "Привет мир! в демоне" изменилась ( с дебиан 8) то надо это признать и НЕ засовывать голову в песок.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007258
PetroNotC Sharp
ну дак сделайте обзор профи

гугл освой уже.
ничего нового ты там не найдёшь
форк + цЫкол
форк можешь заменить этим системДэ
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007261
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, я тебе уже писал, что systemd в среде Linux для обычных программ, это эквивалент RunAsService на венде.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40007265
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза 2020,
-1
rdb_dev,
Это к чему?
Что за 30 лет ничего не меняется или к двум выше вопросам по service list?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008402
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Написано:
- бинарник Б использующий либу Л динамик при нажатии на кнопочку.
- либа Л.so использует библиотеки protobuf.
При пересобрать проект Л все пересобирается без ошибок.
При пересобрать Б ошибка линковки либ протобафа.
Вопрос. Куда прописать либы протобафа. В бинарник, если там только кнопка?
Или в либу Л но она собирается без ошибок.
?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008422
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, если в задаче стоит использование динамической библиотеки по кнопке, зачем же ты с ней линкуешь?
Используй API функции загрузки динамических библиотек в адресное пространство процесса: для венды LoadLibrary() / для линуха dlopen(). Затем тащи из них указатели к нужным тебе функциям и далее пинай эти функции через указатели.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008446
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Я не уверен что ты прав.
У меня перед глазами большое ИС заказчика.
У него 20 файлов so и h.
Подключаю их как выше описал.
Значит это динамическая? У них?
Статическая это файлы.а расширением?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008448
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что по первоу вопросу?
Неужели все в notepad пишут?
Почему сборка либы без ошибки а сборка бинарника встаёт?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008452
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Я не уверен что ты прав.
У меня перед глазами большое ИС заказчика.
У него 20 файлов so и h.
Подключаю их как выше описал.
Я так понимаю, это какая-то магическая кнопка в точке Лагранжа между Землёй и Луной, которая по щелчку пальцев загружает в адресное пространство процесса любую shared library, стоит лишь подумать о названии библиотеки? Чудеса... Такого даже C# не умеет.

PetroNotC Sharp

У него 20 файлов so и h.
...
Значит это динамическая? У них?
Статическая это файлы.а расширением?
Да!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008453
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Что по первоу вопросу?
Неужели все в notepad пишут?
Почему сборка либы без ошибки а сборка бинарника встаёт?
Не знаю о каком "первом вопросе" ты ведёшь речь, но для работы с проектом C++ лично я предпочитаю NetBeans IDE.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008457
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpЧто по первоу вопросу?

Он вызвал такой фейспалм, что отвечать просто нечем.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008462
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
Я не уверен что ты прав.
У меня перед глазами большое ИС заказчика.
У него 20 файлов so и h.
Подключаю их как выше описал.
Я так понимаю, это какая-то магическая кнопка в точке Лагранжа между Землёй и Луной, которая по щелчку пальцев загружает в адресное пространство процесса любую shared library, стоит лишь подумать о названии библиотеки? Чудеса... Такого даже C# не умеет.

PetroNotC Sharp

У него 20 файлов so и h.
...
Значит это динамическая? У них?
Статическая это файлы.а расширением?
Да!
на два вопроса да?
Файлы so это динамич, а статич это а расширение. Так?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008463
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC SharpЧто по первоу вопросу?

Он вызвал такой фейспалм, что отвечать просто нечем.продолжай жевать попкорн. Я не против.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008464
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
Что по первоу вопросу?
Неужели все в notepad пишут?
Почему сборка либы без ошибки а сборка бинарника встаёт?
Не знаю о каком "первом вопросе" ты ведёшь речь, но для работы с проектом C++ лично я предпочитаю NetBeans IDE.
ну дак расскажи как там. Два проекта? Сборка как у меня?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008466
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
пропущено...
Да!
на два вопроса да?
Файлы so это динамич, а статич это а расширение. Так?
Не понимаю, что именно тебя смущает... Да, "Да!" на оба вопроса.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008467
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
В Qt из проекта статик на выходе имеем один файл а и число файлов so по количеству классов в проекте. Так?
В динамик я получил один so файл.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008469
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
пропущено...
на два вопроса да?
Файлы so это динамич, а статич это а расширение. Так?
Не понимаю, что именно тебя смущает... Да, "Да!" на оба вопроса.
есть пример динамич подключения на файлах so в вебе и у заказчика.
А ты сказал это неверно.
Так?
Как тебя понять?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008470
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Прочти и скажи что ты критикуешь?
https://evileg.com/en/post/413/
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008473
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
>Такого даже C#
Не знаю.
Я изучаю либы в Qt.
В дельфи по другому. Статич при загрузке экзешника. Динамич load.... ()
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008474
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
ну дак расскажи как там.
Нормально там, мне нравится.

PetroNotC Sharp
Два проекта?
Да хоть десять!

PetroNotC Sharp
Сборка как у меня?
Конечно как у тебя!
Нажимаешь кнопочку "Build project" - удаляет бинарный образ цели, компилирует устаревшие или отсутствующие объектные файлы проекта из исходников и собирает новый бинарный образ цели, а нажимаешь кнопочку "Clean and Build project" - делает всё тоже самое, что по кнопке "Build project", но предварительно удаляет все объектные файлы проекта. А какие ещё могут быть варианты?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008475
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Прочти и скажи что ты критикуешь?
https://evileg.com/en/post/413/
Я разве что-то критикую?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008478
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpВ дельфи по другому. Статич при загрузке экзешника. Динамич load.... ()

В обоих случаях это динамическая библиотека. Разница - "раннее связывание" против
"позднего связывания".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008479
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
Прочти и скажи что ты критикуешь?
https://evileg.com/en/post/413/
Я разве что-то критикую?
да. Выше
rdb_dev
PetroNotC Sharp, если в задаче стоит использование динамической библиотеки по кнопке, зачем же ты с ней линкуешь?
Используй API функции загрузки динамических библиотек в адресное пространство процесса: для венды LoadLibrary() / для линуха dlopen(). Затем тащи из них указатели к нужным тебе функциям и далее пинай эти функции через указатели.

Переведи что я ПО СТАТЬЕ не так сделал?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008480
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC SharpВ дельфи по другому. Статич при загрузке экзешника. Динамич load.... ()

В обоих случаях это динамическая библиотека. Разница - "раннее связывание" против
"позднего связывания".
Наконец то отложил попкорн.
Теперь для Qt терминологию.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008486
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
>Такого даже C#
Не знаю.
Я изучаю либы в Qt.
В дельфи по другому. Статич при загрузке экзешника. Динамич load.... ()
У тебя каша в голове!
Во-первых у Delphi и C++ Builder от Borland/Embarcadero свои собственные динамические библиотеки, а на счёт статических я не уверен, что их совпадающее со статическими MSVC библиотеками расширение (*.lib) позволяет линковать их в проектах MSVC. Во-вторых, линковка с проектом динамических библиотек тоже возможна, для чего компилятор автоматически линкует с исполняемым бинарным образом загрузчик и линковщик динамических библиотек, ну а если конкретное имя библиотеки на момент компиляции неизвестно, но есть информация о неком унифицированном API, то, как правило, необходимы дополнительные приседания с чтением информации из конфигурационного файла для определения имени конкретной динамической библиотеки (к примеру использование библиотек fbclient или gds32, которые экспортируют унифицированный набор "gds_*" функций для работы с СУБД).
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008487
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
>Такого даже C#
Не знаю.
Я изучаю либы в Qt.
В дельфи по другому. Статич при загрузке экзешника. Динамич load.... ()
У тебя каша в голове!
Во-первых у Delphi и C++ Builder от Borland/Embarcadero свои собственные динамические библиотеки, а на счёт статических я не уверен, что их совпадающее со статическими MSVC библиотеками расширение (*.lib) позволяет линковать их в проектах MSVC. Во-вторых, линковка с проектом динамических библиотек тоже возможна, для чего компилятор автоматически линкует с исполняемым бинарным образом загрузчик и линковщик динамических библиотек, ну а если конкретное имя библиотеки на момент компиляции неизвестно, но есть информация о неком унифицированном API, то, как правило, необходимы дополнительные приседания с чтением информации из конфигурационного файла для определения имени конкретной динамической библиотеки (к примеру использование библиотек fbclient или gds32, которые экспортируют унифицированный набор "gds_*" функций для работы с СУБД).
это я поня.
Действительно, в дельфи есть пакеты с RTTI и есть dll. Но опустим.
Теперь к нашим баранам.
Линковка с динамич либой - так называем?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008488
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
В Qt из проекта статик на выходе имеем один файл а и число файлов so по количеству классов в проекте. Так?
В динамик я получил один so файл.
Один любой проект собирает один целевой бинарный образ. Другое дело, что в одном большом репозитории может находится множество связанных проектов, в каждом из которых будет свой файл, описывающий правила сборки проекта (в твоём случае это файл на языке сборки QMake).
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008489
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Ближе к вопросу. Почему сборка молчит? У тебя молчит?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008490
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Итого у меня "Линковка с динамич либой".
Вопрос прежний.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008491
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Переведи что я ПО СТАТЬЕ не так сделал?
В статье нет никакой кнопки для линковки библиотеки. Там только выпадающий список для выбора типа цели и чуть ниже предлагается ввести имя цели - результирующего бинарного образа, который будет собран из объектных файлов, скомпилированных из исходников.
Где ты там магическую линковку по кнопке разглядел?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008492
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
это я поня.
Действительно, в дельфи есть пакеты с RTTI и есть dll. Но опустим.
Как была каша в голове, так и осталась... RTTI вообще не имеет отношения к динамическим или статическим библиотекам, как таковым! RTTI это опция компилятора для использования дополнительных возможностей run-time type information.

PetroNotC Sharp
Теперь к нашим баранам.
Линковка с динамич либой - так называем?
Нет там в статье никакой линковки с динамической библиотекой. Статья о том как создать проект, который при компиляции и сборке на выходе даст динамическую библиотеку.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008493
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
Переведи что я ПО СТАТЬЕ не так сделал?
В статье нет никакой кнопки для линковки библиотеки. Там только выпадающий список для выбора типа цели и чуть ниже предлагается ввести имя цели - результирующего бинарного образа, который будет собран из объектных файлов, скомпилированных из исходников.
Где ты там магическую линковку по кнопке разглядел?
ты цитируй когда отвечаешь на вопрос. Как я делаю. В цитате нет никакой линковки.
Я говорил слово СБОРКА в самом первом вопросе.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008496
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вернулись к вопросу.
22214047
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008498
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
пропущено...
В статье нет никакой кнопки для линковки библиотеки. Там только выпадающий список для выбора типа цели и чуть ниже предлагается ввести имя цели - результирующего бинарного образа, который будет собран из объектных файлов, скомпилированных из исходников.
Где ты там магическую линковку по кнопке разглядел?
ты цитируй когда отвечаешь на вопрос. Как я делаю. В цитате нет никакой линковки.
Я говорил слово СБОРКА в самом первом вопросе.
Цитирую:
PetroNotC Sharp
rdb_dev,
Итого у меня "Линковка с динамич либой".
Вопрос прежний.

Какая тебе линковка с твоей "динамической либой", если ты эту либу даже сделать не в состоянии? Каждая динамическая или статическая библиотека должны экспортировать некий набор функций.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008499
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpТеперь для Qt терминологию.

Это системная терминология. Не зависит от используемого фреймворка.

DLL/SO это динамическая библиотека. "Линковка" с ней означает использование раннего
связывания и добавление этой библиотеки в таблицы импорта результата линковки.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008500
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Я же твой термин взял.
Ты сказал что дин либа работвет тольк с load в коде.
Я тебе дал пример без этого.
Так или нет?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008503
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
>Используй API функции загрузки динамических библиотек в адресное пространство процесса: для венды LoadLibrary() / для линуха dlopen(). Затем тащи из них указатели к нужным тебе функциям и далее пинай эти функции через указатели.
== в стать по ссылке другой метод?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008504
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devКаждая динамическая или статическая библиотека должны экспортировать некий набор функций.

Статическая библиотека ничего не экспортирует, это просто несколько объектных файлов,
сваленных в одну кучу.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008505
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, чтобы библиотека линковалась, её, как правило, необходимо исталлировать туда, где её сможет найти загрузчик динамических библиотек. Для этого в файл на языке сборки добавляют цель "install", чтобы при вызове, к примеру, "qmake install" библиотека оказалась там, где её сможет найти ldconfig. Затем надо запустить ldconfig, если в цели "install" это не предусмотрено.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008507
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC SharpТеперь для Qt терминологию.

Это системная терминология. Не зависит от используемого фреймворка.

DLL/SO это динамическая библиотека. "Линковка" с ней означает использование раннего
связывания и добавление этой библиотеки в таблицы импорта результата линковки.
Соседний мембер видит динамич только с load()
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008509
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
rdb_devКаждая динамическая или статическая библиотека должны экспортировать некий набор функций.

Статическая библиотека ничего не экспортирует, это просто несколько объектных файлов,
сваленных в одну кучу.в Qt это было 4 штуки so с именами классов.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008510
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Я же твой термин взял.
Ты сказал что дин либа работвет тольк с load в коде.
Я тебе дал пример без этого.
Так или нет?
Так или иначе (при раннем связывании или при позднем) динамическая библиотека грузится в адресное пространство процесса посредством вызова API функции dlopen() "вручную" (при соответствующей реализации в исходном коде) или "автоматически" (при соответствующем указании линковщику).
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008511
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
в Qt это было 4 штуки so с именами классов.
Ты будешь матчасть учить или донимать нас дурацкими вопросами?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008512
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, чтобы библиотека линковалась, её, как правило, необходимо исталлировать туда, где её сможет найти загрузчик динамических библиотек. Для этого в файл на языке сборки добавляют цель "install", чтобы при вызове, к примеру, "qmake install" библиотека оказалась там, где её сможет найти ldconfig. Затем надо запустить ldconfig, если в цели "install" это не предусмотрено.
мы уклонились. Это деплой на машину.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008513
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
в Qt это было 4 штуки so с именами классов.
Ты будешь матчасть учить или донимать нас дурацкими вопросами?
дак ты не увидел раннего связывания в моем примере. Я причем?
load твоя фраза?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008516
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpв Qt это было 4 штуки so с именами классов.

SO это динамические библиотеки. Если кто-то сказал тебе, что они статические - он соврал.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008519
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC Sharpв Qt это было 4 штуки so с именами классов.

SO это динамические библиотеки. Если кто-то сказал тебе, что они статические - он соврал.щаз проверю еще раз
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008521
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
мы уклонились. Это деплой на машину.
Не имеет значения! "ldconfig" никто не отменял.
RTFM:
GCC Command Options
man ldconfig
man dlopen
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008522
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
дак ты не увидел раннего связывания в моем примере. Я причем?
А я должен был как-то увидеть раннее связывание?

PetroNotC Sharp
load твоя фраза?
Ты будешь читать или спорить? 22214206
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008523
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
Ты прав. Объектных с расширением о по числу классов и файл а это zip их вместе
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008524
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
дак ты не увидел раннего связывания в моем примере. Я причем?
А я должен был как-то увидеть раннее связывание?

PetroNotC Sharp
load твоя фраза?
Ты будешь читать или спорить? 22214206
ну дак вы уточняйте доп вопросами.
Зачем мне трактат про статику если я не про нее?
Зачем про install если мы про сборку?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008526
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Щаз делаю в pro файле либы копировать после сборки в lib include
Может версии просто рассинхрон
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008527
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
ну дак вы уточняйте доп вопросами.
Зачем мне трактат про статику если я не про нее?
Зачем про install если мы про сборку?
Про какую ещё статику?! 🤦
Про линковку со статическими библиотеками там вообще речи не идёт!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008533
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Лучше расскажи как в твоем ide прицепить к либе protobuf
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008539
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
sudo aptitude install libprotobuf-dev
# Для сборки указать в other compiler options:
`pkg-config protobuf --cflags`

# Для линковки указать в other linker options:
`pkg-config protobuf --libs`

#  ОБЯЗАТЕЛЬНО В АПОСТРОФАХ , а не в одинарных или двойных кавычках

Подробнее об опциях линковки здесь .
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008540
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp,
Код: plaintext
1.
2.
3.
4.
5.
sudo aptitude install libprotobuf-dev
# Для сборки указать в other compiler options:
`pkg-config protobuf --cflags`

# Для линковки указать в other linker options
`pkg-config protobuf --libs`

Мы про ide с ГУИ.
Дай или картинку из гугла или путь из меню где ставится опция.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008549
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сделал копирование свежих либ и заголовков в общую папку для бинарника.
Плохо то что не нашел как в ide сделать очередность сборки на команду Собрать всё.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008553
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
>Нет там в статье никакой линковки с динамической библиотекой. Статья о том как создать проект, который при компиляции и сборке на выходе даст динамическую библиотеку.
= неверно. Там еще вызов этой либы.
Итого вопрос - почему надо прописывать protobuf в проект бинарника если всё к нему в проекте либы?
Понятен вопрос?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008555
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
PetroNotC Sharp,
Код: plaintext
1.
2.
3.
4.
5.
sudo aptitude install libprotobuf-dev
# Для сборки указать в other compiler options:
`pkg-config protobuf --cflags`

# Для линковки указать в other linker options
`pkg-config protobuf --libs`

Мы про ide с ГУИ.
Дай или картинку из гугла или путь из меню где ставится опция.
на вопрос молчок.
Доп. вопрос - как на команду Собрать всё решается очередность? Сначала либу.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008595
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008601
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpИтого вопрос - почему надо прописывать protobuf в проект бинарника если всё к нему в
проекте либы?

Потому что ты где-то облажался и использовал protobuf непосредственно в проекте бинарника.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008605
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
просьба от новичка к профи. Цитируй на что это ответ. Я ниче не понял.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008606
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC SharpИтого вопрос - почему надо прописывать protobuf в проект бинарника если всё к нему в
проекте либы?

Потому что ты где-то облажался и использовал protobuf непосредственно в проекте бинарника.завтра проверю.
А сборка либы должна требовать внешние библиотеки?
Или сборке либ досточно заголовки и линковки не происходит?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008611
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpзавтра проверю.

А что там проверять-то? Линкер в сообщении об ошибке указывает место, где использован
неопределённый символ, с точностью до модуля если не строки.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008613
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
При сборке либы он молчит. При сборке бинарника испрльзующего либу он ругается на протобаф с адресом либа.so.
Пришлось В БИНАРНИК дописать протобаф.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008686
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
просьба от новичка к профи. Цитируй на что это ответ.
Зачем? Применение очевидно из текста документации.
" man pkg-config " работает даже в окружении MSYS2.

PetroNotC Sharp
Я ниче не понял.
Это потому, что ты не читаешь документацию, которой снабжается практические каждый пакет.
Не веди себя как 20-летний ламер - читай документацию!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008692
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Ты не торопись. Я использую в первую очередь IDE для разработки.
В Qt это Qt Creator. В java это eclipce.
>предпочитаю NetBeans IDE.
Это твоё?
Ты не ответил.
- как там в меню при Собрать всё решается очередность сборки проектов?
- если прав кнопой мыши встать на проект и в меню нажать сборка либы то она попросит protobuf?
Почему тебе не ответить то прежде чем в доки отправлять.
Пошел читать))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008693
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Вот читаю я и офигеваю.
авторФактические библиотеки должны быть установлены в / usr / lib и иметь такие имена, как libhighgui.a или libhighgui.so, но вам, вероятно, не придется ссылаться на них напрямую. Просто используйте вывод вышеперечисленных команд в нужном месте Eclipse для установки флагов ссылок и включения каталогов. Если вы действительно хотите знать, какие библиотеки связаны с OpenCV, вывод pkg-config --libs opencvдаст вам имена.
То есть эта УТИЛИТА/ПАКЕТ/ПРИБЛУДА позволяет узнать какие именно so мне дописать в проект?
А я сам не знаю что ли?
Извини, пока не врубился, но я знаю что protobuf добавляется либо в меню, либо руками в про файле
LIBS +=...... -lprotobuf
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008694
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Если ты профи, но не испрльзуешь это:
авторWYSIWYG (произносится [ˈwɪziwɪɡ], является аббревиатурой от англ. What You See Is What You Get, «что видишь, то и получишь») — свойство прикладных программ или веб-интерфейсов, в которых содержание отображается в процессе редактирования и выглядит максимально близко похожим на конечную продукцию, которая может быть печатным документом, веб-страницей или презентацией. В настоящее время для подобных программ также широко используется понятие «визуальный редактор».
Тогда так и скажи чтобы я тебя понимал.
Ну, там компилишь из командной строки и т.д.
Это не плохо и хорошо. Это предпочтения программиста).
Имхо.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008708
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВот пример использования pkg-config при компиляции:

$ gcc -o test test.c $ ( pkg-config --libs --cflags libpng )
pkg-config может использоваться программным обеспечением для автоматизации сборки, например CMake .
Получается это ручная сборка и в Qt это не надо использовать вообще.
Это оффтоп.
IMHO
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008719
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Ты не торопись. Я использую в первую очередь IDE для разработки.
В Qt это Qt Creator. В java это eclipce.
У Eclipse есть IDE и для C/C++, а в NetBeans IDE разработка под Java и C/C++ уже на борту в виде активируемых возможностей.

PetroNotC Sharp
>предпочитаю NetBeans IDE.
Это твоё?
Да, я работаю в ней. Но надо иметь в виду, что в ней нет никаких графических построителей и если тебе надо создать форму QT в построителе, то для этого придётся использовать QT Creator, а писать код, компилировать и отлаживать можно из под NetBeans IDE.

PetroNotC Sharp
Ты не ответил.
- как там в меню при Собрать всё решается очередность сборки проектов?
- если прав кнопой мыши встать на проект и в меню нажать сборка либы то она попросит protobuf?
Почему тебе не ответить то прежде чем в доки отправлять.
Пошел читать))
Собирается элементарно! Просто прописываю все необходимые опции компилятора в настройках проекта и всё.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008723
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, понятие WYSIWYG введено преимущественно для типографии и печати, чтобы и масштаб надписей в типографских пунктах и цвета на экране в палитре CMYK максимально близко соответствовали тому, что будет напечатано. Для этого разрабатывающие печатную продукцию верстальщики и дизайнеры даже используют специальные мониторы стоимостью в несколько тысяч долларов, которые точно воспроизводят все компоненты белого света температурой 5000 кельвина, а при покупке таких мониторов, на всякий случай, всё таки возят с собой специальное оборудование, которым эту температуру белого замеряют.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008731
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Вот читаю я и офигеваю.
авторФактические библиотеки должны быть установлены в / usr / lib и иметь такие имена, как libhighgui.a или libhighgui.so, но вам, вероятно, не придется ссылаться на них напрямую. Просто используйте вывод вышеперечисленных команд в нужном месте Eclipse для установки флагов ссылок и включения каталогов. Если вы действительно хотите знать, какие библиотеки связаны с OpenCV, вывод pkg-config --libs opencvдаст вам имена.

То есть эта УТИЛИТА/ПАКЕТ/ПРИБЛУДА позволяет узнать какие именно so мне дописать в проект?
А я сам не знаю что ли?
Извини, пока не врубился, но я знаю что protobuf добавляется либо в меню, либо руками в про файле
LIBS +=...... -lprotobufЕсли ты компилируешь нативное для Debian x86_64 приложение, то соответствующие библиотеки должны находится в /usr/lib/x86_64-linux-gnu/

Не имеет совершенно никакого значения, в какой IDE ты осуществляешь разработку! Компиляция и сборка проекта на C++ под Linux'ом вызывается в окружении bash и управляет этой сборкой некая утилита, читающая текстовый файл на своём языке сборки и выполняющая прописанную там последовательность целей и команд. Стандартной утилитой сборки является make, а файл с правилами сборки проекта называется Makefile. У QT свой сборщик - QMake который понимает свой язык и читает свой файл. Ещё есть CMake... Так или иначе, все эти утилиты сами ничего не компилируют и не собирают , а лишь запускают GNUC компиляторы в среде bash с необходимыми параметрами (опциями) командной строки.

Чтобы компилятор мог слинковать твой исполняемый бинарный образ с нужными функциями из DLL/SO, бибилиотеки должны находится там, где их сможет найти компилятор по информации из БД утилиты ldconfig. Что уж говорить про запуск... Если ты не хочешь гемороя с указанием утилите ldconfig где искать фиг знает куда засунутые тобой библиотеки, то клади библиотеки туда, куда сказано. Вообще не понятно, нафига ты собираешь библиотеки protobuf, если deb пакеты с ними есть в репозитории AstraLinux и их надо просто поставить:
Код: plaintext
sudo aptitude install protobuf protobuf-dev

Пакет protobuf-dev содержит не только заголовочные файлы, но и информационный файл ".pc" для БД утилиты pkg-config. Эта утилита возвращает все необходимые параметры (опции) командной строки по требуемому пакету как для компилятора, так и для сборщика (линковщика), беря эту информацию из соответствующего ".pc" файла. Так как поток из STDOUT этой утилиты должен разворачиваться в опции командной строки, то вызов pkg-config с его параметрами командной строки прописываются в апострофах:
Код: plaintext
1.
2.
3.
4.
#для компилятора
g++ `pkg-config protobuf --cflags` -c ...

#для линковщика
g++ `pkg-config protobuf --libs` -o ...
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008733
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Ты вообще меня не понимаешь.
Разве я собираю протобаф?
Ты просто совсем не знаешь qt.
LIBS +=...... -lprotobuf
Вот так указываются тут УСТАНОВЛЕННЫЕ либы.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008735
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
авторВот пример использования pkg-config при компиляции:

$ gcc -o test test.c $ ( pkg-config --libs --cflags libpng )
pkg-config может использоваться программным обеспечением для автоматизации сборки, например CMake .

Получается это ручная сборка и в Qt это не надо использовать вообще.
Это оффтоп.
IMHOНет не получается ручной сборки!
Ручная сборка, это когда ты ручками в командной строке прописываешь запуск компилятора, указывая ему все необходимые параметры командной строки, включая все флаги, а также полный пути исходного и целевого файла и так для каждого .cpp файла проекта, а потом ещё и вручную линкуешь. В твоём же случае, с помощью создания текстовых файлов на соответствующих языках сборки для утилит сборки тебе необходимо добиться соответствующего результата. Поэтому, учи язык сборки qmake, так как далеко не все IDE предоставляют полный функционал и гибкость настройки сборки проекта, а если ты используешь урезанный (бесплатный) вариант QT Creator, то и подавно.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008736
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Получается все твои знания идут лесом в другой IDE.
Я кроме файла проекта *.pro вообще нигде никаких параметров не прописываю на птичьем языке. Только имя компилятора.
Увы.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008738
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Ты вообще меня не понимаешь.
Разве я собираю протобаф?
Ты просто совсем не знаешь qt.
LIBS +=...... -lprotobuf
Вот так указываются тут УСТАНОВЛЕННЫЕ либы.
Где я написал про компиляцию библиотек? Ты будешь фантазировать или читать и понимать то, что тебе пишут?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008741
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Получается все твои знания идут лесом в другой IDE.
Я кроме файла проекта *.pro вообще нигде никаких параметров не прописываю на птичьем языке. Только имя компилятора.
Увы.
Ещё раз для тех, кто в бронепоезде и не читает то, что ему пишут - компиляция и линковка НЕ ЗАВИСЯТ ОТ IDE!!! Даже в случае с компиляторами и линковщиками из MSVS.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008747
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
>учи язык сборки qmake
Угу.
С 5ой версии Qt уже сменили))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008749
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
Ты вообще меня не понимаешь.
Разве я собираю протобаф?
Ты просто совсем не знаешь qt.
LIBS +=...... -lprotobuf
Вот так указываются тут УСТАНОВЛЕННЫЕ либы.
Где я написал про компиляцию библиотек? Ты будешь фантазировать или читать и понимать то, что тебе пишут?

авторЧтобы компилятор мог слинковать твой исполняемый бинарный образ с нужными функциями из DLL/SO, бибилиотеки должны находится там, где их сможет найти компилятор по информации из БД утилиты ldconfig. Что уж говорить про запуск... Если ты не хочешь гемороя с указанием утилите ldconfig где искать фиг знает куда засунутые тобой библиотеки, то клади библиотеки туда, куда сказано. Вообще не понятно, нафига ты собираешь библиотеки protobuf, если deb пакеты с ними есть в репозитории AstraLinux и их надо просто поставить:
sudo aptitude install protobuf protobuf-dev
Зачем ты это написал?
Место где либа я указываю, либы не компилю, либа установлена.
Зачем?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008752
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
пропущено...
Где я написал про компиляцию библиотек? Ты будешь фантазировать или читать и понимать то, что тебе пишут?

авторЧтобы компилятор мог слинковать твой исполняемый бинарный образ с нужными функциями из DLL/SO, бибилиотеки должны находится там, где их сможет найти компилятор по информации из БД утилиты ldconfig. Что уж говорить про запуск... Если ты не хочешь гемороя с указанием утилите ldconfig где искать фиг знает куда засунутые тобой библиотеки, то клади библиотеки туда, куда сказано. Вообще не понятно, нафига ты собираешь библиотеки protobuf, если deb пакеты с ними есть в репозитории AstraLinux и их надо просто поставить:
sudo aptitude install protobuf protobuf-dev

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

Сделай втупую - запусти bash, выполни в нём pkg-config protobuf --libs, посмотри какие именно библиотеки передаются компилятору в ключах "-l" (минус эль) и пропиши их имена в параметрах своего проекта. Всё!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008753
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

>Собирается элементарно! Просто прописываю все необходимые опции компилятора в настройках проекта и всё.
Вопрос про IDE.
Что будет если создать проект из меню по шаблону динамическая библиотека?
И потом меню - сборка?
Не прописывая доп опции компилятора?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008754
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Ты тоже тугой.
Я не делаю НИЧЕГО из того что ты написал. И пути находит не из бд idcinfig.
Спорим?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008756
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, NetBeans IDE создаст Makefile для make, куда пропишет необходимые опции компилятора, после чего можно будет собирать проект и из IDE, и из командной строки с указанием соответствующей цели сборки - debug или release.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008757
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev,
Ты тоже тугой.
Я не делаю НИЧЕГО из того что ты написал. И пути находит не из бд idcinfig.
Спорим?
Удачи!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008759
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
>Сделай втупую - запусти bash, выполни в нём pkg-config
= смешно!
Команда не найдена.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008760
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, NetBeans IDE создаст Makefile для make, куда пропишет необходимые опции компилятора, после чего можно будет собирать проект и из IDE, и из командной строки с указанием соответствующей цели сборки - debug или release.
вот и сознайся что сборку делаешь не из меню а из командной строки.
А pkg-config у меня вообще отсутствует.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008761
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
rdb_dev,
Ты тоже тугой.
Я не делаю НИЧЕГО из того что ты написал. И пути находит не из бд idcinfig.
Спорим?
Удачи!
и тебе спасибо за помощь.
Заходи если чо))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008763
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, понятие WYSIWYG введено преимущественно для типографии и печати, чтобы и масштаб надписей в типографских пунктах и цвета на экране в палитре CMYK максимально близко соответствовали тому, что будет напечатано. Для этого разрабатывающие печатную продукцию верстальщики и дизайнеры даже используют специальные мониторы стоимостью в несколько тысяч долларов, которые точно воспроизводят все компоненты белого света температурой 5000 кельвина, а при покупке таких мониторов, на всякий случай, всё таки возят с собой специальное оборудование, которым эту температуру белого замеряют.
неправда. Есь аналогии ближе к программистам.
В ветке веб прогеров это визуальный редактор вёрстки. Написал строку стиль жирным и справа сразу увидел.
В ветке java это сборка в IDE вместо сборщиков maven/gradle
В ветке дельфи это визульно кинуть кнопку вместо button.top = 120 пикселей.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008767
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
PetroNotC Sharp, NetBeans IDE создаст Makefile для make, куда пропишет необходимые опции компилятора, после чего можно будет собирать проект и из IDE, и из командной строки с указанием соответствующей цели сборки - debug или release.
вот и сознайся что сборку делаешь не из меню а из командной строки.
А pkg-config у меня вообще отсутствует.
Из меню.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008769
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
неправда. Есь аналогии ближе к программистам.
В ветке веб прогеров это визуальный редактор вёрстки. Написал строку стиль жирным и справа сразу увидел.
В ветке java это сборка в IDE вместо сборщиков maven/gradle
В ветке дельфи это визульно кинуть кнопку вместо button.top = 120 пикселей.
Теперь подумай хорошенько - может ли быть WYSIWYG при использовании точек, когда на одном мониторе 96dpi, а на другом 140dpi?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008772
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
неправда. Есь аналогии ближе к программистам.
В ветке веб прогеров это визуальный редактор вёрстки. Написал строку стиль жирным и справа сразу увидел.
В ветке java это сборка в IDE вместо сборщиков maven/gradle
В ветке дельфи это визульно кинуть кнопку вместо button.top = 120 пикселей.
Теперь подумай хорошенько - может ли быть WYSIWYG при использовании точек, когда на одном мониторе 96dpi, а на другом 140dpi?

Во первых, смотри шире а не по точкам.
В ветке js хорошо поимают что такое WYSIWYG.
Это стиль разработки ПО и очередной виток эволюции.
Потом пошло декларативное программирование, потом микросервисы,...
А про dpi так есть еще размер экрана. Есть резиновая верстка, есть сверху выпадающий список в андроид студии.
В нем ты выбираешь УСТРОЙСТВО и ОРИЕНТАЦИЮ экрана чтобы посмотреть как выглядит.
Все это визуально а не в конфиге от царя гороха в 2000 году.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008783
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, прекращай фонтанировать бредовыми фантазиями!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008786
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, прекращай фонтанировать бредовыми фантазиями!
я ответил на твой бред по dpi.
А тебе прогеру вопрос тут
22214642
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008789
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
И тут
- как там в меню при Собрать всё решается очередность сборки проектов?
- если прав кнопой мыши встать на проект (ЧИСТЫЙ ПО ШАБЛОНУ БЕЗ ОПЦИЙ) и в меню нажать сборка либы то она попросит protobuf?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008797
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
PetroNotC Sharp, прекращай фонтанировать бредовыми фантазиями!
я ответил на твой бред по dpi.
А тебе прогеру вопрос тут
22214642
Если pkg-config отсутствует, очевидно, его нужно поставить из репозитория. Не догадаться чтоль?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008800
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
PetroNotC Sharp, прекращай фонтанировать бредовыми фантазиями!
я ответил на твой бред по dpi.
Ещё раз, для тугих, перефразируя сказанное - так как точки на разных устройствах имеют разный физический размер, то при использовании точек в качестве размера элементов никакого WYSIWYG не может быть по определению! Из известного мне программного обеспечения какое-то подобие WYSIWYG у элементов форм было только в MS Access, но там размер задавался в типографских пунктах, а не в точках.

Ко всему прочему, на Debian based системах по умолчанию WYSIWYG отсутствует даже для TrueType шрифтов, размер которых указан в типографских пунктах, потому что система инициализации Иксов для рендеринга шрифтов устанавливает dpi монитора в 96x96, вместо того, чтобы брать фактический из E-EDID.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008801
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
пропущено...
я ответил на твой бред по dpi.
А тебе прогеру вопрос тут
22214642
Если pkg-config отсутствует, очевидно, его нужно поставить из репозитория. Не догадаться чтоль?
убеди новичка что утилита 2000года нужна в 2020 имено в Qt разработке
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008802
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, возьми любой серьёзных open source проект для линуха 2020-го года, базирующийся, например, на массе сторонних библиотек и убедись сам.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008803
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp
пропущено...
я ответил на твой бред по dpi.
Ещё раз, для тугих, перефразируя сказанное - так как точки на разных устройствах имеют разный физический размер, то при использовании точек в качестве размера элементов никакого WYSIWYG не может быть по определению! Из известного мне программного обеспечения какое-то подобие WYSIWYG у элементов форм было только в MS Access, но там размер задавался в типографских пунктах, а не в точках.
еще раз для тугих. Никто только точки не использует. Прогер использует то что пропишет в силе - пиксели, сантиметры, дюймы, абсолютную привазку, относительную, размер шрифта в пунктах, отношения сторон частей.
Че ты до точки докопался при обсуждении СТИЛЕЙ непонятно.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008804
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, в Delphi на формах есть сантиметры, дюймы? Может они есть в QT?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008808
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, возьми любой серьёзных open source проект для линуха 2020-го года, базирующийся, например, на массе сторонних библиотек и убедись сам.
да. Из гитхабв я собирал на основе создания make фaйлов (генерации).
Бывает там генерируется файл проекта для студии.
Ты не понял что это альтернатива?
Хош студией собирай, хочешь, программой CMake которую нужно УСТАНОВИТЬ на комп.
Какое отношение это имеет к топику?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008810
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, в Delphi на формах есть сантиметры, дюймы? Может они есть в QT?
счас сборку обсуждаем. Из меню Qt Creator.
Ясно?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008832
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
PetroNotC Sharp, возьми любой серьёзных open source проект для линуха 2020-го года, базирующийся, например, на массе сторонних библиотек и убедись сам.
да. Из гитхабв я собирал на основе создания make фaйлов (генерации).
Бывает там генерируется файл проекта для студии.
Ты не понял что это альтернатива?
Хош студией собирай, хочешь, программой CMake которую нужно УСТАНОВИТЬ на комп.
Какое отношение это имеет к топику?
Ты реально не понимаешь, что pkg-config не является аналогом make/qmake/cmake и что эта утилита выполняет совсем иную функцию? Почему-то у нормальных программистов под линухом, которые хоть раз сталкивались с проблемой нахождения пути к заголовочным файлам пакета и перечня его линкуемых библиотек, не возникает ни претензий к pkg-config, ни возражений по поводу его использования. Наверное потому, что они думают головой.

Если твой QT такая расчудесно-фантастическая тварь, что должна с полувзгляда понимать, чего ты хочешь, то почему ты уже неделю не в состоянии собрать свой проект с каким-то вонючим protobuf, где всего одна библиотека?

P.S. С фантастическими тварями тебе не сюда, а к Ньюту Саламандеру.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008834
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
rdb_dev
PetroNotC Sharp, в Delphi на формах есть сантиметры, дюймы? Может они есть в QT?
счас сборку обсуждаем. Из меню Qt Creator.
Ясно?
Теперь-то конечно ясно, что ты пытаешься соскользнуть с поднятой тобой же темы про WYSIWYG...
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008837
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Соскочить? Нет. Пить надо зная меру. Я не собираюсь менять Главную тему.
Как ты сумел за 4 страницы не ответить на вопрос двух проектов в нетбинс?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008838
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
> Ты реально не понимаешь, что pkg-config не является аналогом make/qmake/cmake и что эта утилита выполняет совсем иную функцию? Почему-то у нормальных программистов под линухом, которые хоть раз сталкивались с проблемой нахождения пути к заголовочным файлам пакета и перечня его линкуемых библиотек, не возникает ни претензий к pkg-config, ни возражений по поводу его использования. Наверное потому, что они думают головой.
====
Никакой ценности пока не вижу.
Извини, но ценности коммунизма надо постоянно доказывать новичкам.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40008998
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
PetroNotC Sharpзавтра проверю.

А что там проверять-то? Линкер в сообщении об ошибке указывает место, где использован
неопределённый символ, с точностью до модуля если не строки.хммм.
Это где строки и модули при команде
clang++ -ccc-gcc-name g++ -o.......
Errrrrrr
mylib.so: undefined reference to 'my:my()'
mylib.so: undefined reference to 'my:~my()'
Казалось бы, какое дело бинарнику до структуры my если она в нем не используется?
А сборка самой либы одной тоже без ошибок.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40009017
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpА сборка самой либы одной тоже без ошибок.

А ты ключик --no-undefined используй при линковке. У линуха есть дурная привычка к ленивой
загрузке символов.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40009019
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Уже завтра проверю. Возможно это первый флаг будет мной поставлен компилятору)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40009033
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такое чувство что линковка есть только у бинарника-экзешника.
Если в заголловке есть метод, а реально либа "спряталась" то бинарник сразу даст ошибку при сборке.
Сборка либы пофиг на реальность.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40009172
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Такое чувство что линковка есть только у бинарника-экзешника.
Если в заголловке есть метод, а реально либа "спряталась" то бинарник сразу даст ошибку при сборке.
Сборка либы пофиг на реальность.
именно это поведение меня сбило.
Ошибка была элементарная - в файле so не было в include реализации структуры. А заголовок был.
Сбило что компилятор при сборке и ликовке в so молчит.
А вот при бинарнике, вызывающей so дает ошибку.
Решено.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40009173
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не решен вопрос очередности сборки проектов в Qt Creator.
Нужно собрть сначала либу. Потом ее so копирубтся в папку /lib для бинарника
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40009198
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Любое нормальное IDE собирает проекты с учётом их зависимостей.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40009201
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
Ну значит в Qt оно ненормальное. Не нашел.
В дельфи есть в меню - проект выше или ниже.
В шарпе есть в меню - зависимости проектов.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40009238
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут в Creator нет в меню - открыть Решение или группу проектов.
Значит и понятия как группа тоже нет.
Се ля ви.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010200
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Либу при компиляции я кидаю в папку /lib
Соответственно в другой папке бинарник при запуске ее не находит.
Есть два варианта. Даже 3.
- установить после каждой сборки в Ось - не нравится
- переменная LD_LIBRARY_PATH. Но ее надо блин перед каждым запуском
- что то поставить в rpath
Но блин, почему даже рядом с бинарником не видет по умолчанию как в винде?
Что за секс юниксовый?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010219
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогло добавить в бинарнике
QMAKE_RPATHDIR += /home/user/projectmy/lib
Но понятно что изврат.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010357
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
эпитафия...
What You See Is What You Get, «что видишь, то и получишь»
---
PetroNotC Sharp
?
)))
не зная заранее VS после CodeBlock там элементарно ничего не поймешь как либу подключить) а тут просто "директива"
ну это так... юмор...)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010359
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinov,
Мне непонятно почему нормальный принцип винды тут не работает.
Ищем либы рядом с бинарником.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010366
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

Суть
ну запусти две сборки подряд. Сначала либу потом основу. Всего лишь в батнике два qmake или cmake
Или два проекта в Креаторе.
В проекте основы укажи новорожденную либу. Ты же знаешь где она будет готовая свеженькая и как будет называться.
При сплошной компиляции оптимизатор хочет все знать сразу. Т.е. это особо не циклись.

На досуге просто возьми любой исходник (что угодно, хоть даже драйвер какой-нить) без ГУИ и ты ужаснешься, сколько надо будет писать для компиляции ручками а не ВИЗИВИНГ.

Нормального принципа винды не существует.
Быль-Анектод
Когда Билл решил свистнуть у Стива принципы - то все были в сейфе. В итоге Билл взял все картинки что лежали на столе.
Пришлось для японцев под эти картинки клепать быстро какой то код.
Так родился виндоус 1.0
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010395
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinov,
>Или два проекта в Креаторе.
Именно в креаторе они одного ранга и не регулируется очередность.
А батники писать пока лень.
>это особо не циклись.
Не циклюсь. Нажал мышкой на либу - собрать. Потом на бинарнике))
>Нормального принципа винды не существует.
Намек на войны "винда отстой"))))?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010606
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>>Нажал мышкой на либу - собрать. Потом на бинарнике))
ну и нормально же
>>Намек на войны "винда отстой"))))?
да ну на... все так повернуто, что это бессмысленно) в кармане Android-iPhone, вся встроенная электроника на Unix-Linuxe, а вокруг почему то Виндоуз...
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010659
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinov
ну и нормально же
терпимо.
Везде по другому, на что я и поплакался в жилетку.

Alex_Ustinov
>Намек на войны "винда отстой"))))?
да ну на... все так повернуто, что это бессмысленно) в кармане Android-iPhone, вся встроенная электроника на Unix-Linuxe, а вокруг почему то Виндоуз...

))))
Винда, линукс, андроид.... Они у меня как дети. Я их всех люблю)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010732
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

это да...
но на мерседесе с мозгами под Вин вряд ли кто захочет ехать)
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010755
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinov,
Ну вот в данном конкретном маленьком случае поиск библиотек лучше в винде.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010902
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, да неужели? Видимо, ты даже не в курсе про WinSxS (Windows Side by Side).
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40010918
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
PetroNotC Sharp, да неужели? Видимо, ты даже не в курсе про WinSxS (Windows Side by Side).
не в курсе. Рассказывай! Напугай нас!
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011020
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011067
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И что? Тема для новичков о популяризации плюсов). Разжевывай что тут у вас происходит.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011068
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,
Эти ссылки я еще в шарпе читал.
Как они соотносятся с тем что винда ищет либу сначала возле экзешника а линукс нет?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011150
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpКак они соотносятся с тем что винда ищет либу сначала возле экзешника а линукс нет?

Примерно так, что винда вообще исторически работает как в голову взбредёт. Раньше она ещё
и в текущем каталоге искала, пока кто-то не додумался на этом написать вирус. Как только
кто-то напишет вирус, распространяющийся через библиотеку в каталоге с экзешником - и там
перестанет.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011173
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
1. Сказки. Всегда сначала рядом ищет
2. Вирусов боятся - в лес не ходить. Если боимся то и бинарник прячь. Его тоже подменить можно.
3. Текущий каталог сроду не использовал. Он кодерами меняется как угодно для своих дел. А не для либ.
Сроду не думал связывать текущий с либами.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011378
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто чего думал или не думал - дело десятое, важно - что делает система .
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011415
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

Любое нормальное IDE собирает проекты с учётом их зависимостей.

PetroNotC Sharp
Dimitry Sibiryakov,
Ну значит в Qt оно ненормальное. Не нашел.
В дельфи есть в меню - проект выше или ниже.
В шарпе есть в меню - зависимости проектов.


PetroNotC Sharp, может, у тебя специальная сборка QtCreator-а?

Ну не может же быть, что ты просто документацию по инструментам Qt не читал.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011417
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,
Ну и читай по своей ссылке
авторГрафик зависимости пакета процесса. Это пакет приложения плюс все зависимости, указанные <PackageDependency>в <Dependencies>разделе манифеста пакета приложения. Зависимости ищутся в том порядке, в котором они появляются в манифесте.

Каталог, из которого был загружен вызывающий процесс.

Системный каталог (% SystemRoot% \ system32).
Никаких манифестов нет. Значит ищем от папки где ехе.
Вопросы?
)))
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011418
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ,
Очень люблю теоретиков которые пишут не конкретно.
"на земле не работают"
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011425
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Вопросы? )))
Так и будете выдёргивать только то, что соответствует вашим воззрениям?
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011427
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp
ъъъъъ,
Очень люблю теоретиков которые пишут не конкретно.
"на земле не работают"


Ну, страдай, если лень погуглить.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011429
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ
PetroNotC Sharp
ъъъъъ,
Очень люблю теоретиков которые пишут не конкретно.
"на земле не работают"


Ну, страдай, если лень погуглить.
блин. А я уже приготовился голову пеплом посыпать.
Сказать, прости, ты крут. Нашел решения для меня.
Иди уже к своим синтетическим тестам.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011430
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

правильно, не сдавайся, гугл - для слабаков.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011432
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ,
Мы с тобой в разных весовых категориях.
Я каждый день пишу в Qt, а ты раз в год.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011436
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp
ъъъъъ,
Мы с тобой в разных весовых категориях.
Я каждый день пишу в Qt, а ты раз в год.

Тем более непонятно твое упорство.
...
Рейтинг: 0 / 0
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
    #40011438
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ,
Сударь, выражайте свои мысли яснее, чтобы не было уточняющих вопросов.
Упорство в чем?
...
Рейтинг: 0 / 0
368 сообщений из 368, показаны все 15 страниц
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]