iometer 1.1.0 on Solaris 10 SPARC

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

iometer 1.1.0 on Solaris 10 SPARC

Eduard Warkentin
Hello!

I am trying to compile dynamo on a Solaris 10 SPARC box. I am getting error messages I cant resolve, maybe someone can take and provide a clue:

Using GCC, I get this error message:

Changed settings in Makefile:
CC=/opt/csw/bin/gcc
CXX=/opt/csw/bin/g++

bash-3.2# make dynamo
/opt/csw/bin/g++ -O  -DIOMTR_OSFAMILY_UNIX -DIOMTR_OS_SOLARIS  -DIOMTR_CPU_SPARC  -D_LARGEFILE64_SOURCE  -D_REENTRANT  -DUSE_NEW_DISCOVERY_MECHANISM -DFORCE_STRUCT_ALIGN -c Pulsar.cpp
In file included from Pulsar.cpp:135:0:
/opt/csw/include/c++/4.9.0/bits/sstream.tcc: In member function 'virtual std::basic_stringbuf<_CharT, _Traits, _Alloc>::int_type std::basic_stringbuf<_CharT, _Traits, _Alloc>::overflow(std::basic_stringbuf<_CharT, _Traits, _Alloc>::int_type)':
IOCommon.h:1041:33: error: expected unqualified-id before '(' token
    #define max(a,b)             (((a) > (b)) ? (a) : (b))
                                 ^
IOCommon.h:1044:33: error: expected unqualified-id before '(' token
    #define min(a,b)             (((a) < (b)) ? (a) : (b))
                                 ^
In file included from IOPerformance.h:97:0,
                 from IOManager.h:94,
                 from Pulsar.cpp:136:
/usr/include/net/if.h: At global scope:
/usr/include/net/if.h:99:9: error: template argument required for 'struct map'
  struct map *if_memmap;  /* rmap for interface specific memory */
         ^
*** Error code 1
make: Fatal error: Command failed for target `Pulsar.o'

Googling leads to the usage of:

CFLAGS+=-DNOMINMAX

in the Makefile which results in this error message:

bash-3.2# make dynamo
/opt/csw/bin/g++ -O  -DIOMTR_OSFAMILY_UNIX -DIOMTR_OS_SOLARIS  -DIOMTR_CPU_SPARC  -D_LARGEFILE64_SOURCE  -D_REENTRANT  -DUSE_NEW_DISCOVERY_MECHANISM -DFORCE_STRUCT_ALIGN  -DNOMINMAX -c Pulsar.cpp
In file included from IOPerformance.h:97:0,
                 from IOManager.h:94,
                 from Pulsar.cpp:136:
/usr/include/net/if.h:99:9: error: template argument required for 'struct map'
  struct map *if_memmap;  /* rmap for interface specific memory */
         ^
*** Error code 1
make: Fatal error: Command failed for target `Pulsar.o'

At this point I am stuck - do you have any ideas on how to get this running using the GCC?

I also tried using some more compilers:

Using /usr/bin/cc and /usr/bin/CC from the Solaris Studio produce this output:

bash-3.2# make dynamo
/usr/bin/CC -O  -DIOMTR_OSFAMILY_UNIX -DIOMTR_OS_SOLARIS  -DIOMTR_CPU_SPARC  -D_LARGEFILE64_SOURCE  -D_REENTRANT  -DUSE_NEW_DISCOVERY_MECHANISM -DFORCE_STRUCT_ALIGN -c Pulsar.cpp
"IOCommon.h", line 327: Error: A declaration does not specify a tag or an identifier.
"IOCommon.h", line 337: Error: A declaration does not specify a tag or an identifier.
"pack.h", line 64: Error: Syntax error in pragma.
"pack.h", line 64: Error: Missing ')' in #pragma.
"pack.h", line 64: Error: Syntax error in pragma.
"unpack.h", line 66: Error: Syntax error in pragma.
"unpack.h", line 66: Error: Missing ')' in #pragma.
"unpack.h", line 66: Error: Syntax error in pragma.
"pack.h", line 64: Error: Syntax error in pragma.
"pack.h", line 64: Error: Missing ')' in #pragma.
"pack.h", line 64: Error: Syntax error in pragma.
"unpack.h", line 66: Error: Syntax error in pragma.
"unpack.h", line 66: Error: Missing ')' in #pragma.
"unpack.h", line 66: Error: Syntax error in pragma.
"pack.h", line 64: Error: Syntax error in pragma.
"pack.h", line 64: Error: Missing ')' in #pragma.
"pack.h", line 64: Error: Syntax error in pragma.
"unpack.h", line 66: Error: Syntax error in pragma.
"unpack.h", line 66: Error: Missing ')' in #pragma.
"unpack.h", line 66: Error: Syntax error in pragma.
"pack.h", line 64: Error: Syntax error in pragma.
"pack.h", line 64: Error: Missing ')' in #pragma.
"pack.h", line 64: Error: Syntax error in pragma.
"unpack.h", line 66: Error: Syntax error in pragma.
"unpack.h", line 66: Error: Missing ')' in #pragma.
Compilation aborted, too many Error messages.
*** Error code 2
make: Fatal error: Command failed for target `Pulsar.o'

Again, Google helped me, I replaced the original pack.h and unpack.h with the attachments to this post. That results in the following errors:

bash-3.2# make dynamo
/usr/bin/CC -O  -DIOMTR_OSFAMILY_UNIX -DIOMTR_OS_SOLARIS  -DIOMTR_CPU_SPARC  -D_LARGEFILE64_SOURCE  -D_REENTRANT  -DUSE_NEW_DISCOVERY_MECHANISM -DFORCE_STRUCT_ALIGN -c IOGlobals.cpp
"IOCommon.h", line 327: Error: A declaration does not specify a tag or an identifier.
"IOCommon.h", line 337: Error: A declaration does not specify a tag or an identifier.
2 Error(s) detected.
*** Error code 2
make: Fatal error: Command failed for target `IOGlobals.o'

Desperation lead to trying CCFLAGS=-compat=4 in the Makefile, which literally did not change the error message.

So the next step was using the compilers to be found in /usr/sfw/bin/gcc and /usr/sfw/bin/g++:

bash-3.2# make dynamo
/usr/sfw/bin/c++ -O  -DIOMTR_OSFAMILY_UNIX -DIOMTR_OS_SOLARIS  -DIOMTR_CPU_SPARC  -D_LARGEFILE64_SOURCE  -D_REENTRANT  -DUSE_NEW_DISCOVERY_MECHANISM -DFORCE_STRUCT_ALIGN -c IOGlobals.cpp
/usr/sfw/bin/c++ -O  -DIOMTR_OSFAMILY_UNIX -DIOMTR_OS_SOLARIS  -DIOMTR_CPU_SPARC  -D_LARGEFILE64_SOURCE  -D_REENTRANT  -DUSE_NEW_DISCOVERY_MECHANISM -DFORCE_STRUCT_ALIGN -c Pulsar.cpp
In file included from /usr/sfw/lib/gcc/sparc-sun-solaris2.10/3.4.3/../../../../include/c++/3.4.3/sstream:640,
                 from IOPort.h:83,
                 from IOManager.h:93,
                 from Pulsar.cpp:136:
/usr/sfw/lib/gcc/sparc-sun-solaris2.10/3.4.3/../../../../include/c++/3.4.3/bits/sstream.tcc: In member function `virtual typename std::basic_stringbuf<_CharT, _Traits, _Alloc>::int_type std::basic_stringbuf<_CharT, _Traits, _Alloc>::overflow(typename _Traits::int_type)':
/usr/sfw/lib/gcc/sparc-sun-solaris2.10/3.4.3/../../../../include/c++/3.4.3/bits/sstream.tcc:102: error: expected unqualified-id before '(' token
/usr/sfw/lib/gcc/sparc-sun-solaris2.10/3.4.3/../../../../include/c++/3.4.3/bits/sstream.tcc:104: error: expected unqualified-id before '(' token
In file included from IOPerformance.h:97,
                 from IOManager.h:94,
                 from Pulsar.cpp:136:
/usr/include/net/if.h: At global scope:
/usr/include/net/if.h:99: error: template argument required for `struct map'
*** Error code 1
make: Fatal error: Command failed for target `Pulsar.o'

Again, Google lead me to use CFLAGS+ =-DNOMINMAX which produced this:

bash-3.2# make dynamo
/usr/sfw/bin/c++ -O  -DIOMTR_OSFAMILY_UNIX -DIOMTR_OS_SOLARIS  -DIOMTR_CPU_SPARC  -D_LARGEFILE64_SOURCE  -D_REENTRANT  -DUSE_NEW_DISCOVERY_MECHANISM -DFORCE_STRUCT_ALIGN  -DNOMINMAX -c Pulsar.cpp
In file included from IOPerformance.h:97,
                 from IOManager.h:94,
                 from Pulsar.cpp:136:
/usr/include/net/if.h:99: error: template argument required for `struct map'
*** Error code 1
make: Fatal error: Command failed for target `Pulsar.o'

This time, I'm really stuck.

Do you have any clues on how to compile dynamo from iometer 1.1.0 on Solaris 10 SPARC?



Mit freundlichen Grüßen,
Kind Regards,

Eduard Warkentin | Agfa HealthCare
Technical Implementation | IT Services
T  +49 228 2668 2450 | F  +49 180 5 494 223 | M  +49 1511 2668 876

Agfa HealthCare GmbH, Konrad-Zuse-Platz 1-3, 53227 Bonn, Germany

http://www.agfahealthcare.com
http://blog.agfahealthcare.com

Geschäftsführer: Winfried Post (Vorsitzender), Michael Strüter, Dieter Nels | Sitz der Gesellschaft: Bonn, Amtsgericht Bonn, HRB-Nr. 9069 | Ust.-IDNr. DE 172711289
Click on link to read important disclaimer:
http://www.agfahealthcare.com/maildisclaimer
------------------------------------------------------------------------------

_______________________________________________
Iometer-user mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/iometer-user

pack8.h (5K) Download Attachment
unpack8.h (5K) Download Attachment
Loading...