Compilation on Mac OS X 10.3.9 gives the following
errors, which all can be easily fixed by commenting out
the offending line:
SerialStreamBuf.cc:193: error: 'struct termios' has no
member named 'c_line'
//tio.c_line
In file included from SerialPort.cpp:21:
SerialPort.h:68: error: `B460800' was not declared in
this scope
SerialPort.h:68: error: enumerator value for
`BAUD_460800' not integer constant
//BAUD_460800
PosixSignalDispatcher.cpp: In member function `void
<unnamed>::PosixSignalDispatcherImpl::AttachHandler(int,
PosixSignalHandler&)':
PosixSignalDispatcher.cpp:170: error: 'struct
sigaction' has no member named '
sa_restorer'
//sigaction_info.sa_restorer = NULL ;
No doubt due to different version of termio.h and
another POSIX header file. Any way to check for these
in the autoconf file?
Logged In: YES
user_id=645118
Thanks for the bug report. I am sure this can be
checked either through configure.in or avoided using
a platform-specific preprocessor macros (ugh). I will
fix it in the next minor release. By the way, does
libserial work correctly after you comment out the
above lines ?
Logged In: YES
user_id=645118
Fixed all the above issues in CVS. These fixes will be
in the next release.
1. BAUD_460800 is not in Single Unix Specification
v2 and appears to work on Linux but not Mac OS X.
2. sigaction.sa_restorer is not defined by POSIX and
should not be used in the first place.
3. termios.c_line is Linux-specific and not defined by
POSIX or Single Unix Specification v2.
Hi, to build on OS X, I had to remove also BAUD_460800 = B460800 from SerialPort.sip