From: Paul T. B. <ptb...@gm...> - 2016-08-24 16:49:08
|
On Wed, Aug 24, 2016 at 11:38 AM, John Peterson <jwp...@gm...> wrote: > On Wed, Aug 24, 2016 at 9:33 AM, <li...@si...> wrote: > > > I am installing libMesh on Shenwei, the new machine that ranks 1st on > > latest TOP500(June, 2016). > > The chips are developed differently from Intel, they may have some > > relations with the Alpha architecture, so libMesh does get some info and > > builds the configuration in that way. > > > > I know it is not a good idea to change config.guess, but without doing > > this, I don't know how to fix the error path in linking libs. > > > > This computer has completely custom processors? I really have no idea how > GNU autotools will work on this system at all, unless someone has ported it > over... in that case, you would need to get a hold of that version of > autotools and rebootstrap libmesh with it. Cross-compiling is tricky business, even more so on new architectures. We played this game a bit when the MIC's were first coming out. I probably don't remember everything we did, but we did hijack one of the configurations in config.sub to supply the basics (e.g. so you can do --host=shenwei (or whatever)). Then, we had to override pretty much most of the environment at the configure line: CC, CXX, CFLAGS, CXXFLAGS, LDFLAGS, LIBS, etc. with all the correct values. You ought to be able to do something along these lines, but it will be tough for us to help you since we don't have access to that machine. You'll need to get someone who's intimately familiar with compiling on that machine to be able to help you when you get stuck. Is there a reason you need to cross compile and you just can't compile for that architecture? Typically, one of the front end nodes of a supercomputer will have the same architecture so you don't have to cross compile. |