9 Replies Latest reply on Nov 27, 2012 10:29 AM by yurtesen

    x86_open64-4.2.5.2 doesn't compile on Wheezy

    torbenkeil

      Hello all,

       

      I have problems with compiling open64 on Debian Wheezy x86_64.

      I used these configure options:

      ./configure --prefix=/opt/open64 --build=x86_64-unknown-linux-gnu

      make -j16

       

      And I got this error:

      [...]

      In file included from /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/ir_reader.cxx:93:0:

      /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/wn_tree_util.h: In instantiation of ‘void WN_TREE_ITER<(TRAV_ORDER)0u, WHIRL>::Unwind() [with WHIRL = WN*]’:

      /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/ir_reader.cxx:1941:26:   required from here

      /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/wn_tree_util.h:458:9: error: ‘Set_wn’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]

      /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/wn_tree_util.h:458:9: note: declarations in dependent base ‘WN_TREE_ITER_base<WN*>’ are not found by unqualified lookup

      /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/wn_tree_util.h:458:9: note: use ‘this->Set_wn’ instead

      /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/wn_tree_util.h:467:9: error: ‘Set_wn’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]

      /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/wn_tree_util.h:467:9: note: declarations in dependent base ‘WN_TREE_ITER_base<WN*>’ are not found by unqualified lookup

      /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/wn_tree_util.h:467:9: note: use ‘this->Set_wn’ instead

      C++    /usr/src/x86_open64-4.2.5.2/osprey/targdir/crayf90/sgi//usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/wn_util.cxx

      C++    /usr/src/x86_open64-4.2.5.2/osprey/targdir/crayf90/sgi//usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/wutil.cxx

      In file included from /usr/include/c++/4.7/ext/hash_map:61:0,

                       from /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/strtab.h:146,

                       from /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/symtab.h:75,

                       from /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/stab.h:40,

                       from /usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/wn_util.cxx:64:

      /usr/include/c++/4.7/backward/backward_warning.h:33:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. [-Wcpp]

      C++    /usr/src/x86_open64-4.2.5.2/osprey/targdir/crayf90/sgi//usr/src/x86_open64-4.2.5.2/osprey/../osprey/common/com/x8664/config_targ.cxx

      make[4]: *** [ir_reader.o] Fehler 1

      make[4]: *** Warte auf noch nicht beendete Prozesse...

      C++    /usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info/proc_si.o

      RUN    /usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info/targ_si_gen

      ### Warning: scheduling information for ori8 redefined.

      ### Warning: scheduling information for ori16 redefined.

      make[3]: »targ_si.c« ist bereits aktualisiert.

      C      /usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info/../../../osprey/common/targ_info/access/ti_bundle.c

      C      /usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info/../../../osprey/common/targ_info/access/ti_latency.c

      C      /usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info/../../../osprey/common/targ_info/access/ti_res.c

      C      /usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info/../../../osprey/common/targ_info/access/ti_res_count.c

      C      /usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info/../../../osprey/common/targ_info/access/ti_res_res.c

      C      /usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info/targ_si.c

      AR     /usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info/libtarginfo.a

      make[3]: Leaving directory `/usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info'

      make last

      make[3]: Entering directory `/usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info'

      make[3]: Leaving directory `/usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info'

      make[2]: Leaving directory `/usr/src/x86_open64-4.2.5.2/osprey/targdir/targ_info'

      make[3]: *** [default] Fehler 2

      make[2]: *** [first] Fehler 2

      make[2]: Leaving directory `/usr/src/x86_open64-4.2.5.2/osprey/targdir/crayf90'

      make[1]: *** [mfef95] Fehler 2

      make[1]: Leaving directory `/usr/src/x86_open64-4.2.5.2'

      make: *** [build] Fehler 2

       

      Can you help me?

       

       

      Greetings,

      Torben

        • Re: x86_open64-4.2.5.2 doesn't compile on Wheezy
          yurtesen

          Why dont you use the binary package?

           

          You need to use GCC 4.4, you are probably using a newer version? (and GCC 4.3 is recommended according to the page below

          http://www.open64.net/?id=254

           

          See:

          http://lists.debian.org/debian-wnpp/2012/09/msg00224.html

            • Re: x86_open64-4.2.5.2 doesn't compile on Wheezy
              yurtesen

              Although now I found

              http://devgurus.amd.com/thread/156088

              Where it says it compiles with 4.6... hmm... which compiler version do you have?

                • Re: x86_open64-4.2.5.2 doesn't compile on Wheezy
                  torbenkeil

                  Hello,

                   

                  I tried to compile with gcc 4.7.

                  Now I found a new release of open64 in the version of 5.0. This doesn't compile with 4.7, too.

                   

                  I'm just now trieing to compile with gcc-4.6. I did not found a configure option to change the compiler, so I did an:

                       export CC=/usr/bin/gcc-4.6

                       export CPP=/usr/bin/g++-4.6

                   

                  After that I executed configure:

                       root@at-lt-05c:/usr/src/open64-5.0/build# ../configure --prefix=/opt/open64-5.0

                   

                  And started compiling with

                       make -j16

                   

                  And again I have error messages:

                       Abbruch: Kein Projektarchiv (.hg Verzeichnis) in /usr/src/open64-5.0/build/osprey/targdir/driver gefunden!

                   

                  But I found something intersting:

                       In file included from /usr/include/c++/4.7/ext/hash_map:61:0, [...]

                   

                  There's not the correct compiler used...

                  So I configured update-alternavies as in this link described http://askubuntu.com/questions/26498/choose-gcc-and-g-version

                   

                  Executed again

                       ../configure --prefix=/opt/open64-5.0

                       make -j16

                   

                  And ended with this error:

                  make[3]: Entering directory `/usr/src/open64-5.0/build/osprey/targdir/ipl'

                  C++    /usr/src/open64-5.0/build/osprey/targdir/ipl//usr/src/open64-5.0/build/osprey/../../osprey/ipa/local/ipl_summarize_util.cxx

                  g++: error: unrecognized option ‘-CG:all_sched=0’

                   

                  No I have no idea on how to get open64 workin on debian wheezy.

                    • Re: x86_open64-4.2.5.2 doesn't compile on Wheezy
                      yurtesen

                      Why dont you use the provided binaries instead of compiling open64?

                       

                      Your latest error was discussed in forum:

                      g++: error: unrecognized option ‘-CG:all_sched=0’

                      http://devgurus.amd.com/message/1254420#1254420

                      • Re: x86_open64-4.2.5.2 doesn't compile on Wheezy
                        santosh.zanjurne

                        Let me know if you still have any issues in building the compiler.

                         

                        Regards,

                        Santosh

                          • Re: x86_open64-4.2.5.2 doesn't compile on Wheezy
                            torbenkeil

                            Hello,

                             

                            the error message has changed.

                            After applying the patch of the other thread, the compiler says:

                             

                            [...]

                            make[5]: Entering directory `/usr/src/open64-5.0/build/osprey/cygnus/ld'

                            gcc -m32 -DHAVE_CONFIG_H -DIPA_LINK -DKEY -DOSP_OPT -I. -I../../../../osprey/cygnus/ld -I. -D_GNU_SOURCE -I. -I../../../../osprey/cygnus/ld -I../bfd -I../../../../osprey/cygnus/ld/../bfd -I../../../../osprey/cygnus/ld/../include -I../../../../osprey/cygnus/ld/../intl -I../intl  -g  -DLOCALEDIR="\"/opt/open64-5.0/share/locale\""   -W -Wall -Wstrict-prototypes -Wmissing-prototypes -g  -c ../../../../osprey/cygnus/ld/ldgram.c

                            In file included from /usr/include/stdio.h:34:0,

                                             from ../../../../osprey/cygnus/ld/sysdep.h:27,

                                             from ldgram.y:30:

                            /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h:212:23: error: duplicate ‘unsigned’

                            In file included from ../../../../osprey/cygnus/ld/sysdep.h:27:0,

                                             from ldgram.y:30:

                            /usr/include/stdio.h:91:17: error: two or more data types in declaration specifiers

                            In file included from ldgram.y:30:0:

                            ../../../../osprey/cygnus/ld/sysdep.h:37:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes]

                            ../../../../osprey/cygnus/ld/sysdep.h:38:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes]

                            In file included from ldgram.y:30:0:

                            ../../../../osprey/cygnus/ld/sysdep.h:81:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes]

                            ../../../../osprey/cygnus/ld/sysdep.h:85:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes]

                            ../../../../osprey/cygnus/ld/sysdep.h:89:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes]

                            ldgram.y: In function ‘yyparse’:

                            ldgram.y:1077:4: warning: implicit declaration of function ‘strcmp’ [-Wimplicit-function-declaration]

                            ldgram.y:1103:5: warning: implicit declaration of function ‘memset’ [-Wimplicit-function-declaration]

                            ldgram.y:1103:5: warning: incompatible implicit declaration of built-in function ‘memset’ [enabled by default]

                            make[5]: *** [ldgram.o] Fehler 1

                            make[5]: Leaving directory `/usr/src/open64-5.0/build/osprey/cygnus/ld'

                            make[4]: *** [all-recursive] Fehler 1

                            make[4]: Leaving directory `/usr/src/open64-5.0/build/osprey/cygnus/ld'

                            make[3]: *** [all-recursive-am] Fehler 2

                            make[3]: Leaving directory `/usr/src/open64-5.0/build/osprey/cygnus/ld'

                            make[2]: *** [all-ld] Fehler 2

                            make[2]: Leaving directory `/usr/src/open64-5.0/build/osprey/cygnus'

                            make[1]: *** [ld-new] Fehler 2

                            make[1]: Leaving directory `/usr/src/open64-5.0/build'

                            make: *** [build] Fehler 2

                            root@at-lt-05c:/usr/src/open64-5.0/build#

                             

                            Greetings,

                            Torben