On Apr 7, 2021, at 10:49 AM, Blaise A Bourdin <bourdin@lsu.edu> wrote:No luck with -lgcc but it looks like this symbol is defined in/usr/local/Cellar/gcc/10.2.0_4/lib/gcc/10/libgcc_s.1.dylib00000000000039b0 T ___muldc3
So adding -lgcc_s.1 eliminates the warning.I assume that the issue is with gcc-10 on macOS ARM. I can try to report it to upstream to although building a small test may be a bit challenging.
Regards,Blaise
On Apr 6, 2021, at 5:32 PM, Barry Smith <bsmith@petsc.dev> wrote:
Blaise,Thanks, can you try cd src/snes/tutorials and then cut and paste the huge line that you sent earlier that begins with mpif90 -Wl,-bind_at_load ..... and add at the end -lgcc and see if that line successfully links the Fortran code?
Thanks
Barry
On Apr 6, 2021, at 12:22 PM, Blaise A Bourdin <bourdin@lsu.edu> wrote:
Hi Barry,
See attachedPlease send configure.log
It would also be helpful if you could run
nm -o /usr/lib/lib* | grep muldc3
That is uneventful (I have no idea how these broken symbolic link got there and can’t delete them because of SIP)…SiMini:lib $ nm -o /usr/lib/lib* | grep muldc3/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: error: /usr/lib/libhunspell-1.2.0.dylib: No such file or directory./Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: error: /usr/lib/libhunspell-1.2.dylib: No such file or directory./Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: error: /usr/lib/libiodbc.2.dylib: No such file or directory./Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: error: /usr/lib/libiodbc.dylib: No such file or directory./Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: error: /usr/lib/libiodbcinst.2.dylib: No such file or directory./Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: error: /usr/lib/libiodbcinst.dylib: No such file or directory./Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: error: /usr/lib/libstdc++.6.dylib: No such file or directory./Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: error: /usr/lib/libstdc++.dylib: No such file or directory.
Blaise<configure.log>
Our cross language linker tests are not adding all the libraries they need to add when using Fortran for linking.
Barry
On Apr 6, 2021, at 11:00 AM, Matthew Knepley <knepley@gmail.com> wrote:
On Tue, Apr 6, 2021 at 11:04 AM Blaise A Bourdin <bourdin@lsu.edu> wrote:
Hi,
I am having the following warning when compiling any fortran example (currently on main, but it’s been going on for a little while) on a ARM mac.
*******************Error detected during compile or link!*******************See http://www.mcs.anl.gov/petsc/documentation/faq.html
/opt/HPC/petsc-main/src/snes/tutorials ex5f
*********************************************************
mpif90 -Wl,-bind_at_load -Wl,-multiply_defined,suppress -Wl,-multiply_defined -Wl,suppress -Wl,-commons,use_dylibs -Wl,-search_paths_first -Wl,-no_compact_unwind -ffree-line-length-none -fallow-argument-mismatch -fPIC -g -ffree-line-length-none -fallow-argument-mismatch -fPIC -g -I/opt/HPC/petsc-main/include -I/opt/HPC/petsc-main/bigsur-gcc10.2-arm64-reallybasic-g/include -I/opt/X11/include ex5f.F90 -Wl,-rpath,/opt/HPC/petsc-main/bigsur-gcc10.2-arm64-reallybasic-g/lib -L/opt/HPC/petsc-main/bigsur-gcc10.2-arm64-reallybasic-g/lib -Wl,-rpath,/opt/X11/lib -L/opt/X11/lib -Wl,-rpath,/opt/homebrew/Cellar/mpich/3.4.1_2/lib -L/opt/homebrew/Cellar/mpich/3.4.1_2/lib -Wl,-rpath,/opt/homebrew/Cellar/gcc/10.2.0_4/lib/gcc/10/gcc/aarch64-apple-darwin20/10.2.1 -L/opt/homebrew/Cellar/gcc/10.2.0_4/lib/gcc/10/gcc/aarch64-apple-darwin20/10.2.1 -Wl,-rpath,/opt/homebrew/Cellar/gcc/10.2.0_4/lib/gcc/10 -L/opt/homebrew/Cellar/gcc/10.2.0_4/lib/gcc/10 -lpetsc -llapack -lblas -lX11 -lc++ -ldl -lmpifort -lmpi -lpmpi -lgfortran -lemutls_w -lm -lc++ -ldl -o ex5f
warning: (arm64) could not find object file symbol for symbol muldc3
Fortran example src/snes/tutorials/ex5f run successfully with 1 MPI process
For reference, here is how I configured petsc:./configure --CFLAGS='-Wimplicit-function-declaration' --FFLAGS="-ffree-line-length-none -fallow-argument-mismatch" --with-debugging=1 --with-shared-libraries=1 --with-x11=1
It looks like this symbol is referenced in: sfpack.o
SiMini:petsc-main (main)$ grep -ri muldc3 bigsur-gcc10.2-arm64-reallybasic-g/*Binary file bigsur-gcc10.2-arm64-reallybasic-g/lib/libpetsc.3.015.0.dylib matchesBinary file bigsur-gcc10.2-arm64-reallybasic-g/lib/libpetsc.3.015.dylib matchesbigsur-gcc10.2-arm64-reallybasic-g/lib/petsc/conf/check.log:warning: (arm64) could not find object file symbol for symbol ___muldc3Binary file bigsur-gcc10.2-arm64-reallybasic-g/lib/libpetsc.dylib matchesBinary file bigsur-gcc10.2-arm64-reallybasic-g/obj/vec/is/sf/impls/basic/sfpack.o matches
SiMini:petsc-main (main)$ nm bigsur-gcc10.2-arm64-reallybasic-g/obj/vec/is/sf/impls/basic/sfpack.o | grep muldc3U ___muldc3
Google tells me it is a gcc thing for complex multiplication. Ah, I think this is the problem:
It is in the C library and you are linking from Fortran, so the compatibility libraries are not correct.
Thanks,
MattAny idea?Blaise
--
A.K. & Shirley Barton Professor of Mathematics
Adjunct Professor of Mechanical Engineering
Adjunct of the Center for Computation & Technology
Louisiana State University, Lockett Hall Room 344, Baton Rouge, LA 70803, USA
Tel. +1 (225) 578 1612, Fax +1 (225) 578 4276 Web http://www.math.lsu.edu/~bourdin
--
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
--A.K. & Shirley Barton Professor of MathematicsAdjunct Professor of Mechanical EngineeringAdjunct of the Center for Computation & TechnologyLouisiana State University, Lockett Hall Room 344, Baton Rouge, LA 70803, USATel. +1 (225) 578 1612, Fax +1 (225) 578 4276 Web http://www.math.lsu.edu/~bourdin
--A.K. & Shirley Barton Professor of MathematicsAdjunct Professor of Mechanical EngineeringAdjunct of the Center for Computation & TechnologyLouisiana State University, Lockett Hall Room 344, Baton Rouge, LA 70803, USATel. +1 (225) 578 1612, Fax +1 (225) 578 4276 Web http://www.math.lsu.edu/~bourdin