[BioC] Ruuid: Can't install on OSF1

Michael Hoffman hoffman at ebi.ac.uk
Thu Oct 7 18:13:54 CEST 2004


Hi, I can't install Ruuid on a DEC/HP AlphaServer running OSF1, which
is blocking the installation of some other Bioconductor libraries. Here's what happens:

$ ~/arch/OSF1/opt/R/bin/R CMD INSTALL Ruuid
* Installing *source* package 'Ruuid' ...
loading cache ./config.cache
checking for glib-config... (cached) /usr/local/bin/glib-config
checking how to run the C preprocessor... (cached) cc -E
checking for /usr/include/unistd.h... (cached) yes
creating ./config.status
creating src/Makevars
** libs
cc -I/nfs/acari/mh5/arch/OSF1/opt/R/lib/R/include -I/usr/local/include/glib-1.2 -I/usr/local/lib/glib/include -DHAVE_UNISTD_H=1 -I/usr/local/include -std1 -ieee_with_inexact    -std1 -fast -arch ev6 -c Rinit.c -o Rinit.o
cc: Error: /usr/local/include/glib-1.2/glib.h, line 1573: Missing ";". (nosemi)
G_INLINE_FUNC gint      g_bit_nth_lsf (guint32 mask,
--------------^
cc: Info: /usr/local/include/glib-1.2/glib.h, line 1573: "inline" is a keyword in the C99 revision of the C standard.  Using it as an identifier will prevent your program from conforming to that standard. (futurekeywd2)
G_INLINE_FUNC gint      g_bit_nth_lsf (guint32 mask,
^
cc: Error: /usr/local/include/glib-1.2/glib.h, line 1576: Missing ";". (nosemi)
G_INLINE_FUNC gint
--------------^
cc: Error: /usr/local/include/glib-1.2/glib.h, line 1591: Missing ";". (nosemi)
G_INLINE_FUNC gint      g_bit_nth_msf (guint32 mask,
--------------^
cc: Error: /usr/local/include/glib-1.2/glib.h, line 1594: Missing ";". (nosemi)
G_INLINE_FUNC gint
--------------^
cc: Error: /usr/local/include/glib-1.2/glib.h, line 1611: Missing ";". (nosemi)
G_INLINE_FUNC guint     g_bit_storage (guint number);
--------------^
cc: Error: /usr/local/include/glib-1.2/glib.h, line 1613: Missing ";". (nosemi)
G_INLINE_FUNC guint
--------------^
gmake: *** [Rinit.o] Error 1
ERROR: compilation failed for package 'Ruuid'
** Removing '/nfs/acari/mh5/arch/OSF1/opt/R/lib/R/library/Ruuid'
** Restoring previous '/nfs/acari/mh5/arch/OSF1/opt/R/lib/R/library/Ruuid'

The problem is that -std1 tries to enforce strict C89 compliance,
which means no inline keyword. This causes the C compiler to barf when
it gets to an inline declaration. I cannot, for the life of me, figure
out how to get this thing to compile without the offending -std1
option, since R helpfully deletes all the build files between each run.

This problem also exists when using install.packages2("Ruuid",
develOK=T)

Any hints?
-- 
Michael Hoffman <hoffman at ebi.ac.uk>
European Bioinformatics Institute



More information about the Bioconductor mailing list