igraph-help
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[igraph] Installing igraph on Solaris


From: Jens Pfau
Subject: [igraph] Installing igraph on Solaris
Date: Thu, 28 Jan 2010 21:20:08 +1100

Hello,

I am trying to compile the igraph 0.6 main branch on Solaris but
encountering a couple of problems. Maybe you can help me out.

The first problem is that stdint.h does not exist on Solaris but is
substituted by int_types.h. So I have to manually include
sys/int_types.h instead of stdint.h in include/igraph_vector.h and
src/bignum.h.

Configuring with --disable-graphml --disable-gmp and compiling with
GCC 4.0.2, I get the following error:

/usr/local/apps/gcc-4.0.2/bin/gcc -DHAVE_CONFIG_H -I. -I. -I..
-I../include -I../include -Wall -g -O2 -MT libigraph_la-math.lo -MD
-MP -MF .deps/libigraph_la-math.Tpo -c math.c  -fPIC -DPIC -o
.libs/libigraph_la-math.o
math.c: In function 'igraph_finite':
math.c:38: warning: implicit declaration of function 'finite'
Assembler: math.c
        "/var/tmp//ccBBRczl.s", line 96 : Syntax error
make[3]: *** [libigraph_la-math.lo] Error 1


This seems to be related to the assembler used. If I compile with a
GCC 2.95.2 that is installed on the system and includes a GNU
assembler (I infer that from the name of the folder in which this GCC
is installed), I can overcome this error. However, this configuration
fails with another error when compiling from the beginning. Anyway,
not doing that but building on top of the work of the newer GCC, this
version does compile for some time and then fails with this error:

In file included from bignum.h:29,
                 from bigint.h:39,
                 from centrality.c:40:
pstdint.h:710: conflicting types for `uintptr_t'
/usr/include/sys/int_types.h:111: previous declaration of `uintptr_t'
pstdint.h:711: conflicting types for `intptr_t'
/usr/include/sys/int_types.h:110: previous declaration of `intptr_t'
In file included from bigint.h:39,
                 from centrality.c:40:
bignum.h:55: conflicting types for `cnt_t'
/usr/include/sys/types.h:90: previous declaration of `cnt_t'
make[3]: *** [libigraph_la-centrality.lo] Error 1

Does this have something to do with my changes to bignum.h and igraph_vector.h?


I also compiled binutils 2.20 and used the included GNU assembler
explicitly with a GCC 4.0.2 and --disable-graphml --disable-gmp
--with-gnu-as --with-as=/path to binutils/as.

This fails with the following:

pottsmodel_2.cpp:1243: error: call of overloaded 'log(double)' is ambiguous
/local/solaris86/apps/gcc-4.0.2/bin/../lib/gcc/i386-pc-solaris2.9/4.0.2/include/c++/cmath:295:
note: candidates are: float std::log(float)
/local/solaris86/apps/gcc-4.0.2/bin/../lib/gcc/i386-pc-solaris2.9/4.0.2/include/c++/cmath:299:
note:                 long double std::log(long double)
pottsmodel_2.cpp: In member function 'void
PottsModelN::assign_initial_conf(bool)':
pottsmodel_2.cpp:1663: warning: converting to 'unsigned int' from 'double'
pottsmodel_2.cpp: In member function 'double
PottsModelN::HeatBathLookup(double, double, double, unsigned int)':
pottsmodel_2.cpp:1918: error: call of overloaded 'exp(double)' is ambiguous
/local/solaris86/apps/gcc-4.0.2/bin/../lib/gcc/i386-pc-solaris2.9/4.0.2/include/c++/cmath:210:
note: candidates are: float std::exp(float)
/local/solaris86/apps/gcc-4.0.2/bin/../lib/gcc/i386-pc-solaris2.9/4.0.2/include/c++/cmath:214:
note:                 long double std::exp(long double)
make[3]: *** [libigraph_la-pottsmodel_2.lo] Error 1


Can anyone make sense of this? I would very much appreciate your help.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]