PGI User Forum
 SearchSearch   MemberlistMemberlist     RegisterRegister   ProfileProfile    Log inLog in 

CUDA-x86.

mandrake installation attempt

 
Post new topic   Reply to topic    PGI User Forum Forum Index -> Licenses and Installation
View previous topic :: View next topic  
Author Message
jevans



Joined: 14 Dec 2004
Posts: 13

PostPosted: Tue Dec 14, 2004 11:34 am    Post subject: mandrake installation attempt Reply with quote

Has there been any luck with installing 5.2-2 on Mandrake? I attempted to follow the general thrust of what was mentioned in the "Installing 5.2 on AMD64 running Gentoo linux" thread, but no luck. I had to hardcode the SPECSFILE variable in the makelocalrc script in order to get it to produce believable results, but even after incorporating said results into the lin86rc file, I'm still unable to compile netcdf. I get as far as ncx.c and get the error


PGC-F-0249-#error -- "ix_short implementation" (ncx.c: 200)
Back to top
View user's profile
mkcolg



Joined: 30 Jun 2004
Posts: 6146
Location: The Portland Group Inc.

PostPosted: Tue Dec 14, 2004 2:41 pm    Post subject: Reply with quote

In the past, users of Mandrake had little problems installing our products since Mandrake was very similar to Red Hat. Of course things change, but since we don't support Mandrake, we don't keep track. However, the error your getting might not be a configuration issue. The code in question is as follows:
Code:
/* x_short */

#if SHORT_MAX == X_SHORT_MAX
typedef short ix_short;
#define SIZEOF_IX_SHORT SIZEOF_SHORT
#define IX_SHORT_MAX SHORT_MAX
#elif INT_MAX >= X_SHORT_MAX
typedef int ix_short;
#define SIZEOF_IX_SHORT SIZEOF_INT
#define IX_SHORT_MAX INT_MAX
#elif LONG_MAX >= X_SHORT_MAX
typedef long ix_short;
#define SIZEOF_IX_SHORT SIZEOF_LONG
#define IX_SHORT_MAX LONG_MAX
#else
#error "ix_short implementation"
#endif


These variables are either defined in ncx.h or /usr/include/limits.h so it might be an incompatability with NetCDF since NetCDF is expecting specific sizes for its types. Compare the values in limit.h with ncx.h to see if they agree. (Note that SHORT_MAX is called SHRT_MAX in limits.h, NetCDF redfines SHRT_MAX to SHORT_MAX)

Hope this helps,
Mat
Back to top
View user's profile
jevans



Joined: 14 Dec 2004
Posts: 13

PostPosted: Wed Dec 15, 2004 10:15 am    Post subject: Reply with quote

Turns out they are the same. I just tried to ugrade to 5.2-4 and it jogged my memory on something relevant that happened during the 5.2-2 install. Just at the end of the upgrade installation, there are messages

dirname: too few arguments
Try `dirname --help' for more information.
basename: too few arguments
Try `basename --help' for more information.
dirname: too few arguments
Try `dirname --help' for more information.
basename: too few arguments
Try `basename --help' for more information.
dirname: too few arguments
Try `dirname --help' for more information.

I suspect that this happens when "makelocalrc" is run for the first time? The source of the problem in that file seems to be that SPECSFILE is not correctly being determined. I assume that the correct value for my system would be

SPECSFILE=/usr/lib/gcc/i586-mandrake-linux-gnu/3.4.1/specs

I can't quite wrap my head around the reason why the get_specs_file function in makelocalrc doesn't work, so I hardcoded this value into that function. Then makelocalrc runs to completion and produces no error messages. Without hardcoding that value, I get the same error messages as the 5.2-4 installation. But alas, the upgrade still results in the same error in netcdf as before. Compiling HDF5 gets a little further, but also produces a similar error, complaining about __INT_MAX__ in the file H5Distore.c.

Well, hmm. Maybe Mdk 10.1 made too many new changes under the hood. I have a spare partition, maybe I'll put Suse 9.1 on it, see it I have better luck.
Back to top
View user's profile
mkcolg



Joined: 30 Jun 2004
Posts: 6146
Location: The Portland Group Inc.

PostPosted: Wed Dec 15, 2004 1:45 pm    Post subject: Reply with quote

"__INT_MAX__" is an installation problem since the installer is probablly not inserting "limit.h" in the pgi include file directory. "__INT_MAX__" is not defined in any system include file (it's defined internally by gcc) so we needed to add our own limit.h file. If you still have the unpacked tarfile on your hard drive, find the directory linux86-64/5.2/include-gcc33 and copy the float.h and limit.h files into $PGI/linux86-64/5.2/include, where $PGI is your installation directory.

- Mat
Back to top
View user's profile
jevans



Joined: 14 Dec 2004
Posts: 13

PostPosted: Thu Dec 16, 2004 7:55 am    Post subject: Reply with quote

Bingo. Both HDF5 and NetCDF 3.5.1 now compile to completion and "make test" validates for netcdf. Thanks, man!
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    PGI User Forum Forum Index -> Licenses and Installation All times are GMT - 7 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © phpBB Group