First, please note this page: http://gem5.org/Reporting_Problems This question really belongs on gem5-users, and you need to report the full command line you're using to compile, and the specific revisions of the relevant tools you're using. What is the specific version of g++ you have? I only know that it's some flavor of 4.4 because of the paths in your error message.
Going back to your original email, gem5-stable is only 4 months old, so it should not have problems with g++ 4.4. There are even some 4.6 fixes in gem5-stable, though there are a few more that are only in dev. So I'm very suspicious about your initial problem. In fact I have g++ 4.4.3 on my own machine, and it compiles gem5-stable and gem5-dev just fine, though this is on Ubuntu 10.04 and not redhat. Note that Andreas introduced some pretty complex preprocessor logic in src/base/hashmap.hh recently, so I wouldn't be too surprised if there are some corner cases that are wrong. I haven't worked on that code though so I can't speculate what the issue might be. Any thoughts, Andreas? Steve On Thu, May 3, 2012 at 8:22 PM, GE ZHIGUO <[email protected]> wrote: > I encountered some problems when compiling gem5-dev branch codes on ubuntu > system. > It seems that the problem is caused by the function declaration conflict > between gem5 and g++ . > > Could anyone help me with this? Thanks! > > > In file included from build/ARM/arch/arm/types.hh:48, > from build/ARM/arch/arm/isa_traits.hh:48, > from build/ARM/arch/arm/tlb.hh:48, > from build/ARM/arch/tlb.hh:1, > from build/ARM/cpu/base.cc:50: > build/ARM/base/hashmap.hh:157: error: specialization of > 'std::tr1::hash<long long unsigned int>' after instantiation > build/ARM/base/hashmap.hh:157: error: redefinition of 'struct > std::tr1::hash<long long unsigned int>' > /usr/include/c++/4.4/tr1_impl/functional_hash.h:39: error: previous > definition of 'struct std::tr1::hash<long long unsigned int>' > build/ARM/base/hashmap.hh:164: error: specialization of > 'std::tr1::hash<long long int>' after instantiation > build/ARM/base/hashmap.hh:164: error: redefinition of 'struct > std::tr1::hash<long long int>' > /usr/include/c++/4.4/tr1_impl/functional_hash.h:39: error: previous > definition of 'struct std::tr1::hash<long long int>' > scons: *** [build/ARM/cpu/base.fo] Error 1 > scons: building terminated because of errors. > > > > > > _______________________________________________ > gem5-dev mailing list > [email protected] > http://m5sim.org/mailman/listinfo/gem5-dev > _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
