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

20000923: McIDAS-X scc produces segementation violation



>From: weather <address@hidden>
>Organization: NMSU/NSBF
>Keywords: 200009231141.e8NBfgb15537 McIDAS-X Sun SC5.0 MDX csetkn.for

Robert,

>I am running McIDAS-x 7.613 on Solaris 8 Intel using SC 5.0
>compilers.  When trying to use the SCC command, it produces
>a segmentation violation.  

I just ran into this one the other day (I use ADDE commands almost
exclusively now).  This appears to be a the exact same bug that was
fixed for early versions of SC4.2.

The problem is the incorrect compilation of csetkn.for when
optimization is used.  The fix is the following:

cd mcidas7.6/src
<edit mccomp.sh>

find the section for Sun SC5.0 and make sure that it is changed to
look like:

                #-------
                # The following tests for the presence of Sun's SC5.0
                # and WS6 Fortran compilers and tries to accomodate their
                # bug of not compiling a few McIDAS routines correctly
                # with optimization.
                #
                # We do the following:
                #
                #      change O_opt to "-g" (debug)
                #
                # WARNING: 20000829: Modules known to compile incorrectly
                #                    include:
                #                       mcgget.for
                #                       ptdisp.pgm
                #                    but there may be more!
                #-------

                if  [ -f /opt/SUNWspro/bin/f77 ]
                then    case `ls -l /opt/SUNWspro/bin/f77 2>/dev/null` in
                    *SC5.0*)
                        case $src in
                            csetkn.for)
                                O_opt="-g"
                                ;;
                            mcgget.for)
                                O_opt="-g"
                                ;;
                            ptlist.pgm)
                                O_opt="-g"
                                ;;
                        esac
                    ;;
                    *WS6*)
                        case $src in
                            csetkn.for)
                                O_opt="-g"
                                ;;
                            mcgget.for)
                                O_opt="-g"
                                ;;
                            ptlist.pgm)
                                O_opt="-g"
                                ;;
                        esac
                    ;;
                    esac
                fi

(Note the addition of the execption for csetkn.for and the added section
for the Sun WS6 compilation environment.  As an aside, we now know that
Sun is not the developer of the Fortran compiler in SC5.0 AND they are
dropping support for Fortran on x86!  This won't stop us from once again
getting this bug fixed, however.)

After making the change, run:

rm csetkn.o
make mccomp
make mdx.k
rm ~/bin/mdx.k
ln mdx.k ~/bin

This should take care of not only the problem with SCC, but also ones
that should crop up with other MDX macros.

Tom

>From address@hidden Sat Sep 23 10:08:14 2000

>That section in mccomp.sh is just as it should be.

That is suprising since I just added the section for csetkn.for the
other day, and I have not issued an addendum!

>I did the steps
>of rebuilding mdx.k as shown anyway.  SCC still gives a segementation
>violation. 

Can you review the end of mcidas7.6/src/makelog and make sure that csetkn.for
got recompiled with '-g' instead of '-O'?  This will be a help.

>Feel free to snoop around on wxmcidas.

I don't have the login here at home.  Could you give me the password?

>BTW do you still have indications that Sun will continue support
>and develop Solaris Intel?

Their dropping support for Fortran actually fits into their statement
of support of x86 as a server platform (I don't like this, by the way).
Aside from the outward indications, Sun keeps to the same line that they
will continue to support x86.  I found it interesting that they have also
jumped on the Gnome bandwagon.  They are dumping CDE (I don't know the
timeframe on this one) in favor of Gnome, but, then again, so are a
number of other vendors.

Tom

>From address@hidden Sat Sep 23 10:29:20 2000

>That's the problem,,it got compiled with -O instead of -g.

The csetkn.for exception section was missing from mccomp.sh when I
logged on.

I changed mccomp.sh; remade mccomp; deleted csetkn.o; and then
remade mdx.k.  csetkn.o got correctly built with '-g'.  Now, all
the MDX macros should run with no segmentation violation.

I ran MDX by itself with no errors, so I feel pretty confident about
the fix:

cd ~/workdata
mdx.k T MAP=NA MDF=7
---PLOTTING DONE

SCC also works:

scc.k T USA
FILE: 132 GRID: 1
 --BEGIN CONTOURS
 --END CONTOURS

>Yes I read about the Gnome thing.  To me Gnome looks cheap
>and cheesy, I like CDE much better.  

I kinda like Gnome.  Hopefully, it will take less memory than CDE.
Plus, with a number of front line Unix vendors jumping on the bandwagon,
it is likely to get a lot better (trying to be optimistic here :-).

Later...

Tom

>From address@hidden Sat Sep 23 10:40:28 2000
>Subject: Re: 20000923: McIDAS-X scc produces segementation violation (cont.) 

Hmm, I guess I did not look closely enough..sorry for the trouble.

Thanks and I'll see you at the MUG.

Robert