On Tue, 2010-08-03 at 13:59 -0400, Paul Barbone wrote: > Harish Narayanan wrote: > > On 8/3/10 10:22 PM, Garth N. Wells wrote: > > > >> On Tue, 2010-08-03 at 12:26 -0400, Paul Barbone wrote: > >> > >>> Hello all, > >>> > >>> I'm excited to give this a try. > >>> > >>> In the meantime, I've been (trying) to install dorsal on leopard > >>> (10.5.8). The snowleopard.package seems to almost work with the > >>> following modifications: > >>> > >>> default PETSC_ARCH=darwin9.2.0-cxx-opt > >>> default GMP_ARCH=none-apple-darwin > >>> > >>> > >>> I also had to comment out the scotch package (per Garth Wells' advice). > >>> > >>> > >>> I'm now stuck at compiling DofMapBuilder.cpp, which ends with the > >>> message (among many): > >>> > >>> /usr/include/c++/4.0.0/tr1/hashtable:1363: warning: control reaches end > >>> of non-void function > >>> scons: *** [dolfin/fem/DofMapBuilder.os] Error 1 > >>> scons: building terminated because of errors. > >>> dolfin/fem/DofMapBuilder.os failed: Error 1 > >>> > >> We use a new feature of C++ which is broken in older compilers (e.g. gcc > >> 4.0.0). > >> > >> Harish: macports has loads of gcc (and openmpi) versions. Can Dorsal > >> tell user to get gcc from macports and then use that? > > > > Yes, and it has probably already got it. I have something called > > gcc-mp-4.4 (-mp being macports) on my machine which I didn't explicitly > > install. Setting > > > > export CC=gcc-mp-4.4 > > export CXX=g++-mp-4.4 > > > > in leopard.platform ought to work. > > > > Harish > > You're right - those compilers were already there in /opt/local/bin. I > gave that a try, but it didn't fix the problem. > > > I realized that earlier I showed the last warning message rather than > the error message.
Depending on the compiler options that DOLFIN uses, it may turn warnings into errors. > The error message is: > > > /usr/include/c++/4.0.0/tr1/hashtable:1135: error: passing 'const > std::tr1::hashtable<dolfin::uint, dolfin::uint, > std::allocator<dolfin::uint>, Internal::identity<dolfin::uint>, > std::equal_to<dolfin::uint>, std::tr1::hash<unsigned int>, > Internal::mod_range_hashing, Internal::default_ranged_hash, > Internal::prime_rehash_policy, false, false, true>' as 'this' argument > of 'typename std::tr1::hashtable<Key, Value, Allocator, ExtractKey, > Equal, H1, H2, H, RehashPolicy, cache_hash_code, mutable_iterators, > unique_keys>::node* std::tr1::hashtable<Key, Value, Allocator, > ExtractKey, Equal, H1, H2, H, RehashPolicy, cache_hash_code, > mutable_iterators, unique_keys>::find_node(Internal::hash_node<Value, > cache_hash_code>*, const Key&, typename std::tr1::hashtable<Key, Value, > Allocator, ExtractKey, Equal, H1, H2, H, RehashPolicy, cache_hash_code, > mutable_iterators, unique_keys>::hash_code_t) [with Key = dolfin::uint, > Value = dolfin::uint, Allocator = std::allocator<dolfin::uint>, > ExtractKey = Internal::identity<dolfin::uint>, Equal = > std::equal_to<dolfin::uint>, H1 = std::tr1::hash<unsigned int>, H2 = > Internal::mod_range_hashing, H = Internal::default_ranged_hash, > RehashPolicy = Internal::prime_rehash_policy, bool cache_hash_code = > false, bool mutable_iterators = false, bool unique_keys = true]' > discards qualifiers > > I've just changed tr1::unordered_set to boost::unordered_set in DOLFIN, so hopefully this will fix the problem. Pull the latest version of DOLFIN and try again. Garth > After another warning, it finally ends with: > scons: *** [dolfin/fem/DofMapBuilder.os] Error 1 > scons: building terminated because of errors. > dolfin/fem/DofMapBuilder.os failed: Error 1 > Failure with exit status: 2 > Exit message: There was a problem building dolfin-0.9.8. > > -Paul > _______________________________________________ Mailing list: https://launchpad.net/~dorsal Post to : [email protected] Unsubscribe : https://launchpad.net/~dorsal More help : https://help.launchpad.net/ListHelp

