7 Replies Latest reply on Apr 13, 2011 8:15 AM by santosh.zanjurne

    debian squeeze compile error

    jetthink

      ../../be/be/dra_file_util.cxx:94: error: ‘char* basename(char*)’ was declared ‘extern’ and later ‘static’
      /usr/include/string.h:599: error: previous declaration of ‘char* basename(char*)’
      ../../be/be/dra_file_util.cxx: In function ‘char* basename(char*)’:
      ../../be/be/dra_file_util.cxx:338: error: declaration of ‘char* basename(char*)’ throws different exceptions
      ../../be/be/dra_file_util.cxx:94: error: from previous declaration ‘char* basename(char*) throw ()’
      make[3]: *** [dra_file_util.o] Error 1
      make[3]: Leaving directory `/root/x86_open64-4.2.3/osprey/targia32_x8664/be'
      make[2]: *** [default] Error 2
      make[2]: Leaving directory `/root/x86_open64-4.2.3/osprey/targia32_x8664/be'
      make[1]: *** [be.so] Error 2
      make[1]: Leaving directory `/root/x86_open64-4.2.3'
      make: *** [build] Error 2

      ../../be/be/dra_file_util.cxx:94: error: ‘char* basename(char*)’ was declared ‘extern’ and later ‘static’ /usr/include/string.h:599: error: previous declaration of ‘char* basename(char*)’ ../../be/be/dra_file_util.cxx: In function ‘char* basename(char*)’: ../../be/be/dra_file_util.cxx:338: error: declaration of ‘char* basename(char*)’ throws different exceptions ../../be/be/dra_file_util.cxx:94: error: from previous declaration ‘char* basename(char*) throw ()’ make[3]: *** [dra_file_util.o] Error 1 make[3]: Leaving directory `/root/x86_open64-4.2.3/osprey/targia32_x8664/be' make[2]: *** [default] Error 2 make[2]: Leaving directory `/root/x86_open64-4.2.3/osprey/targia32_x8664/be' make[1]: *** [be.so] Error 2 make[1]: Leaving directory `/root/x86_open64-4.2.3' make: *** [build] Error 2

        • debian squeeze compile error
          dgilmore

          Sorry about the problems here -- there are some patches
          that you need to apply, see:

          Notes on Building on Ubuntu 9.10" in the INSTALL file.

          Better yet if you could hold off for a while, a new
          version of the release will be coming out in the
          near future with patches applied.

          Doug

            • debian squeeze compile error
              jetthink

              I find a good patch for changing const char *.

              http://sourceforge.net/mailarchive/message.php?msg_id=20100330174632.C20D2B406A%40mail.open64.net

              But

               make SHELL=/bin/bash lib MACHINE_TYPE=i386 BUILD_COMPILER=OSP

              still got error.

              C      /root/x86_open64-4.2.3/osprey/targia32_builtonia32/libdwarf/../../libdwarf/dwarfdump/tag_attr.c
              /usr/bin/ld: skipping incompatible /usr/lib/../lib/libc.so when searching for -lc
              /usr/bin/ld: skipping incompatible /usr/lib/../lib/libc.a when searching for -lc
              /usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/../lib/crt1.o' is incompatible with i386 output
              /usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/../lib/crti.o' is incompatible with i386 output
              /usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/../lib/crtn.o' is incompatible with i386 output
              /usr/bin/ld: final link failed: Invalid operation
              collect2: ld returned 1 exit status
              make[3]: *** [tag_attr_build] Error 1
              make[2]: *** [default] Error 2
              make[1]: *** [default] Error 2
              make[1]: Leaving directory `/root/x86_open64-4.2.3/osprey/targia32_builtonia32'
              make: *** [lib] Error 2

               

              C /root/x86_open64-4.2.3/osprey/targia32_builtonia32/libdwarf/../../libdwarf/dwarfdump/tag_attr.c /usr/bin/ld: skipping incompatible /usr/lib/../lib/libc.so when searching for -lc /usr/bin/ld: skipping incompatible /usr/lib/../lib/libc.a when searching for -lc /usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/../lib/crt1.o' is incompatible with i386 output /usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/../lib/crti.o' is incompatible with i386 output /usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/../lib/crtn.o' is incompatible with i386 output /usr/bin/ld: final link failed: Invalid operation collect2: ld returned 1 exit status make[3]: *** [tag_attr_build] Error 1 make[2]: *** [default] Error 2 make[1]: *** [default] Error 2 make[1]: Leaving directory `/root/x86_open64-4.2.3/osprey/targia32_builtonia32' make: *** [lib] Error 2

                • debian squeeze compile error
                  jetthink

                  http://forums.amd.com/devforum/messageview.cfm?catid=373&threadid=128518&enterthread=y

                  It seem work after change to this:

                  export MACHINE_TYPE=i386 ; make lib  BUILD_COMPILER=OSP

                  But I got same problem with -mp. How to solve it?

                   

                  root@debian:~# myopen64/bin/openCC -m64 -O3 -fopenmp test.c /tmp/cco.6Mgyxa: In function `main': /root/test.c:11: undefined reference to `__ompc_can_fork' /root/test.c:15: undefined reference to `__ompc_can_fork' collect2: ld returned 1 exit status

                    • debian squeeze compile error
                      santosh.zanjurne

                      Thanks for reporting this problem.  I have added this in our bug database.

                      Will keep you posted on the progress here.

                      Regards,

                      Santosh

                        • debian squeeze compile error
                          jetthink

                          GCC4.4 will cause -mp broken. It seems open64 only support GCC4.2 now.

                          But squeeze don't keep this old version. It's only in lenny. I have to try install

                          lenny GCC4.2 to squeeze. Because I also need GCC4.4. But mixed system

                          is ugly and more unstable. On this mixed system, GCC4.2 won't work with

                          -m32. I have to use -m64 compile open64. I modify Brane2's script.

                          The preformace is so good, but  installing open64 is nightmare.

                          I hope amd will soon add it to debian packages. I think it will be great tools

                          for any using amd CPU.

                          #! /bin/bash #export SHELL=/bin/bash export TOOLROOT=/opt/open64 export PATH=${TOOLROOT}/bin:$PATH [ "$1" == "clobber" ] && { echo "CLEANING!\n\n" ; make SHELL=/bin/bash clobber ; rm -f MADE_* ./*_****** ; exit ; }make SHELL=/bin/bash all MACHINE_TYPE=x86_64 && touch MADE_COMPILER || touch COMPILER_******# #[ -f MADE_COMPILER ] && { make lib MACHINE_TYPE=i386 BUILD_COMPILER=OSP && touch MADE_LIB || touch LIB_****** ; } [ -f MADE_COMPILER ] && { export MACHINE_TYPE=x86_64 ; make SHELL=/bin/bash lib BUILD_COMPILER=OSP && touch MADE_LIB || touch LIB_****** ; } [ -f MADE_LIB ] && { make SHELL=/bin/bash -C osprey/targx8664_x8664 BUILD_COMPILER=OSP && touch MADE_NEWCOMPILER || touch NEWCOMPILER_****** ; }

                    • debian squeeze compile error
                      jetthink

                      I hope open64 will be add to debian packages.

                      It will be easy install and update for debian/ubuntu.