Does setting MACOSX_DEPLOYMENT_TARGET also work?

Satish

On Mon, 15 Feb 2021, Jacob Faibussowitsch wrote:

> I think this problem ultimately stems from the fact that gcc/g++ and gfortran 
> are not from the same people on macOS. It seems like clang is configured to 
> build for 11.0 target, whilst gcc defaults to newest available target. And 
> indeed if I change my compile command there is no warning:
> 
> mkdir -p build && gfortran -c -o ./build/conftest.o conftest.F90 && gcc-10 -o 
> ./build/libconftest.dylib ./build/conftest.o -dynamiclib -undefined 
> dynamic_lookup && rm -rf ./build
> 
> Note I now call gcc-10 as the linker which is the __actual__ gcc (not clang 
> in a trench coat).
> 
> Best regards,
> 
> Jacob Faibussowitsch
> (Jacob Fai - booss - oh - vitch)
> Cell: (312) 694-3391
> 
> > On Feb 15, 2021, at 11:46, Jacob Faibussowitsch <[email protected]> wrote:
> > 
> > Ok so if I pass -mmacosx-version-min=11.2 to the linker the warning 
> > disappears...
> > 
> > Best regards,
> > 
> > Jacob Faibussowitsch
> > (Jacob Fai - booss - oh - vitch)
> > Cell: (312) 694-3391
> > 
> >> On Feb 15, 2021, at 11:41, Jacob Faibussowitsch <[email protected] 
> >> <mailto:[email protected]>> wrote:
> >> 
> >> I can reproduce the warning compiling just that simple code you listed. 
> >> This is the compile command:
> >> 
> >> mkdir -p build && gfortran -c -o ./build/conftest.o conftest.F90 && gcc -o 
> >> ./build/libconftest.dylib ./build/conftest.o -dynamiclib -undefined 
> >> dynamic_lookup && rm -rf ./build
> >> 
> >> And error:
> >> ld: warning: object file (./build/conftest.o) was built for newer macOS 
> >> version (11.2) than being linked (11.0)
> >> 
> >> Note I recently uninstalled and reinstalled command line tools too, which 
> >> does not seem to have fixed it.
> >> 
> >> Best regards,
> >> 
> >> Jacob Faibussowitsch
> >> (Jacob Fai - booss - oh - vitch)
> >> Cell: (312) 694-3391
> >> 
> >>> On Feb 15, 2021, at 11:30, Satish Balay <[email protected] 
> >>> <mailto:[email protected]>> wrote:
> >>> 
> >>> Here is the compile command and the warning:
> >>> 
> >>>>>>>>> 
> >>> ===== Checking linker
> >>> Executing: gfortran -c -o 
> >>> /var/folders/9w/7dlszmmn6q1gd5yf3r9n79bc0000gn/T/petsc-dk9aiv7x/config.setCompilers/conftest.o
> >>>  
> >>> -I/var/folders/9w/7dlszmmn6q1gd5yf3r9n79bc0000gn/T/petsc-dk9aiv7x/config.setCompilers
> >>>    
> >>> /var/folders/9w/7dlszmmn6q1gd5yf3r9n79bc0000gn/T/petsc-dk9aiv7x/config.setCompilers/conftest.F90
> >>>  
> >>> Successful compile:
> >>> Source:
> >>>      function foo(a)
> >>>      real:: a,x,bar
> >>>      common /xx/ x
> >>>      x=a
> >>>      foo = bar(x)
> >>>      end
> >>> Executing: gcc  -o 
> >>> /var/folders/9w/7dlszmmn6q1gd5yf3r9n79bc0000gn/T/petsc-dk9aiv7x/config.setCompilers/libconftest.dylib
> >>>   -dynamiclib -single_module -undefined dynamic_lookup -multiply_defined 
> >>> suppress  
> >>> /var/folders/9w/7dlszmmn6q1gd5yf3r9n79bc0000gn/T/petsc-dk9aiv7x/config.setCompilers/conftest.o
> >>>  
> >>> Possible ERROR while running linker:
> >>> stderr:
> >>> ld: warning: object file 
> >>> (/var/folders/9w/7dlszmmn6q1gd5yf3r9n79bc0000gn/T/petsc-dk9aiv7x/config.setCompilers/conftest.o)
> >>>  was built for newer macOS version (11.2) than being linked (11.0)
> >>>          Accepted FC PIC code without compiler flag
> >>>          
> >>> =============================================================================================
> >>> <<<<<<
> >>> 
> >>> Its likely due to the way brew built gfortran. You can try compiling a 
> >>> simple test code and see if you can reproduce this warning.
> >>> 
> >>> There is a related issue at:
> >>> 
> >>> https://github.com/spack/spack/issues/21644 
> >>> <https://github.com/spack/spack/issues/21644>
> >>> 
> >>> Satish
> >>> 
> >>> 
> >>> On Sat, 13 Feb 2021, Jacob Faibussowitsch wrote:
> >>> 
> >>>> Hello All,
> >>>> 
> >>>> I’ve been getting these warnings for weeks, at first I figured it was 
> >>>> due to gfortran brew package not being updated for Big Sur, but since it 
> >>>> has persisted through a few gfortran brew updates I’m thinking it may be 
> >>>> petsc related. This is on clean build on master.
> >>>> 
> >>>> ld: warning: object file 
> >>>> (master-arch-darwin-c-debug/obj/sys/classes/bag/f2003-src/fsrc/bagenum.o)
> >>>>  was built for newer macOS version (11.2) than being linked (11.0)
> >>>> ld: warning: object file 
> >>>> (master-arch-darwin-c-debug/obj/sys/f90-src/fsrc/f90_fwrap.o) was built 
> >>>> for newer macOS version (11.2) than being linked (11.0)
> >>>> ld: warning: object file 
> >>>> (master-arch-darwin-c-debug/obj/sys/objects/f2003-src/fsrc/optionenum.o) 
> >>>> was built for newer macOS version (11.2) than being linked (11.0)
> >>>> ld: warning: object file 
> >>>> (master-arch-darwin-c-debug/obj/sys/fsrc/somefort.o) was built for newer 
> >>>> macOS version (11.2) than being linked (11.0)
> >>>> ld: warning: object file 
> >>>> (master-arch-darwin-c-debug/obj/sys/f90-mod/petscsysmod.o) was built for 
> >>>> newer macOS version (11.2) than being linked (11.0)
> >>>> 
> >>>> Best regards,
> >>>> 
> >>>> Jacob Faibussowitsch
> >>>> (Jacob Fai - booss - oh - vitch)
> >>>> Cell: (312) 694-3391
> >>>> 
> >> 
> > 
> 
> 

Reply via email to