Next: undefined type found DEFINE____, Previous: Incorrect tools/flags are utilized, Up: Problems with make [Contents][Index]
Although coNCePTuaL builds fine on Alpha-based systems when using a gcc compiler, Compaq’s C compilers are sometimes problematic. For instance, the libncptl_wrap.c source file fails to compile on a system with the following versions of the operating system, C compiler, and Python interpreter:
% uname -a OSF1 qsc14 V5.1 2650 alpha % cc -V Compaq C V6.5-011 on Compaq Tru64 UNIX V5.1B (Rev. 2650) Compiler Driver V6.5-003 (sys) cc Driver % python -V Python 2.3 |
On the system that was tested, cc aborts with a set of
‘Missing type specifier or type qualifier’ messages.
The problem appears to be that some of Compaq’s standard C header
files fail to #include
various header files they
depend upon. A workaround is to insert the following
C preprocessor directives in libncptl_wrap.c before the
line reading ‘#include "Python.h"’:
#include <sys/types.h> #include <sys/time.h> #include <sys/stat.h>
A second problem with Compaq compilers on Alpha-based systems occurs under Linux when using Compaq’s ccc compiler:
% uname -a Linux wi 2.4.21-3.7qsnet #2 SMP Fri Oct 17 14:08:00 MDT 2003 alpha unknown % ccc -V Compaq C T6.5-002 on Linux 2.4.21-3.7qsnet alpha Compiler Driver T6.5-001 (Linux) cc Driver Installed as ccc-6.5.6.002-1 Red Hat Linux release 7.2 (Enigma) Using /usr/lib/gcc-lib/alpha-redhat-linux/2.96 (4). |
When linking files into a shared object, ccc aborts with a ‘[…]/.libs: file not recognized: Is a directory’ error message. The problem appears to be that libtool is confused about the arguments it’s supposed to pass to the linker; libtool uses ‘--rpath’ (two hyphens) where the Compaq linker expects ‘-rpath’ (one hyphen). As a workaround, you can edit the libtool file after running ./configure but before running make. Simply replace ‘--rpath’ with ‘-rpath’ in the following libtool line and the problem should go away:
hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir"
Next: undefined type found DEFINE____, Previous: Incorrect tools/flags are utilized, Up: Problems with make [Contents][Index]