On Fri, 4 Feb 2022, Anton Popov wrote: > > Am 04.02.2022 um 18:54 schrieb Satish Balay: > > On Fri, 4 Feb 2022, Anton Popov wrote: > > > >> Thanks Matt, Barry and Satish, forĀ your suggestions. > >> > >> The problem was indeed in mismatch between the gfortran library version > >> (system has libgfortran.so.4 libflame needs libgfortran.so.5) > >> > >> 3.9.4 did not detect this during configure, but only gave error later > >> during > >> test. > >> > >> 3.16.4 detected this immediately. > >> > >> After installing libgfortran.so.5, both PETSc versions install just fine, > >> however I get the warning mentioned by Satish. > > Hm - you could install libgfortran.so.5 without the corresponding compiler? > Yes, apparently it is possible on Ubuntu 18.04.
Presumably it also comes with the corresponding gcc/gfortran [gcc-8, gfortran-8?]. Perhaps these compilers would avoid this issue. > > > >>> /opt/amd/amd-libflame-3.1.0/lib/lp64/libflame.so > > Ah - this is a binary download - not something compiled locally? > Yes it is the latest binary from AMD website. > > > > I wonder if the compiler gave both an error [return code] and a warning > > previously [with the missing libgfortran.so.5] - as Barry was suggesting. > It was an error at runtime, configure was just fine. > > > > > > As you say - you still get that warning [which is expected - as you are > > using a different version of gfortran than what libflame.so was built with] > > Now since libgfortran.so.5 coexists with libgfortran.so.4 it links against the > proper one, but gives a warning that both versions are available. > > I think I will just compile BLIS and LibFLAME from sources on my system to > avoid these problems altogether. Yeah - generally building everything with the same version of the compiler avoids these issues. Satish > > Best, > > Anton > > > > > > Satish > > > >> Maybe it is indeed worth upgrading everything to the compatible versions. > >> > >> Best, > >> > >> Anton > >> > >> > >> On 04.02.22 18:33, Barry Smith wrote: > >>>> On Feb 4, 2022, at 12:27 PM, Satish Balay <[email protected]> wrote: > >>>> > >>>> Probably best if you can use the same version of gfortran to build both > >>>> petsc and libflame/blis > >>>> > >>>>> /usr/bin/ld: warning: libgfortran.so.5, needed by > >>>>> /opt/amd/amd-libflame-3.1.0/lib/lp64/libflame.so, not found (try using > >>>>> -rpath or -rpath-link): > >>>> This is probably an ignore-able warning - but configure defaults to > >>>> -Werror > >>>> mode here. > >>> Hmm, if it needs libgfortran.so.5 then it needs it and it cannot be > >>> ignored since a link cannot succeed. Flame presumably contains a lot > >>> of > >>> old Fortran code from Lapack so would normally need the fortran > >>> libraries. > >>> > >>>> Wrt forcing link with static libraries - you can try: > >>>> > >>>> LIBS="/opt/amd/amd-libflame-3.1.0/lib/lp64/libflame.a > >>>> /opt/amd/amd-blis-3.1.0/lib/lp64/libblis.a" > >>>> > >>>> [instead of --with-blas-lib= --with-lapack-lib= options]. > >>>> > >>>> Satish > >>>> > >>>> > >>>> On Fri, 4 Feb 2022, Barry Smith wrote: > >>>> > >>>>> Please do > >>>>> > >>>>> ldd -O /opt/amd/amd-libflame-3.1.0/lib/lp64/libflame.so > >>>>> > >>>>> You may need to list the gfortran library directory of libgfortran.so.5 > >>>>> it > >>>>> needs to use in LDFLAGS passed to PETSc configure > >>>>> > >>>>> Barry > >>>>> > >>>>> Note: Even though you explicitly listed a static library of libflame to > >>>>> use our configure is goofy and loses that information and wants to link > >>>>> with the shared version > >>>>> > >>>>> > >>>>>> On Feb 4, 2022, at 12:00 PM, Anton Popov <[email protected]> wrote: > >>>>>> > >>>>>> > >>>>>> > >>>>>> On 04.02.22 17:39, Matthew Knepley wrote: > >>>>>>> On Fri, Feb 4, 2022 at 11:35 AM Anton Popov <[email protected] > >>>>>>> <mailto:[email protected]>> wrote: > >>>>>>> Hi Satish, > >>>>>>> > >>>>>>> I just discovered that PETSc 3.16.4 fails to link against the latest > >>>>>>> AMD > >>>>>>> BLIS and LibFLAME libraries on a Linux box. > >>>>>>> > >>>>>>> ------------------------------------------------------------------------------- > >>>>>>> You set a value for --with-blas-lib=<lib> and --with-lapack-lib=<lib>, > >>>>>>> but ['/opt/amd/amd-blis-3.1.0/lib/lp64/libblis.a'] and > >>>>>>> ['/opt/amd/amd-libflame-3.1.0/lib/lp64/libflame.a'] cannot be used > >>>>>>> ******************************************************************************* > >>>>>>> > >>>>>>> My previous experience with 3.9.4 on the same system was fully > >>>>>>> successful. Looking in the configure logs (attached) reveals small > >>>>>>> difference in the linking compared to 3.9.4 > >>>>>>> > >>>>>>> Could you please make a guess what went wrong? > >>>>>>> > >>>>>>> Down in the log I see: > >>>>>>> > >>>>>>> /usr/bin/ld: warning: libgfortran.so.5, needed by > >>>>>>> /opt/amd/amd-libflame-3.1.0/lib/lp64/libflame.so, not found (try using > >>>>>>> -rpath or -rpath-link): > >>>>>> Thanks Matt, I'll try. > >>>>>> > >>>>>>> Did the gfortran library move or get upgraded? > >>>>>> Not at all. I have configured 3.9.4 just now to make a test, and it > >>>>>> perfectly finds all the libraries. So there must be something that > >>>>>> 3.16.4 > >>>>>> does differently. > >>>>>> > >>>>>> Best, > >>>>>> > >>>>>> Anton > >>>>>> > >>>>>>> Thanks, > >>>>>>> > >>>>>>> Matt > >>>>>>> > >>>>>>> Best regards, > >>>>>>> > >>>>>>> Anton > >>>>>>> > >>>>>>> > >>>>>>> -- > >>>>>>> What most experimenters take for granted before they begin their > >>>>>>> experiments is infinitely more interesting than any results to which > >>>>>>> their experiments lead. > >>>>>>> -- Norbert Wiener > >>>>>>> > >>>>>>> https://www.cse.buffalo.edu/~knepley/ > >>>>>>> <http://www.cse.buffalo.edu/~knepley/> > >> >
