Results 1 to 5 of 5

Thread: which compiler was a package built with?

  1. #1

    Default which compiler was a package built with?

    Specifically, I'd like to determine how to find out which version of what Fortran was used to build the fftw libraries on the build service repo.

    In general, how do I determine this on my own? Is there a command to run on the library to give this or is this info given in one of the yast repo fields?

    Thanks!

  2. #2
    Join Date
    Jun 2008
    Location
    Talcahuano,Chile
    Posts
    58

    Unhappy Re: which compiler was a package built with?

    AFAIK.You cant, unless the software gathers that information at compile time, and stores it somewhere.
    HTH.

  3. #3
    Join Date
    Jun 2008
    Location
    Oklahoma, US
    Posts
    822

    Default Re: which compiler was a package built with?

    On Tue, 05 Aug 2008 13:46:03 GMT
    Neophyte42 <Neophyte42@no-mx.forums.opensuse.org> wrote:

    >
    > Specifically, I'd like to determine how to find out which version of
    > what Fortran was used to build the fftw libraries on the build service
    > repo.
    >
    > In general, how do I determine this on my own? Is there a command to
    > run on the library to give this or is this info given in one of the
    > yast repo fields?
    >
    > Thanks!
    >
    >


    I know that the current fftw libraries are compiled using the current
    compiler version.

    Please excuse my asking, but what need prompts you to try to determine the
    compiler version involved with creating a library?

    I could imagine needing to know if an older compiler was used that had a
    serious bug which caused erroneous code to be produced... but that would be
    easily fixed by using a compiler which didn't have that bug... presumably,
    the most recent.

    You *could* infer a general timeframe for a library's creation by indexing
    the library dependencies it has. Older libraries which have not been
    recompiled would have correspondingly older references to glibc, libmath, etc.
    That's a lot of effort though... why not just recompile the library if it's
    problematic to have/use the older library.

    In the "old days", you could determine which compiler was used by examining
    chunks of code for known compilation blocks. Optimization ability has
    increased dramatically in the last few years, producing smaller, more compact
    code utilizing more intelligent usage of registers, stack and memory. It is
    no longer *trivially* possible to truly identify a compiler by its output.

    Just curious.

    ===================

    Oh, found it! I knew I'd seen it somewhere...

    for any ELF executable or library, the following command will display the
    contents of the .comment section in the file if it exists. This section
    contains information concerning the compiler used to create the file.

    readelf -p .comment filename

    Replace 'filename' as appropriate.

    Hope this helps.

    Loni

    --
    L R Nix
    lornix@lornix.com


  4. #4

    Default Re: which compiler was a package built with?

    Quote Originally Posted by lornix View Post
    On Tue, 05 Aug 2008 13:46:03 GMT
    Neophyte42 <Neophyte42@no-mx.forums.opensuse.org> wrote:

    >
    > Specifically, I'd like to determine how to find out which version of
    > what Fortran was used to build the fftw libraries on the build service
    > repo.
    >
    > In general, how do I determine this on my own? Is there a command to
    > run on the library to give this or is this info given in one of the
    > yast repo fields?
    >
    > Thanks!
    >
    >


    I know that the current fftw libraries are compiled using the current
    compiler version.

    Please excuse my asking, but what need prompts you to try to determine the
    compiler version involved with creating a library?

    I could imagine needing to know if an older compiler was used that had a
    serious bug which caused erroneous code to be produced... but that would be
    easily fixed by using a compiler which didn't have that bug... presumably,
    the most recent.

    You *could* infer a general timeframe for a library's creation by indexing
    the library dependencies it has. Older libraries which have not been
    recompiled would have correspondingly older references to glibc, libmath, etc.
    That's a lot of effort though... why not just recompile the library if it's
    problematic to have/use the older library.

    In the "old days", you could determine which compiler was used by examining
    chunks of code for known compilation blocks. Optimization ability has
    increased dramatically in the last few years, producing smaller, more compact
    code utilizing more intelligent usage of registers, stack and memory. It is
    no longer *trivially* possible to truly identify a compiler by its output.

    Just curious.

    ===================

    Oh, found it! I knew I'd seen it somewhere...

    for any ELF executable or library, the following command will display the
    contents of the .comment section in the file if it exists. This section
    contains information concerning the compiler used to create the file.

    readelf -p .comment filename

    Replace 'filename' as appropriate.

    Hope this helps.

    Loni

    --
    L R Nix
    lornix@lornix.com
    I wanted to know, specifically, whether fftw was built with g77 or gfortran (4.3) because I'm using codes that use Cray pointer extensions that are supported by gfortran but not g77.

    Further, it seems like gfortran 4.3 made some significant changes in its inherant library structure, as trying to use acml 4.1.0 (built with gfortran 4.2) gives a bunch of undefined references when trying to link (using gfortran 4.3) acml 4.1.0 to code compiled with gfortran 4.3.

    I've since just tried linking to the repo fftw and it seems to work, but was just wondering. Can it at least be taken for granted that something in the 11.0 repo was built with a compiler within the version span of the version shipped on cd - current repo version?

  5. #5
    Join Date
    Jun 2008
    Location
    Oklahoma, US
    Posts
    822

    Default Re: which compiler was a package built with?

    On Thu, 21 Aug 2008 19:46:01 GMT
    Neophyte42 <Neophyte42@no-mx.forums.opensuse.org> wrote:

    > I've since just tried linking to the repo fftw and it seems to work,
    > but was just wondering. Can it at least be taken for granted that
    > something in the 11.0 repo was built with a compiler within the version
    > span of the version shipped on cd - current repo version?
    >
    >


    Yes.


    Loni

    --
    L R Nix
    lornix@lornix.com
    Short, Sweet, to the point.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •