[CMake] How to find fortran library
Javier Gonzalez
javierggt at yahoo.com
Thu Dec 4 03:15:02 EST 2008
Maik Beckmann wrote:
> Am Mittwoch, 3. Dezember 2008 schrieb Javier Gonzalez:
>
>> Hi all,
>>
>> I have a project that links to another project built with Fortran. My
>> own project is a C++ project and I usually need to link against a
>> fortran library of some sort to use the first one. I use gcc, so it
>> usually is libgfortran or libg2c.
>>
>> Now my question is: if I enable Fortran, will there be a variable that
>> tells me the location of the library I need to link to?
>>
>
> No. The compiler frontend (gfortran, g77, ...) makes the decision which
> system and compiler libraries have to be linked in.
>
> If you or cmake link an fortran executable with
> g77 -o myapp a.o b.o ..
> libg2c will be linked in by g77. When doing
> g77 -o myapp a.o b.o ..
> libgfortran will be linked in by gfortran.
>
> The same is true for g++, which links in libstdc++ by default.
>
>
>> What I do at the moment is that I guess which library I need to link to
>> based on the Fortran compiler's name and, since I use gcc, try to find
>> it in the path given by 'gcc -print-search-dirs'. Is this the right way?
>> I would expect that cmake defines a variable with this information
>> somewhere.
>>
>
> This is the right way. Maybe an effort to write cmake module which handles
> this task is worthy.
>
> Best,
> -- Maik
>
>
> _______________________________________________
> CMake mailing list
> CMake at cmake.org
> http://www.cmake.org/mailman/listinfo/cmake
>
>
I see.
Later I saw Bill's message about the new release. One of the changes in
2.6.3 RC5 is:
- Add FortranCInterface.cmake module to discover Fortran/C interfaces
I wonder if that is precisely what I was looking for so I will check it out.
thanks,
Javier
More information about the CMake
mailing list