Next: , Previous: , Up: Problems with make   [Contents][Index]

8.2.6 Compaq compilers on Alpha CPUs

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-
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: , Previous: , Up: Problems with make   [Contents][Index]

Scott Pakin,