iraf-v216 · Code · Issues (50) · Pull requests (81)
iraf.net Issue #49
[macintel] Unable to build voapps (and libVO.a)
closed olebole opened this issue on 2017-05-09 · 1 comments
olebole commented on 2017-05-09
When building on MacOSX 64 bit, linking the voapps fails:
gcc -g -Wall -m64 -mmacosx-version-min=10.5 -DDarwin -I/Users/travis/build/olebole/iraf-v216/vendor/voclient/voapps -I../ -I../include/ -I../../../include -L./ -o voregistry voApps.c libVOApps.a -lVOTable -lVOClient -lsamp -lcurl -L../ -L../lib/ -L../../../bin/ -lcfitsio
ld: warning: object file (../lib//libcfitsio.a(cfileio.o)) was built for newer OSX version (10.11) than being linked (10.5)
[... more similar linker warnings ...]
Undefined symbols for architecture x86_64:
"_xmlrpc_DECREF", referenced from:
_xr_freeArray in libsamp.a(xrArray.o)
_xr_setIntInArray in libsamp.a(xrArray.o)
_xr_setDoubleInArray in libsamp.a(xrArray.o)
_xr_setBoolInArray in libsamp.a(xrArray.o)
_xr_setStringInArray in libsamp.a(xrArray.o)
_xr_setDatetimeInArray in libsamp.a(xrArray.o)
_xr_initParam in libsamp.a(xrClient.o)
...
"_xmlrpc_INCREF", referenced from:
_xr_defaultMethod in libsamp.a(xrServer.o)
_xr_defaultAsynchHandler in libsamp.a(xrClient.o)
_xr_getIntFromParam in libsamp.a(xrMethod.o)
_xr_getDoubleFromParam in libsamp.a(xrMethod.o)
_xr_getStringFromParam in libsamp.a(xrMethod.o)
_xr_getBoolFromParam in libsamp.a(xrMethod.o)
_xr_getDatetimeFromParam in libsamp.a(xrMethod.o)
...
"_xmlrpc_array_append_item", referenced from: [...]
"_xmlrpc_array_new", referenced from: [...]
"_xmlrpc_array_read_item", referenced from: [...]
"_xmlrpc_array_size", referenced from: [...]
"_xmlrpc_bool_new", referenced from: [...]
"_xmlrpc_client_call2", referenced from: [...]
"_xmlrpc_client_create", referenced from: [...]
"_xmlrpc_client_event_loop_finish", referenced from: [...]
"_xmlrpc_client_setup_global_const", referenced from: [...]
"_xmlrpc_client_start_rpc", referenced from: [...]
"_xmlrpc_datetime_new_str", referenced from: [...]
"_xmlrpc_double_new", referenced from: [...]
"_xmlrpc_int_new", referenced from: [...]
"_xmlrpc_read_bool", referenced from:
[...] ...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[4]: *** [voregistry] Error 1
make[3]: *** [all] Error 2
make[2]: *** [all] Error 2
cp: lib/libVO.a: No such file or directory
The error can be found here, the full build log (including everything that goes to _spool
) is here.
olebole commented on 2017-05-09
This is caused by the following problem, which appeared a few lines above:
gcc -g -ggdb -O0 -c -o xmlrpc_curl_transport.o -I/Users/travis/build/olebole/iraf-v216/vendor/voclient/libsamp/libxrpc/xmlrpc-c-1.16.29 -I/Users/travis/build/olebole/iraf-v216/vendor/voclient/libsamp/libxrpc/xmlrpc-c-1.16.29/include -I/Users/travis/build/olebole/iraf-v216/vendor/voclient/libsamp/libxrpc/xmlrpc-c-1.16.29/include -I/Users/travis/build/olebole/iraf-v216/vendor/voclient/libsamp/libxrpc/xmlrpc-c-1.16.29/lib/util/include -DNDEBUG -m64 -mmacosx-version-min=10.4 -Wall -Wundef -Wimplicit -W -Winline -Wmissing-declarations -Wstrict-prototypes -Wmissing-prototypes -fno-common -g -ggdb -O0 xmlrpc_curl_transport.c
xmlrpc_curl_transport.c:87:10: fatal error: 'curl/types.h' file not found
#include <curl/types.h>
^
1 error generated.
This is probably connected with curl/types.h
being removed since more recent versions of curl: IRAF includes version 7.20.1, which was released in 2010 (!). Already then curl/types.h
was deprecated, and in 2011 it got removed.
Fixed in #51
Last updated on 2017-05-09