[ET Trac] [Einstein Toolkit] #1769: Deal with Fortran module files in standard C include paths (where they don't belong, but might have been placed by the system) (was: External libraries: moving towards multiarch library directory structure)

Einstein Toolkit trac-noreply at einsteintoolkit.org
Mon May 9 11:34:32 CDT 2016


#1769: Deal with Fortran module files in standard C include paths (where they
don't belong, but might have been placed by the system)
------------------------------------+---------------------------------------
  Reporter:  bmundim                |       Owner:                                  
      Type:  defect                 |      Status:  reopened                        
  Priority:  major                  |   Milestone:  ET_2016_11                      
 Component:  EinsteinToolkit thorn  |     Version:  development version             
Resolution:                         |    Keywords:  ExternalLibraries HDF5 Multiarch
------------------------------------+---------------------------------------
Changes (by knarf):

  * milestone:  ET_2016_05 => ET_2016_11


Old description:

> Several Linux distributions have already started to move their libraries
> to a new directory structure that reflects the target architecture and
> allows the installation of packages from multiple architectures in the
> same system. The following links provide more details of this change:
>
> {{{
> https://wiki.debian.org/Multiarch/TheCaseForMultiarch
> https://wiki.ubuntu.com/MultiarchSpec
> }}}
>
> This change potentially affects several of external library scripts
> shipped with ET. For example the HDF5/src/detect.sh script is not able to
> detect the hdf5 libraries installed in the directory /usr/lib/x86_64
> -linux-gnu for Ubuntu 14.04.2 LTS.
>
> I have attached a simple patch to remedy this issue and open a discussion
> on the best way to proceed here. This patch does depend on the
> availability of gcc on the system. It currently works fine for me, but we
> might need a better solution for systems without gcc.

New description:

 Note: the description changed, as the ticket evolved. The original
 description can be found below.

 New description:
 ----------------

 Only as short summary: Some systems install Fortran module files into
 standard paths for C include files. In order to find them, these paths
 need to be given to the Fortran compiler using the -I flag. They are not
 searched by default (by some compilers), since these paths, while C
 standard include paths, are not Fortran standard include paths. On the
 other hand, adding this -I option to all compilations in Cactus would
 interfere with C/C++, as these directories should not be added in that
 case.

 One possible solution, not implemented right now, might be to use the
 relatively new INC_DIRS_F variable in the detect script.

 Original description:
 ---------------------

 Several Linux distributions have already started to move their libraries
 to a new directory structure that reflects the target architecture and
 allows the installation of packages from multiple architectures in the
 same system. The following links provide more details of this change:

 {{{
 https://wiki.debian.org/Multiarch/TheCaseForMultiarch
 https://wiki.ubuntu.com/MultiarchSpec
 }}}

 This change potentially affects several of external library scripts
 shipped with ET. For example the HDF5/src/detect.sh script is not able to
 detect the hdf5 libraries installed in the directory /usr/lib/x86_64
 -linux-gnu for Ubuntu 14.04.2 LTS.

 I have attached a simple patch to remedy this issue and open a discussion
 on the best way to proceed here. This patch does depend on the
 availability of gcc on the system. It currently works fine for me, but we
 might need a better solution for systems without gcc.

--

-- 
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1769#comment:37>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit


More information about the Trac mailing list