libksba-1.0.5 and OSF/1 Alpha: how to make the build succeed
Nelson H. F. Beebe
beebe at math.utah.edu
Wed Jan 14 01:20:27 CET 2009
A build attempt for libksba-1.0.5 on OSF/1 Alpha failed with
compilation errors in assuan-uds.c:
cc -std -DHAVE_CONFIG_H -I. -I.. -I.. -I../include -ieee -I/usr/local/include -c assuan-uds.c
cc: Error: assuan-uds.c, line 105: In this statement, "msg_control" is not a
member of "msg". (needmember)
msg.msg_control = control_u.control;
------^
cc: Error: assuan-uds.c, line 106: In this statement, "msg_controllen" is not
a member of "msg". (needmember)
msg.msg_controllen = sizeof (control_u.control);
------^
cc: Error: assuan-uds.c, line 119: In this statement, "msg_control" is not a
member of "(&msg)". (needmember)
cmptr = CMSG_FIRSTHDR (&msg);
--------------^
cc: Error: assuan-uds.c, line 223: In this statement, "msg_control" is not a
member of "msg". (needmember)
msg.msg_control = control_u.control;
--^
cc: Error: assuan-uds.c, line 224: In this statement, "msg_controllen" is not
a member of "msg". (needmember)
msg.msg_controllen = sizeof (control_u.control);
--^
cc: Error: assuan-uds.c, line 225: In this statement, "msg_control" is not a
member of "(&msg)". (needmember)
cmptr = CMSG_FIRSTHDR (&msg);
----------^
Examination of the <sys/socket.h> header file shows that these struct
members DO exist, but only if _XOPEN_SOURCE_EXTENDED is defined at
compile time.
I restarted the build with
make CC='cc -std -D_XOPEN_SOURCE_EXTENDED'
This time, it got further, but died at
cc -std -D_XOPEN_SOURCE_EXTENDED -DHAVE_CONFIG_H -I. -I.. -I.. -I../include
-ieee -I/usr/local/include -c assuan-io.c
cc: Error: assuan-io.c, line 225: In this declaration, "req" has no linkage
and is of an incomplete type. (incompnolink)
struct timespec req;
------------------^
cc: Error: assuan-io.c, line 226: In this declaration, "rem" has no linkage
and is of an incomplete type. (incompnolink)
struct timespec rem;
------------------^
A search of <sys/time.h> showed that struct timespec is exposed if
_POSIX_C_SOURCE >= 199309L, so another restart with
make CC='cc -std -D_XOPEN_SOURCE_EXTENDED -D_POSIX_C_SOURCE=199309L'
got the build further, where it failed with a missing nanosleep().
Yet another restart with
make CC='cc -std -D_XOPEN_SOURCE_EXTENDED -D_POSIX_C_SOURCE=199309L' LIBS='-lsnprintf -lrt'
produced a successful link, and when I added the check target, I got
this felicitous report:
PASS: fdpassing
==================
All 1 tests passed
==================
Since I had never got a successful build of previous releases of
libassuan, I've happily installed the libksba-1.0.5 library on this
system, and will now see if other packages that depend on libassuan
can be built.
-------------------------------------------------------------------------------
- Nelson H. F. Beebe Tel: +1 801 581 5254 -
- University of Utah FAX: +1 801 581 4148 -
- Department of Mathematics, 110 LCB Internet e-mail: beebe at math.utah.edu -
- 155 S 1400 E RM 233 beebe at acm.org beebe at computer.org -
- Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------
More information about the Gnupg-devel
mailing list