Re: building libgasnet-smp-seq.a ...

From: Dan Bonachea (bonachea_at_cs_dot_berkeley_dot_edu)
Date: Fri Sep 22 2006 - 17:46:52 PDT

  • Next message: Paul H. Hargrove: "Re: building libgasnet-smp-seq.a ..."
    At 04:20 PM 9/22/2006, Konstantin Kleisouris wrote:
    >Hi all,
    >
    >   I am experiencing difficulty in building libgasnet-smp-seq.a on a
    >sparc-sun-solaris2.7. The version of gcc on the machine is 2.95.2
    >   However, when gmake tries to build libgasnet-smp-seq.a I get:
    >`MAP_ANON' undeclared.
    >   I have attached to the current e-mail the messages that I get when I
    >run the configure program (conflog file attachment) and the messages I
    >get when I run gmake (gmakelog attachement).
    >   When I run configure I use -disable-mpi -disable-udp since I don't
    >need the udp or mpi conduits.
    
    Hi Konstantin -
    
      I suspect the issue arises because none of our Solaris test machines use 
    that old an OS or compiler. Solaris 2.7 and gcc 2.95.2 are both *really* 
    ancient - you should seriously consider upgrading them, for reasons of both 
    performance and security. Both date back more than seven years (predating most 
    UPC implementations), and Sun apparently stopped support fixes for 2.7 more 
    than a year ago (I shudder to think how many known security vulnerabilities 
    might exist in your kernel).
    
       Given the OS vendor doesn't even support that old OS anymore, we obviously 
    cannot expend alot of effort trying to support our user-level software there. 
    However, assuming an OS upgrade is impossible, we might still be able to get 
    you up and running..
    
       Contrary to Samy's post, I don't believe HAVE_MMAP could possibly have 
    anything to do with it, because configure obviously auto-detected mmap 
    capability on your system (otherwise the code in question would be disabled).
    
    It's more likely that old Solaris merely has a different spelling for the 
    MAP_ANON symbol - gasnet_mmap.c already contains a number of system-specific 
    incantations at the top for various OS's, and probably one is missing for old 
    Solaris. Based on archived Solaris/mmap documentation here:
    
       http://docs.sun.com/app/docs/doc/805-3174/6j31do6fc?q=mmap&a=view
    
    I'd *guess* that the right fix is probably to add the following lines to the 
    top of gasnet_mmap.c:
    
    #define GASNETI_MMAP_FLAGS (MAP_PRIVATE | MAP_NORESERVE)
    #define GASNETI_MMAP_FILE "/dev/zero"
    
    However, lacking access to a Solaris 7 system, I have no way to actually test 
    that this works, so your mileage may vary. Please let us know how it goes...
    
    Hope this helps...
    Dan
    

  • Next message: Paul H. Hargrove: "Re: building libgasnet-smp-seq.a ..."