2017-02-18

eddy_em: (Default)
2017-02-18 11:03 am

Выжимка

Вывод таков: одноплатники на ARM — шлак. Надо ждать, пока они станут хотя бы 64-битными. Только тогда их можно будет в своих поделках использовать. А сейчас, пока они 32-битные, да еще и содержат уйму огороженного железа, не работающего в линуксе (привет, аппаратное ускорение графики!), не стоит тратить на них деньги.

Трудно представить себе сферу применимости этой гадости: реального времени в них нет, да и GPIO никакущее — как замену микроконтроллерам их нельзя использовать. Огороженное железо не позволяет использовать их как медиа-плеер (интернет, фильмы, музыка). Узкая ниша — замена крупногабаритного компутера в вещах, где не требуются вычислительные мощности — ограничена особенностями архитектуры, не позволяющей напрямую портировать код с полноценных компьютеров на это.
eddy_em: (Default)
2017-02-18 03:57 pm

Вот это поворот!

Выжимка из man 3 daemon (кстати, в армбиан почему-то отсутствует, читал в генте):
daemon(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
Так что, оказывается, _BSD_SOURCE и _XOPEN_SOURCE не эквивалентны, и указывать нужно обе! Потому как некоторые вещи требуют _XOPEN_SOURCE > 600, из-за чего у меня в Makefile значится -D_XOPEN_SOURCE=1111.

Но, честно говоря, такого поворота, чтобы нужно было меньше определенного числа feature_test_macros выставлять, я не ожидал!

В догонку:
/usr/include/features.h:148:3: предупреждение: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp]
# warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"

Я ваш дом труба шатал!!! Еще и в Makefile делать проверку версии gcc?

Ну, вроде бы все заработало. Сейчас запустил на кубитраке серверный процесс, работающий с all-sky, а на ноутбуке из дома — клиент. Если что-то отвалится, увижу. Пока вроде слаженно работает.
Обновил репозитории на гитхабе-сосфорже-битбакете-гитлабе.