Sun Studio cc fails to correctly compile a threaded Perl on FC5

I have been working Sun C compilers for Linux for some time, but recent versions have not been able to build a threaded Perl correctly. The earliest working example I can find of a successful build and test is documented here <http://groups.google.com/group/perl.daily-build.reports/browse_thread/thread/d7184da0c12fc1d8/9cdc1e236831d8fd?lnk=st&q=linux+pass+debian+%22peters+homeunix+org%22&rnum=6&hl=en#9cdc1e236831d8fd>
The problems seem to a compiler bug isolated to the Sun Studio cc for Linux. Perl continues to compile and work successfully on Linux with gcc and Intel. It also compiles and runs fine with Sun Studio cc on Solaris.
The problem is that while suncc seems to compile the files correctly, when miniperl is run (miniperl is a perl built in an intermediate step), it dies with a segmentation fault. Below is a gdb backtrace from the coredump (sorry it isn't exceptionally informative...)
(gdb) bt
#0 0x0811d960 in pthread_atfork ()
#1 0x0810d4c6 in main ()
I've been going through the various compiler options attempting to find a workaround, but haven't found a solution. Hopefully, posting this information will help you all with finding the problem. If you wish to try for yourself, you can download a recent Perl archive of Perl's code from <http://public.activestate.com/pub/apc/perl-current-snap/perl-current-latest.tar.gz> .
I configured Perl with the follow command:
./Configure -des -Dusedevel -Dcc=suncc -Duseithreads

I apologize that nobody got back to you on this. Have you tried the
recent Express 3 release of Sun Studio Mars?
http://developers.sun.com/sunstudio/downloads/express.jsp

Similar Messages

  • Compilation error while building boost 1_44_0 on Solaris (Sun Studio 10)

    Hi All, I am trying to build boost version 1_44_0 on Solaris.The Solaris box has Sun Studio 10 installed.
    The compiler details are
    bash-2.05$ CC -V
    CC: Sun C++ 5.7 2005/01/07
    I am using the following command to build boost libraries
    *bash-2.05$ bjam --build-dir=/export/home/dfdev/Boost_1_44_0/boost_1_44_0/tmp/build-boost toolset=sun stage*
    But i get the below compilation errors, not even one of the projects build
    sun.compile.c++ /export/home/dfdev/Boost_1_44_0/boost_1_44_0/tmp/build-boost/boo
    st/bin.v2/libs/iostreams/build/sun/release/stdlib-sun-stlport/threading-multi/fi
    le_descriptor.o
    Notice: The Early Access serial number will expire in -7 days.
    In order to purchase the product, visit http://www.sun.com/forte/buy.html
    or contact your Forte Tools reseller.
    "libs/iostreams/src/file_descriptor.cpp", line 352: Error: Could not find boost:
    :shared_ptr<boost::iostreams::detail::file_descriptor_impl>::shared_ptr(boost::i
    ostreams::detail::file_descriptor_impl*) to initialize pimpl_.
    "libs/iostreams/src/file_descriptor.cpp", line 355: Error: Could not find boost:
    :shared_ptr<boost::iostreams::detail::file_descriptor_impl>::shared_ptr(boost::i
    ostreams::detail::file_descriptor_impl*) to initialize pimpl_.
    "libs/iostreams/src/file_descriptor.cpp", line 360: Error: Could not find boost:
    :shared_ptr<boost::iostreams::detail::file_descriptor_impl>::shared_ptr(boost::i
    ostreams::detail::file_descriptor_impl*) to initialize pimpl_.
    "libs/iostreams/src/file_descriptor.cpp", line 380: Error: Could not find boost:
    :shared_ptr<boost::iostreams::detail::file_descriptor_impl>::shared_ptr(boost::i
    ostreams::detail::file_descriptor_impl*) to initialize pimpl_.
    "libs/iostreams/src/file_descriptor.cpp", line 385: Error: Could not find boost:
    :shared_ptr<boost::iostreams::detail::file_descriptor_impl>::shared_ptr(boost::i
    ostreams::detail::file_descriptor_impl*) to initialize pimpl_.
    "libs/iostreams/src/file_descriptor.cpp", line 393: Error: Using static_cast to
    convert from boost::iostreams::file_descriptor_flags to boost::iostreams::detail
    ::file_descriptor_impl::flags not allowed.
    6 Error(s) detected.
    "CC" -library=stlport4 -xO4 -mt -erroff=%none -KPIC -DBOOST_ALL_NO_LIB=1 -DB
    OOST_IOSTREAMS_DYN_LINK=1 -DBOOST_IOSTREAMS_USE_DEPRECATED -DNDEBUG -I"." -c -o
    "/export/home/dfdev/Boost_1_44_0/boost_1_44_0/tmp/build-boost/boost/bin.v2/libs/
    iostreams/build/sun/release/stdlib-sun-stlport/threading-multi/file_descriptor.o
    " "libs/iostreams/src/file_descriptor.cpp"
    ...failed sun.compile.c++ /export/home/dfdev/Boost_1_44_0/boost_1_44_0/tmp/build
    -boost/boost/bin.v2/libs/iostreams/build/sun/release/stdlib-sun-stlport/threadin
    g-multi/file_descriptor.o...
    sun.compile.c++ /export/home/dfdev/Boost_1_44_0/boost_1_44_0/tmp/build-boost/boo
    st/bin.v2/libs/iostreams/build/sun/release/stdlib-sun-stlport/threading-multi/ma
    pped_file.o
    Notice: The Early Access serial number will expire in -7 days.
    In order to purchase the product, visit http://www.sun.com/forte/buy.html
    or contact your Forte Tools reseller.
    "./boost/type_traits/is_array.hpp", line 41: Error: Multiple declaration for boo
    st::is_array.
    "./boost/type_traits/is_array.hpp", line 42: Error: Multiple declaration for boo
    st::is_array.
    "./boost/type_traits/is_array.hpp", line 43: Error: Multiple declaration for boo
    st::is_array.
    "./boost/type_traits/is_array.hpp", line 44: Error: Multiple declaration for boo
    st::is_array.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 95: Error: The type
    of specialized argument boost::mpl::aux::F<boost::mpl::aux::P1> is dependent on
    another argument.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 95: Error: Partial s
    pecialization parameter Tag is not used in the arguments.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 112: Error: Partial
    specialization parameter F is not used in the arguments.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 172: Error: The type
    of specialized argument boost::mpl::aux::F<boost::mpl::aux::P1, boost::mpl::aux
    ::P2> is dependent on another argument.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 172: Error: Partial
    specialization parameter Tag is not used in the arguments.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 189: Error: Partial
    specialization parameter F is not used in the arguments.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 254: Error: The type
    of specialized argument boost::mpl::aux::F<boost::mpl::aux::P1, boost::mpl::aux
    ::P2, boost::mpl::aux::P3> is dependent on another argument.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 254: Error: Partial
    specialization parameter Tag is not used in the arguments.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 271: Error: Partial
    specialization parameter F is not used in the arguments.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 339: Error: The type
    of specialized argument boost::mpl::aux::F<boost::mpl::aux::P1, boost::mpl::aux
    ::P2, boost::mpl::aux::P3, boost::mpl::aux::P4> is dependent on another argument
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 339: Error: Partial
    specialization parameter Tag is not used in the arguments.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 357: Error: Partial
    specialization parameter F is not used in the arguments.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 427: Error: The type
    of specialized argument boost::mpl::aux::F<boost::mpl::aux::P1, boost::mpl::aux
    ::P2, boost::mpl::aux::P3, boost::mpl::aux::P4, boost::mpl::aux::P5> is dependen
    t on another argument.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 427: Error: Partial
    specialization parameter Tag is not used in the arguments.
    "./boost/mpl/aux_/preprocessed/plain/full_lambda.hpp", line 445: Error: Partial
    specialization parameter F is not used in the arguments.
    "libs/iostreams/src/mapped_file.cpp", line 441: Error: Could not find boost::sha
    red_ptr<boost::iostreams::detail::mapped_file_impl>::shared_ptr(boost::iostreams
    ::detail::mapped_file_impl*) to initialize pimpl_.
    20 Error(s) detected.
    Am i missing something? I will appreciate your input's.
    Regards,
    solarisneo

    C++ 5.7 will not give good results building Boost.
    Support for boost began with C++ 5.9 (Sun Studio 12), but you will get better results using the current release, Sun Studio 12 update 1, and better still with the upcoming release, Oracle Solaris Studio 12.2.

  • General and specific questions on the applicability of Sun Studio 11

    Hi. In an e-mail letter from Sun Microsystems I read about Sun Studio 11 to "utilize its record-setting parallelizing compilers." From this message I was attracted by the possibility of adding something like parallel processing, not by changing the processor (hardware), but by adding Sun-Studio-11 software to a Linux operating system. Now I already have a Fortran compiler, the Intel Fortran Compiler for Linux, which is free and can handle Cray-style pointers, a feature hard to find in a free Fortran compiler.
    1a. So for the most basic of questions, without having parallel-processing hardware, just an ordinary processor [a 1-GigaHertz (GHz) Advanced MicroDevices Duron central processing unit, in my case], is it possible to have parallel processing and thereby increase one's computing speed by installing Sun Studio 11 in a Linux operating system?
    1b. If so, by what factor could one expect the speed of computation to increase over not having Sun Studio 11 installed? (If the gain in speed is dependent on the type of computations being performed, I imagine possibly using a Fortran code to perform numerical calculations using and perhaps searching for minima or maxima in a two-or-more-dimensional surface. So please give me an idea of the sort of gain in speed one could expect for these two types of activites, calculations using formulas and searches for minima and maxima among already-computed quantities.)
    1c. Again if so, how could one just by adding software have parallel processing without two or more hardware processors? In other words, what is the basic working principle of the software to make the simultaneous performance of multiple tasks (multitasking or parallel processing) possible?
    2a. Does Sun Studio 11 include a Fortan compiler?
    2b. If so, must one use it to have parallel processing with Sun Studio 11?
    2c. Or will the Intel Fortran Compiler for Linux work with Sun Studio 11 to have a parallel processing capability?
    Concerning hardware requirements I read that Sun Studio 11 requires a minimum of 512 MegaBytes (MB) of memory, presumably Random Access Memory (RAM). My Hewlett-Packard, ZE1110, Pavilion, notebook computer has 256 MB of RAM, but is expandable to a maximum of 512 MB of RAM. So in this respect it is in principle at least technically possible for me to meet the minimum system requirement for Sun Studio 11 with my computer, if I choose to increase its RAM. Somehow accommodating the cost of such a RAM addition, including whether one may have to buy two, matching, 256-MB RAM modules or just presumably one additional 256-RAM module, is another requirement. But before spending money for such an upgrade, one should first thoroughly investigate other matters to determine if other things are going to work and to determine what gain, if any, one could expect in computing speed with Sun Studio 11 and an additional 256 MB of RAM; then decide, based on such data, whether the purchase is personally worth the money or not. That's one motivation behind this posting; another motivation is for me to learn some things.
    Lastly I would like to here thank whoever was thoughtful enough to provide the Sun Download Manager (SDM) 2.0, which allows the pausing and resumption of the 207-MB download studio11-lin-x86.tar.bz2 for the Linux version of the Sun Studio 11! Using a slow, dialup, Internet connection like mine having a maximum speed of 28.8 kilobits/second, this makes it possible to download that file over a number of Internet sessions instead of having to have an uninterrupted, 19-or-more-hour Internet session. Besides the invconvenience of tying up one's telephone line for that long a time, it might be even be difficult to have such an uninterrupted Internet session for that long a time. I have at least started such a download using the SDM 2.0 potentially over multiple Internet sessions. Whether or not I carry it out to completion could depend on whether everything looks good with Sun Studio 11 for my particular situation. Thanks in advance for your help.

    Thanks for both of your postings here. I'm mostly trying to learn something here.
    From Maxim Kartashev: "For example, if one thread (or process, or lwp) frequently performs an I/O operation, then the other thread (process, lwp) can utilize processor resources to perform, say, some computations while first one waits for operation to complete."
    I think I might understand what you meant above. I guess lwp in the above context stands for light-weight process. And I think you may be talking about a potential gain in speed with just one, ordinary processor. I guess you meant that one program, or perhaps group of programs, could perform input/output processes at the same time it is performing calculations because different parts of the processor are being used in these two groups of processes. Then on "while first one waits for operation to complete" I guess you meant that if the input/output operations finish before the computations finish, then thread 1 that was performing the input/output operations will have to wait until the current computations ordered by thread 2 are complete before thread 1 can utilize the computational resources for its own computations; i.e., two threads can't use the same computational resources of an ordinary processor at the same time. How is my thinking so far, Maxim, right, partly right, or all wrong?
    Now if the above thinking of mine is right, then it appears that one could have some gain in speed doing things like you suggest with just one, ordinary processor. And if so, I imagine that the gain could be a maximum of a factor of two for a program that requires spending as much time in input and output as it does in computation; i.e., keeping both the computational and input/output resources working all of the time without the input/output resources waiting on the computational resources or vice versa. How is my thinking here?
    If the above thinking is correct, just for purposes of discussion with just one, ordinary processor, not a dual processor, and a program which does nothing but computations there would be no gain in speed using Sun Studio 11 and a Fortran compiler over not using Sun Studio 11. In other words, to increase the speed of computation one would have to buy a faster computer, buy parallel processing hardware for an existing computer and use parallel-processing software, or somehow figure out how to harness two or more computers to work for you at the same time with instructions from one piece or perhaps set of pieces of code set up for parallel processing using two or more different computers. The latter case would be a computer analogue or "two 'heads' are better than one," not human heads, but computers. How is my thinking here?
    Here I am still assuming that it is possible for one processor to be used to do two different kinds things at once. However, I don't see how one Fortran program could instruct two things to be done at once. This is because I have not seriously studied parallel processing, I suppose. That is I am used to a sequential set of instructions that proceed from top to botton down the lines of code; i.e., one instruction or line of code can't be executed until the line of code before it has been completely executed. That is the computing "world" with which I am familiar. So how about someone here teaching me with an example of parallel-processing Fortran code how parallel processing works, explaining what instruction or group of instructions tells the computer to execute input and computational instructions at the same time?
    Based on the encouraging information from one or more other people I have been able to use the Intel Fortran for Linux 8.1.024, if I remember correctly, in a computer with a 1-GigaHertz (GHz), Advanced MicroDevices (A.M.D.), Duron Processor. So this is at least one case where it is not essential to have an Intel processor to use the Intel Fortran Compiler for Linux 8.1.024.
    Is the Sun Fortran compiler free for personal use? And can it handle Cray-style pointers?

  • Sun Studio cc includes unused static inline functions in object file

    While trying to compile some code originally compiled with GCC I run into a linking problem. My problem seems to be caused by that GCC does not include unused static inline functions in the object files while cc does. The following simple example can be used for illustrating this:
    void foo();
    static inline void bar()
      foo();
    int main()
    }This program compiles and links without any problems using GCC and Sun Studio 12 CC (the C++ compiler) but fails to link using Sun Studio 12 cc:
    khepri%> cc staticinline.c
    Undefined first referenced
    symbol in file
    foo staticinline.o
    ld: fatal: Symbol referencing errors. No output written to a.out
    It is probably fine of cc to include foo() in the object file (although not necessary?). My questions are:
    1. Are there any reasons for why cc includes unused static inline functions in the object file while CC does not?
    2. Are there any ways or options to tell cc to not include unused static inline functions in the object file?
    In the example above this is easy to fix by just removing or #ifdef away the code but the original code where I have this problem is not maintained by me and the static inline functions are in header files that get included in multiple C files and in some of these the functions are used.
    Thanks,
    Olav

    olavsa wrote:
    1. Are there any reasons for why cc includes unused static inline functions in the object file while CC does not?
    2. Are there any ways or options to tell cc to not include unused static inline functions in the object file?Removing dead code is an optimization, so you need at least -xO1 for that.

  • Binary compatibility problems using Sun Studio 12

    I'm working in a project that uses Orbix [1] third-party libraries. I have installed the Sun Studio 12 on Solaris 10 SPARC but I have got some strange segfault problems (the exactly same code works fine in a Linux box - using g++). I read the 1.4 section of Sun Studio 12 C++ Userguide [2] but I have a doubt:
    Is there no way to compile my code using Sun Studio 12 using shared libraries compiled against earlier Sun Studio C++ compiler versions (like Sun Studio 8 or some version before Sun Studio 11)?
    I think my problem is related to the fact that Orbix team used Sun Studio 8 as some notes found in their headers indicate:
    "IONA Technologies ART IDL Compiler POA C++ Generator asp 6.3.3 SunOS 5.8 CC_5.5 2008/06/13 21:04:37 EDT"
    A secondary question: Is CC 5.5 present in Sun Studio 8, right?
    Can anyone help me? Every tips are welcome :) Thanks in advance!
    [1] http://web.progress.com/en/orbix/orbix_standard.html
    [2] http://docs.sun.com/app/docs/doc/820-7599/6nirkt6f7?a=view

    AmadeuBarbosa wrote:
    I'm working in a project that uses Orbix [1] third-party libraries. I have installed the Sun Studio 12 on Solaris 10 SPARC but I have got some strange segfault problems (the exactly same code works fine in a Linux box - using g++). I read the 1.4 section of Sun Studio 12 C++ Userguide [2] but I have a doubt:I don't think 1.4 Binary Compatibility Verification applies in your case. It's referring to processor capability to execute certain (new) instructions; if your third-party libraries were compiled a while ago, it's highly unlikely they use instructions not implemented by the processor you have.
    Is there no way to compile my code using Sun Studio 12 using shared libraries compiled against earlier Sun Studio C++ compiler versions (like Sun Studio 8 or some version before Sun Studio 11)?Generally speaking, any library compiled with older Sun Studio C++ compiler is supposed to be compatible with any library or executable compiled with newer version provided that all parties did everything right. For example, that third-party libraries should not be statically linked with C++ run-time support libraries; your executable should be linked with latest compiler driver (CC) so that it records correct dependencies on support libraries.
    Of course, there could be (and actually are) compiler bugs standing in the way of compatibility. Some of them can be fixed, some - like demangler issue described in http://docs.sun.com/source/820-4155/c++.html - can't. There is no easy way to tell if you hit a compiler bug or bulding/linking issue, or bug in the code that was previously unseen.
    I think my problem is related to the fact that Orbix team used Sun Studio 8 as some notes found in their headers indicate:
    "IONA Technologies ART IDL Compiler POA C++ Generator asp 6.3.3 SunOS 5.8 CC_5.5 2008/06/13 21:04:37 EDT"Yes, looks like it was compiled by 5.5, which is part of Sun Studio 8
    >
    A secondary question: Is CC 5.5 present in Sun Studio 8, right?That's correct.

  • Installed Sun studio 12.2. ran 'discover' command on C++ code.Gives warning

    Hi,
    I installed Sun studio 12.2. I compiled C++ code with C++ 5.11 compiler, and ran discover command as shown below:
    > #CC -g -O2 test.cpp
    > #discover -w - a.out
    > discover (warning): a.out will be analyzed in lite mode because it has no annotations. See discover documentation for compiler flag/OS recommendations
    I get the discover warning. After runnig discover command, I executed ./a.out. On cosole, only memory leaks will be displayed and no other error.
    Any reason why discover gives warning??????????????????
    Edited by: Archit on Apr 5, 2011 11:09 PM
    Edited by: Archit on Apr 5, 2011 11:10 PM
    Edited by: Archit on Apr 5, 2011 11:10 PM
    Edited by: Archit on Apr 5, 2011 11:13 PM

    Hi,
    What a woderful fix you have provided !!!!!!!!!!
    It really works.
    I tried running on Solaris 10 update 8. discover tool runs properly. Where as , the tool runs in lite mode on Solaris update 4.
    If possible , can you pint me to some links where I can this kind of info.?
    Thank you very much.

  • Cannot install new Sun Studio July release

    Hello Everybody,
    when I try to execute the Sunstudio--.sh the following error occurs:
    Please wait while Sun Studio is unpacked into this directory.
    tail: �+651� kann nicht zum Lesen ge�ffnet werden: No such file or directory
    bzcat: /tmp/ssregister.1631/sunstudio.tar.bz2 is not a bzip2 file.
    tar: Das sieht nicht wie ein �tar�-Archiv aus.
    tar: Fehler beim Beenden, verursacht durch vorhergehende Fehler.
    StudioExpress-linux-x86-2008-07-24-ii.sh: line 591: exit: Sun Studio instllation failed.: numeric argument required
    I tried to unpack the copied tarfile myself but got same error. Thus, it seems as if the tarfile is damaged. Does anyone get the same error? Or does anyone have a solution yet?

    Well, I downloaded the *.sh quite often by now, even using the SunDownloader. Nevertheless I get (after following the hint from your link) this:
    Please wait while Sun Studio is unpacked into this directory.
    bzcat: Compressed file ends unexpectedly;
         perhaps it is corrupted? Possible reason follows.
    bzcat: Success
         Input file = /tmp/ssregister.8729/sunstudio.tar.bz2, output file = (stdout)
    It is possible that the compressed file(s) have become corrupted.
    You can use the -tvv option to test integrity of such files.
    You can use the `bzip2recover' program to attempt to recover
    data from undamaged sections of corrupted files.
    The -tvv flag did not work, but the bzip2recover revealed this:
    bzip2recover 1.0.4: extracts blocks from damaged .bz2 files.
    bzip2recover: searching for block boundaries ...
    block 1 runs from 80 to 448 (incomplete)
    bzip2recover: sorry, I couldn't find any block boundaries.
    Is the file really corrupt? Am I the only one experiencing this kind of problem?
    Does anyone have a clue?
    Edited by: corranchetano on Aug 1, 2008 1:33 PM

  • What Sun Studio 12 patches are included in Sun Studio 12 Update 1?

    I can't seem to find a bug list or patch list for Sun Studio 12 Update 1. Can someone provide a link or list of what was fixed?
    Secondary, how do I know I have Sun Studio 12 Update 1 installed? Does CC -V say 5.9.1?
    -kto

    I'm not sure about your bug list or patch list question, but on your second question you can use the "version" command.
    Just point it at the Sun Studio component you want to check. So for the CC compiler :
    % version sunstudio12.1/bin/CC
    version of "sunstudio12.1/bin/CC": Sun C++ 5.10 SunOS_sparc 2009/05/02
    You can also just type "version" and that will list all the
    components of the Sun Studio that are in your PATH, like so :
    % version
    Machine hardware: i86pc
    OS version: 5.10
    Processor type: i386
    Hardware: i86pc
    The following components are installed on your system:
    Sun Studio 12 update 1
    Sun Studio 12 update 1 C Compiler
    Sun Studio 12 update 1 C++ Compiler
    Sun Studio 12 update 1 Tools.h++ 7.1
    Sun Studio 12 update 1 C++ Standard 64-bit Class Library
    Sun Studio 12 update 1 Garbage Collector
    Sun Studio 12 update 1 Fortran 95
    Sun Studio 12 update 1 Debugging Tools (including dbx)
    Sun Studio 12 update 1 IDE
    Sun Studio 12 update 1 Performance Analyzer (including collect, ...)
    Sun Studio 12 update 1 Performance Library
    Sun Studio 12 update 1 Scalapack
    Sun Studio 12 update 1 LockLint
    Sun Studio 12 update 1 Building Software (including dmake)
    Sun Studio 12 update 1 Documentation Set

  • Strange C++ error when using newer Sun Studio compiler

    My company has just set up a new build machine for our product. We have gone from
    this version: CC: Sun C++ 5.7 Patch 117830-11 2007/04/04
    to this one: CC: Sun C++ 5.9 SunOS_sparc Patch 124863-01 2007/07/25
    we have also upgraded the OS (solaris/sparc). I think the new one has gcc but the old one doesn't (we don't use it).
    and now I am getting this error:
    "/opt/SUNWspro/prod/include/CC/./new", line 32: Error, badextlnk: operator new(unsigned) was declared before with a different language.
    "/opt/SUNWspro/prod/include/CC/./new", line 35: Error, badextlnk: operator delete(void*) was declared before with a different language.
    "/opt/SUNWspro/prod/include/CC/./new", line 37: Error, badextlnk: operator new[](unsigned) was declared before with a different language.
    "/opt/SUNWspro/prod/include/CC/./new", line 40: Error, badextlnk: operator delete[](void*) was declared before with a different language.
    "/opt/SUNWspro/prod/include/CC/./new", line 53: Error, badollnk: Only one of a set of overloaded functions can be extern "C".
    "/opt/SUNWspro/prod/include/CC/./new", line 54: Error, badollnk: Only one of a set of overloaded functions can be extern "C".
    "/opt/SUNWspro/prod/include/CC/./new", line 55: Error, badollnk: Only one of a set of overloaded functions can be extern "C".
    "/opt/SUNWspro/prod/include/CC/./new", line 56: Error, badollnk: Only one of a set of overloaded functions can be extern "C".
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 106: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 169: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 185: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 198: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 202: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 206: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 217: Error, badollnk: Only one of a set of overloaded functions can be extern "C".
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 225: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 239: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 249: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 264: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    "/opt/SUNWspro/prod/include/CC/Cstd/rw/iterator", line 275: Error, temnotexternc: Template declarations cannot have extern "C" linkage.
    I have no idea what could be causing this. I can find one link to it on this forum: http://forums.sun.com/thread.jspa?messageID=9488983 . But the only answer to that query says it is the same as another bug which appears entirely different, not to mention being very old (while talking about an imminent fix), and being related to a different OS and (I think) a different version of sun studio (express vs. normal?).
    Any ideas? Could it be related to having gcc/g++ on the machine?

    Hi,
    I am also facing the same error while upgrading the Sun compiler description as below
    when I am compiling the cxx file on the system with compiler version (CC: Sun C++ 5.9 SunOS_sparc 2007/05/03) , I am facing the following error:-
    /opt/SUNWspro/bin/CC -dy -misalign -xcode=abs64 -xarch=v9 -D__EXTENSIONS__ -Dsun4_R5=1 -I. -Isun4_R5_v -I/home/as185259/ash_iadraid/ash_get_10/IA/PORT/include -I/home/as185259/ash_iadraid/ash_get_10/IA/WV/WV5.3.6-ncr0302/build/include/sun4_R5_v -I/app/oracle/product/10.2.0/client_1/sqllib/public -I/app/oracle/product/10.2.0/client_1/precomp/public -I/opt/informix/include -DSVR4 -O -g p -pta -c MContext.cxx -o sun4_R5_v/MContext.o || \
    (rm -f sun4_R5_v.d; false)CC: Warning: -xarch=v9 is deprecated, use -m64 to create 64-bit programs
    "/home/as185259/ash_iadraid/ash_get_10/IA/WV/WV5.3.6-ncr0302/build/include/sun4_R5_v/ssmalloc.h", line 97: Error: Only one of a set of overloaded functions can be extern "C".
    "/home/as185259/ash_iadraid/ash_get_10/IA/WV/WV5.3.6-ncr0302/build/include/sun4_R5_v/ssmalloc.h", line 99: Error: Only one of a set of overloaded functions can be extern "C".
    "/home/as185259/ash_iadraid/ash_get_10/IA/WV/WV5.3.6-ncr0302/build/include/sun4_R5_v/ssmalloc.h", line 101: Error: Only one of a set of overloaded functions can be extern "C".
    "/home/as185259/ash_iadraid/ash_get_10/IA/WV/WV5.3.6-ncr0302/build/include/sun4_R5_v/ssmalloc.h", line 102: Error: Only one of a set of overloaded functions can be extern "C".
    4 Error(s) detected.
    The same file with the same compilation command is getting compiled with compiler version CC: Sun WorkShop 6 update 2 C+ 5.3 2001/05/15 .
    Can anyone suggest what should be the resolution:-
    The code for the ssmalloc.h file is as under:-
    #ifndef SSMALLOC_H
    #define SSMALLOCH
    #include <stddef.h>
    #if defined(__sparcv9)
    namespace ssmalloc {
    #endif
    #if defined(__cplusplus)
    extern "C" {
    #endif
    The type for the malloc routine depends on
    the compiler and library that you are using.
    #if defined(hpux) || defined(sun4_R5) || defined(__GNUC_) || defined(_OS2_)
    typedef void MALLOC_PTR;
    #else
    typedef char *MALLOC_PTR;
    #endif
    #if defined(_GNUG_)
    typedef size_t MALLOC_SIZE;
    #else
    typedef unsigned MALLOC_SIZE;
    #endif
    #if defined(sun4) && ! defined(_GNUG_)
    # define FREE_RETURNS int
    # define FREE_RETURN return 0
    #else
    # define FREE_RETURNS void
    # define FREE_RETURN return
    #endif
    // User-callable routines.
    // Note: memalign and valloc are broken in that they do not aling
    // memory on documented boundaries, and thus do not behave as described
    // on the "malloc" manual page. They simply call malloc.
    MALLOC_PTR malloc (MALLOC_SIZE size);
    FREE_RETURNS free (MALLOC_PTR data);
    MALLOC_PTR realloc (MALLOC_PTR data, MALLOC_SIZE size);
    MALLOC_PTR calloc (size_t nelem, size_t elsz);
    MALLOC_PTR valloc (unsigned size);
    MALLOC_PTR memalign (unsigned alignment, unsigned size);
    // This memory allocator supports memory allocation inside signal
    // handlers. For correct operation, the following functions must be
    // called upon entering and exiting signal handlers that allocate
    // memory.
    void ssmalloc_enter_signal_level();
    void ssmalloc_exit_signal_level();
    // Set this variable to not 0 (possibly in the debugger) if you want
    // to get malloc to check memory data structures very carefully as it
    // goes. This may be handy if you are trying to detect a memory
    // trasher.
    // It also causes ssmalloc to abort the program instead of returning
    // zero if memory runs out.
    extern int check_memory_very_carefully;
    #if defined(__cplusplus)
    #endif
    #if defined(__sparcv9)
    } // namespace ssmalloc {
    #endif
    #endif / SSMALLOCH */
    The Machine is
    root@ldg1-> uname -a
    SunOS ldg1 5.10 Generic_138888-03 sun4v sparc SUNW,Sun-Blade-T6320
    Thanks
    Vijay

  • Problem in compilation using Sun Studio 11

    Hello,
    We are migrating from a Solaris 8 to a Solaris 10 OS. At the same ttime we are also migrating from Ingres 2.6 to Ingres 2006. As a part of the creation of teh development environment, we are recompiling all the codes on teh new OS. WE have installed teh Sun Studio 11 compiler for this purpose. When compiling some C codes, we are getting the following error:
    "am_xxxxxxxx.c", line 2596: warning: statement not reached
    "am_xxxxxxxx.c", line 2778: undefined symbol: i8
    "am_xxxxxxxx.c", line 2778: syntax error before or at: )
    "am_xxxxxxxx.c", line 2858: undefined symbol: i8
    "am_xxxxxxxx.c", line 2858: syntax error before or at: )
    "am_xxxxxxxx.c", line 2889: warning: implicit function declaration: IIresnext
    "am_xxxxxxxx.c", line 2891: warning: statement not reached
    "am_xxxxxxxx.c", line 2920: warning: statement not reached
    "am_xxxxxxxx.c", line 2931: undefined label: IIfdF1
    "am_xxxxxxxx.c", line 2931: undefined label: IIosl9139
    "am_xxxxxxxx.c", line 2931: undefined label: IIfdE1
    "am_xxxxxxxx.c", line 2931: cannot recover from previous errors
    cc: acomp failed for am_xxxxxxxx.c
    The command used for compiling is :
    cc -xarch=generic64 am_xxxxxxxx.c
    We have exported teh following:
    LD_LIBRARY_PATH_64=/usr/sfw/lib/sparcv9:/usr/local/lib/sparcv9:/usr/lib/sparcv9:/usr/openwin/lib/sparcv9:/usr/dt/lib/sparcv9:/opt/SUNWspro/lib/v9:/opt/SUNWspro/lib/v9:/eu/ingad/ingres/lib:/opt/oracle/lib:/usr/lib:/usr/ucblib:/usr/openwin/lib:/opt/SUNWspro/lib/:/opt/lib/cobol/coblib
    LD_LIBRARY_PATH=/opt/SUNWspro/lib/v9:/eu/ingad/ingres/lib:/eu/ingad/ingres/lib:/opt/oracle/lib:/usr/lib:/usr/ucblib:/usr/openwin/lib:/opt/SUNWspro/lib/:/opt/lib/cobol/coblib
    CXXFLAGS=-fast -xarch=v9b
    CFLAGS=-fast -xarch=v9b
    LDFLAGS=-L/usr/sfw/lib/sparcv9 -L/usr/lib/sparcv9 -R/usr/sfw/lib/sparcv9 -R/usr/lib/sparcv9
    We are struggling with this issue for the last one week. Can someone please help me with this issue?
    Could this be because the 64 bit library files are not installed? Please help.
    Aneesha

    The LD_LIBRARY_PATH environment variables determine where the runtime loader looks for shared libraries when you run an application. It is unlikely to be the source of compile-time errors.
    I suspect that doing two major changes at the same time has resulted in undefined names and other problems, probably due to missing or incorrect header inclusion. If possible, make one change at a time, either compile the old code on the new OS, or the new code on the old OS, and get that to work first.
    Check the Ingress documentation to see if you need to make source code changes when upgrading, and follow any recommendations there. You might also need to take up this problem with Ingress tech support.
    Regarding LD_LIBRARY_PATH, the best advice is usually "don't set it at all". For more on this topic, see this article:
    http://blogs.sun.com/rie/entry/tt_ld_library_path_tt
    Just to eliminate this as a possible build problem, try removing LD_LIBRARY_PATH and LD_LIBRARY_PATH_64 from your environment when building the program. Then modify the build process to set the executable runpath (-R option) to include the Ingress or Oracle libraries that need to be searched. You don't normally want to point into /usr/lib or into the compiler installation area.

  • C compiler cannot create executables error, Sun Studio 12, snv_69

    I am having difficulty compiling a program for R version 2.6.0 from the bioconductor site called RSQLite. I have successfully build R with Sun Studio 12, but now this particular package complains that my C compiler cannot create executables and I have idea how to go about trying to fix this. I don't know if you need to see the 'configure' file to help with this.
    The output from the config.log file is:
      $ ./configure
    ## Platform. ##
    hostname = me
    uname -m = i86pc
    uname -r = 5.11
    uname -s = SunOS
    uname -v = snv_69
    /usr/bin/uname -p = i386
    /bin/uname -X     = System = SunOS
    Node = solenv
    Release = 5.11
    KernelID = snv_69
    Machine = i86pc
    BusType = <unknown>
    Serial = <unknown>
    Users = <unknown>
    OEM# = 0
    Origin# = 1
    NumCPU = 1
    /bin/arch              = i86pc
    /usr/bin/arch -k       = i86pc
    /usr/convex/getsysinfo = unknown
    hostinfo               = unknown
    /bin/machine           = unknown
    /usr/bin/oslevel       = unknown
    /bin/universe          = unknown
    PATH: /opt/local/bin
    PATH: /opt/sfw/bin
    PATH: /usr/sfw/bin
    PATH: /opt/local/teTeX/bin
    PATH: /opt/coolstack/bin
    PATH: /usr/sbin
    PATH: /opt/local/bin/amd64
    PATH: /usr/bin
    PATH: /usr/gnu/bin
    PATH: /usr/openwin/bin
    PATH: /opt/SUNWspro/bin
    PATH: /opt/local/php5/bin
    PATH: /usr/local/bin
    PATH: /usr/ccs/bin
    PATH: /usr/local/ActiveTcl/bin
    PATH: /opt/staroffice8/program
    PATH: /opt/csw/bin
    ## Core tests. ##
    configure:1313: checking for gcc
    configure:1339: result: dmake: defaulting to parallel mode.
    See the man page dmake(1) for more information on setting up the .dmakerc file.
    /opt/studio12/SUNWspro/bin/cc -m64
    configure:1583: checking for C compiler version
    configure:1586: dmake: defaulting to parallel mode.
    See the man page dmake(1) for more information on setting up the .dmakerc file.
    /opt/studio12/SUNWspro/bin/cc -m64 --version </dev/null >&5
    ./configure: line 1587: dmake:: command not found
    configure:1589: $? = 127
    configure:1591: dmake: defaulting to parallel mode.
    See the man page dmake(1) for more information on setting up the .dmakerc file.
    /opt/studio12/SUNWspro/bin/cc -m64 -v </dev/null >&5
    ./configure: line 1592: dmake:: command not found
    configure:1594: $? = 127
    configure:1596: dmake: defaulting to parallel mode.
    See the man page dmake(1) for more information on setting up the .dmakerc file.
    /opt/studio12/SUNWspro/bin/cc -m64 -V </dev/null >&5
    ./configure: line 1597: dmake:: command not found
    configure:1599: $? = 127
    configure:1622: checking for C compiler default output file name
    configure:1625: dmake: defaulting to parallel mode.
    See the man page dmake(1) for more information on setting up the .dmakerc file.
    /opt/studio12/SUNWspro/bin/cc -m64 dmake: defaulting to parallel mode.
    See the man page dmake(1) for more information on setting up the .dmakerc file.
    -xO5 -xc99 -xlibmieee -xlibmil -nofstore   conftest.c  >&5
    ./configure: line 1626: dmake:: command not found
    configure:1628: $? = 127
    configure: failed program was:
    | /* confdefs.h.  */
    |
    | #define PACKAGE_NAME ""
    | #define PACKAGE_TARNAME ""
    | #define PACKAGE_VERSION ""
    | #define PACKAGE_STRING ""
    | #define PACKAGE_BUGREPORT ""
    | /* end confdefs.h.  */
    |
    | int
    | main ()
    | {
    |
    |   ;
    |   return 0;
    | }
    configure:1667: error: C compiler cannot create executables
    See `config.log' for more details.
    ## Cache variables. ##
    ac_cv_env_CC_set=
    ac_cv_env_CC_value=
    ac_cv_env_CFLAGS_set=
    ac_cv_env_CFLAGS_value=
    ac_cv_env_CPPFLAGS_set=
    ac_cv_env_CPPFLAGS_value=
    ac_cv_env_CPP_set=
    ac_cv_env_CPP_value=
    ac_cv_env_LDFLAGS_set=
    ac_cv_env_LDFLAGS_value=
    ac_cv_env_build_alias_set=
    ac_cv_env_build_alias_value=
    ac_cv_env_host_alias_set=
    ac_cv_env_host_alias_value=
    ac_cv_env_target_alias_set=
    ac_cv_env_target_alias_value=
    ac_cv_prog_ac_ct_CC='dmake: defaulting to parallel mode.
    ## Output variables. ##
    -xO5 -xc99 -xlibmieee -xlibmil -nofstore'
    /opt/studio12/SUNWspro/bin/cc -m64'
    /opt/studio12/SUNWspro/bin/cc -m64'
    CC='dmake: defaulting to parallel mode.
    CFLAGS='dmake: defaulting to parallel mode.
    CPP=''
    CPPFLAGS=''
    DEFS=''
    ECHO_C=''
    ECHO_N='-n'
    ECHO_T=''
    EXEEXT=''
    LDFLAGS=''
    LIBOBJS=''
    LIBS=''
    LTLIBOBJS=''
    OBJEXT=''
    PACKAGE_BUGREPORT=''
    PACKAGE_NAME=''
    PACKAGE_STRING=''
    PACKAGE_TARNAME=''
    PACKAGE_VERSION=''
    PATH_SEPARATOR=':'
    PKG_CPPFLAGS=''
    PKG_LIBS=''
    SHELL='/bin/bash'
    See the man page dmake(1) for more information on setting up the .dmakerc file.
    See the man page dmake(1) for more information on setting up the .dmakerc file.
    See the man page dmake(1) for more information on setting up the .dmakerc file.
    ac_ct_CC='dmake: defaulting to parallel mode.
    bindir='${exec_prefix}/bin'
    build_alias=''
    datadir='${prefix}/share'
    exec_prefix='NONE'
    host_alias=''
    includedir='${prefix}/include'
    infodir='${prefix}/info'
    libdir='${exec_prefix}/lib'
    libexecdir='${exec_prefix}/libexec'
    localstatedir='${prefix}/var'
    mandir='${prefix}/man'
    oldincludedir='/usr/include'
    prefix='NONE'
    program_transform_name='s,x,x,'
    sbindir='${exec_prefix}/sbin'
    sharedstatedir='${prefix}/com'
    sysconfdir='${prefix}/etc'
    target_alias=''
    ## confdefs.h. ##
    #define PACKAGE_BUGREPORT ""
    #define PACKAGE_NAME ""
    #define PACKAGE_STRING ""
    #define PACKAGE_TARNAME ""
    #define PACKAGE_VERSION ""
    configure: exit 77

    Apparently the the config program is running dmake without the -m option. Dmake replies that it is defaulting to parallel mode, and the config program uses that message as a compiler command or option. After that, the wheels come off. :-)
    Fix the configure script to run dmake as
    dmake -m serial
    and see if that fixes the problem.

  • Sun Studio 11 f90 INTERNAL COMPILER ERROR: "FWOutput"

    Hello SUN-Users,
    I am new here, so I don't know I am right here!?
    I have a w2100z with two opteron proc. With Sun Studio 11 I am trying to compile the new MUMPS (Ver. 4.6) package, but I get still the error message:
    f90 -I/opt/mpich/include -Dpord -I. -I../include -c dmumps_ooc.F
    1:LEN$1:1INTERNAL COMPILER ERROR near line 2494 in dmumps_ooc.F (phase FWOutput):
    FWOutput: no visit function for class 'SubscriptTriplet'
    *** Error code 1
    make: Fatal error: Command failed for target `dmumps_ooc.o'
    I search with google for "FWOutput" and I found out, that a similar problem already was recognized in Sun Studio 9 and fixed with the patch 115985-04 (6351156 f90 compiler internal error "FWOutput: no vist function for class 'SubscriptTriplet').
    Here is some code near line 2494 from file dmumps_ooc.F:
          SUBROUTINE DMUMPS_614(id)
          I=id%MYID
          J=id%OOC_NB_FILES
          K=id%KEEP(35)
          L=MOD(id%KEEP(204),3)
    TMP_DIR=TRIM(id%DMUMPS_OOC_TMPDIR)
          TMP_FILE=TRIM(id%DMUMPS_OOC_PREFIX)
          DIM_DIR=LEN(TRIM(id%DMUMPS_OOC_TMPDIR))
          DIM_FILE=LEN(TRIM(id%DMUMPS_OOC_PREFIX))
        END SUBROUTINE DMUMPS_614The bolded line is the line 2494.
    I can not see anything worng in this routine, but maybe I am already too tired for today.... :-)
    Realy it is important to me to compile the MUMPS package,
    so I hope somebody can help me?
    ****With best regards****

    I think the TRIM should remove last character of the
    string. (?)TRIM removes the trailing blanks in a string. String assignment then adds trailing blanks, so there's no point writing something like
    s1 = TRIM(s2)
    Can you say me where can I make a bug report? What is
    to do?
    Maybe next time I can do also a bug report?That's a good question. If you have a support contract, then you should be able to submit a bug report through that. Until recently, I believe that would have been the only way to do it. However, we now have an online support service:
    http://developers.sun.com/developer_help/
    I imagine you could get a bug filed through that channel as well.

  • Compiling MySQL 5.1.26-rc with Sun Studio Express on Linux?

    I managed to compile MySQL 5.1.26-rc with Sun Studio Express on Linux (OpenSuse 10.2 on x64), but I get unexpected crashes every time a connection thread exits:
    (gdb) where
    #0  0x00002b2ce0649535 in raise () from /lib64/libc.so.6
    #1  0x00002b2ce064a990 in abort () from /lib64/libc.so.6
    #2  0x00002b2cdf949795 in __pthread_unwind () from /lib64/libpthread.so.0
    #3  0x00002b2cdf944425 in pthread_exit () from /lib64/libpthread.so.0
    #4  0x00000000005048b2 in one_thread_per_connection_end (thd=0x16d88f0, put_in_cache=false)
    at /home/mysql/debug/sql//mysqld.cc:1893
    #5  0x0000000000513b75 in handle_one_connection (arg=0x16d88f0) at /home/mysql/mysql-5.1.26-rc/sql//sql_connect.cc:1122
    #6  0x00002b2cdf94309e in start_thread () from /lib64/libpthread.so.0
    #7  0x00002b2ce06da4cd in clone () from /lib64/libc.so.6
    #8  0x0000000000000000 in ?? ()If I compile with gcc using e.g. BUILD/compile-amd64-debug-max, I have no issue! But I want to use Sun Studio in order to be consistent with the Solaris version, and also because Sun Studio is likely to produce better code.
    Here is the compilation script, it downloads and extracts the source tree and builds it (it assumes Sun Studio Express is installed in /opt/sun):
    #!/bin/bash
    export PATH=/opt/sun/sunstudioceres/bin:$PATH
    wget -q http://mir2.ovh.net/ftp.mysql.com/Downloads/MySQL-5.1/mysql-5.1.26-rc.tar.gz
    tar xpf mysql-5.1.26-rc.tar.gz
    cd mysql-5.1.26-rc
    # Explicitly specify libs to avoid linking with the STL.
    export LIBS="-xnolib -lCrun -lm -lc -lrt"
    autoreconf --force --install > autoreconf.log 2>&1
    export MY_FLAGS="-g -mt -xtarget=generic -m64"
    CC=cc CXX=CC CFLAGS=$MY_FLAGS CXXFLAGS=$MY_FLAGS ./configure --with-big-tables --without-embedded-server --disable-shared --with-pthread --with-ssl -with-plugins=max > configure.log 2>&1
    gmake -j > build.log 2>&1Any idea about what is going wrong?
    Thanks.

    Possibly the actual CC (or cc) command lines are not correct. The proper way to say not to link libCstd is the command-line option -library=no%Cstd. Then you don't need to add the default system libraries like -lc to the command line.
    Can you show the actual CC command lines that are generated by the makefile? They should be in the compilation log. I'd also like to see the command line(s) used to create dynamic libraries, if any, and the final executable.

  • Two compile issues with Sun Studio 12 @ x86(_64 = amd64)

    The following two issues are absent on Solaris 10 SPARC and all previous Sun Studio versions (8 to 11), but present on both amd64 Solaris 10 and Linux 2.6 versions:
    1. mozilla.org's Spidermonkey "JavaScript" (ECMAscript) can't be compiled with it: in file jsinterp.c an endless loop is entered by the optimizer in level -xO1 and higher (!). With no optimization, linking is impossible (unresolved symbols from jsinterp.o), which hints to defunct output.
    2. the optimizer (ube) is crashing in sources with a switch with many many case labels in optimization level -xO3 and higher with a segfault.

    I have trouble to seperate a reasonable (example) source out of our complex sources showing the second issue --- what I can already tell is, that the following special pragma has to do with it (while I'm now in doubt that the each 256 case labels per switch, two switches in an if else clause have to do with it):
    #pragma opt 0 (func_name)
    Own1 Own2 func_name(...)
    The buggy versions I can tell you: they are
    on Solaris 10 amd64:
    /opt/SUNWspro/bin/cc -V
    cc: Sun C 5.9 SunOS_i386 2007/05/03
    /opt/SUNWspro/prod/bin/ube -V
    ube: Sun Compiler Common 12 SunOS_i386 2007/05/03
    on GNU/Linux:
    cc -V
    cc: Sun C 5.9 Linux_i386 2007/05/03
    ube -V
    ube: Sun Compiler Common 12 Linux_i386 2007/05/03
    The only important compiler option in this regard seems to be the optimization level, but the situation is complex too, if others should be also involved. I will investigate further...

  • Sun Studio 10 Linux, RHEL3 U4, install fails on openmotif21.

    Hello everyone,
    As a long-time user of Sun WorkShop... I mean Forte.. I mean Studio; it was with great anticipation that I downloader Sun Studio 10 for Linux.
    On one machine it failed to install and on another it installed properly.
    Here are the details:
    - Machine 1: RHEL3 U2 (x86/i686), small install: Installation of Studio 10 went fine.
    - Machine 2: RHEL3 U4 (x86/i686), complete install : Installation of Studio 10 failed. The following can be gathered from the logs under /var/opt/sun:
    [....snip....]
    Installing Sun Studio Software
    Log file: /var/opt/sun/install/logs/Sun_Studio_Software_install.A04060111
    Installed: /var/prod/com.sun.studio_10/uninstall_Sun_Studio_Software.class
    Uninstaller is at: /var/prod/com.sun.studio_10/uninstall_Sun_Studio_Software.class
    Standalone Tools: Building Software
    Installing RPM: sun-dmake-10.0-1
    [....snip....]
    System packages supporting Sun Studio Software
    Installing RPM: openmotif-2.1.31-2_IST
    error: Failed dependencies:
    openmotif < 2.2.2 conflicts with openmotif21-2.1.30-9.RHEL3.4
    Error: RPM openmotif-2.1.31-2_IST install failed}.
    Install complete. Package: openmotif-2.1.31-2_IST
    rpm: Skipping rpm remove of openmotif-2.1.31-2_IST, not installed.
    rpm: Skipping rpm remove of sun-svc-locale-zh-10.0-1, not installed.
    [....snip....]
    And everything is removed. Is this issue documented somewhere? Is there a workaround?
    Thanks for reading,
    Vincent

    Deselecting 'system supporting packages' from the Sun Studio 10 installation list made the trick and Studio finished installing.
    However, I have a few concerns:
    1) Since Studio will be using the system's openmotif, will it be supported? (I guess not).
    2) Since openmotif-2.1.31-2_IST.i386.rpm from the Studio 10 IDE kits lands under /usr/OpenMotif-2.1.31 and should not conflict with any kind of other/system openmotif, why didn't SUN just create a sun-openmotif-support package? This would prevent a naming conflict when trying to install on RHEL3 if RHEL's openmotif21 is already installed?
    3) It appears to work fine, even without SUN's provided openmotif.
    Cheers,
    Vincent

Maybe you are looking for