Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: rs232 в линукс  (Прочитано 9518 раз)
0 Пользователей и 1 Гость смотрят эту тему.
locator
Постоялец

ru
Offline Offline

« : 26-04-2012 20:21 » 

пишу прогу чтения порта rs232 в ubuntu10,
компилятор netbeans.
скачал пример с инета, там проверка непрочинанных байтов в буфере
порта производится функцией ioctl(fd,FIONREAD, &bytes).
у меня пишется ошибка, что переменная FIONREAD не определена.
заголовочные файлы все подключены, в чем может быть проблема?
и как другим способом проверить состояние буфера?
спасибо за ответ!
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #1 : 26-04-2012 20:28 » 

Код:
# grep -R "FIONREAD" /usr/include
/usr/include/linux/sockios.h:#define SIOCINQ FIONREAD
/usr/include/asm-generic/ioctls.h:#define FIONREAD 0x541B
Код:
# grep -R "ioctls.h" /usr/include
grep: /usr/include/postproc/postprocess.h: No such file or directory
/usr/include/bits/ioctls.h:# error "Never use <bits/ioctls.h> directly; include <sys/ioctl.h> instead."
/usr/include/bits/ioctls.h:#include <asm/ioctls.h>
/usr/include/bits/ioctl-types.h:#include <asm/ioctls.h>
/usr/include/asm/ioctls.h:#include <asm-generic/ioctls.h>
/usr/include/asm/mce.h:#include <asm/ioctls.h>
/usr/include/sys/ioctl.h:#include <bits/ioctls.h>
/usr/include/sys/ioctl.h:   values).  The code to generate <bits/ioctls.h> has omitted these
/usr/include/asm-generic/termios.h:#include <asm/ioctls.h>
Т.е. для тебя нужно #include <sys/ioctl.h>
Кстати NetBeans это не компилятор. А IDE. Компилятор скорее всего gcc.
« Последнее редактирование: 26-04-2012 20:33 от Finch » Записан

Не будите спашяго дракона.
             Джаффар (Коша)
locator
Постоялец

ru
Offline Offline

« Ответ #2 : 26-04-2012 20:35 » 

получается  - /usr/include/asm-generic/ioctls.h не подключил
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #3 : 26-04-2012 20:37 » 

Неа. sys/ioctl.h О чем кстати предупреждает надпись в исходниках
Цитата
"Never use <bits/ioctls.h> directly; include <sys/ioctl.h> instead."
« Последнее редактирование: 26-04-2012 20:39 от Finch » Записан

Не будите спашяго дракона.
             Джаффар (Коша)
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 26-04-2012 20:38 » new

locator, читаем маны. Заголовки там указаны.
pinfo libc
раздел "Low-Level I/O"/"IOCLTLs"
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines