Understanding the gcc library search path

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
0
down vote

favorite
1












I look at ld.so.conf, it reads:



include ld.so.conf.d/*.conf


OK, so I go to the include and see these files:



bind99-x86_64.conf kernel-4.16.11-100.fc26.x86_64.conf
kernel-4.11.8-300.fc26.x86_64.conf libiscsi-x86_64.conf


Now two of those files are place holders, the other two list about five libs between them.



Yet ldconfig -v will list several pages of libs. Obviously there are default lib path assignments inside my fedora that specify these search paths not in ld.co.conf. For example, /usr/lib64 must be set somewhere, I cannot trace it via ld.so.conf.



I could not identify any lib path environmental variable that sets the internal default lib path.










share|improve this question























  • the /etc/ld.so.conf* files only contain directories that will be searched for libraries by ldconfig(8) when building the ld.so.cache file. They're not used by either gcc, ld or the dynamic linker ld.so(8) -- but the latter will use the ld.so.cache created by ldconfig.
    – mosvy
    Nov 27 at 17:22















up vote
0
down vote

favorite
1












I look at ld.so.conf, it reads:



include ld.so.conf.d/*.conf


OK, so I go to the include and see these files:



bind99-x86_64.conf kernel-4.16.11-100.fc26.x86_64.conf
kernel-4.11.8-300.fc26.x86_64.conf libiscsi-x86_64.conf


Now two of those files are place holders, the other two list about five libs between them.



Yet ldconfig -v will list several pages of libs. Obviously there are default lib path assignments inside my fedora that specify these search paths not in ld.co.conf. For example, /usr/lib64 must be set somewhere, I cannot trace it via ld.so.conf.



I could not identify any lib path environmental variable that sets the internal default lib path.










share|improve this question























  • the /etc/ld.so.conf* files only contain directories that will be searched for libraries by ldconfig(8) when building the ld.so.cache file. They're not used by either gcc, ld or the dynamic linker ld.so(8) -- but the latter will use the ld.so.cache created by ldconfig.
    – mosvy
    Nov 27 at 17:22













up vote
0
down vote

favorite
1









up vote
0
down vote

favorite
1






1





I look at ld.so.conf, it reads:



include ld.so.conf.d/*.conf


OK, so I go to the include and see these files:



bind99-x86_64.conf kernel-4.16.11-100.fc26.x86_64.conf
kernel-4.11.8-300.fc26.x86_64.conf libiscsi-x86_64.conf


Now two of those files are place holders, the other two list about five libs between them.



Yet ldconfig -v will list several pages of libs. Obviously there are default lib path assignments inside my fedora that specify these search paths not in ld.co.conf. For example, /usr/lib64 must be set somewhere, I cannot trace it via ld.so.conf.



I could not identify any lib path environmental variable that sets the internal default lib path.










share|improve this question















I look at ld.so.conf, it reads:



include ld.so.conf.d/*.conf


OK, so I go to the include and see these files:



bind99-x86_64.conf kernel-4.16.11-100.fc26.x86_64.conf
kernel-4.11.8-300.fc26.x86_64.conf libiscsi-x86_64.conf


Now two of those files are place holders, the other two list about five libs between them.



Yet ldconfig -v will list several pages of libs. Obviously there are default lib path assignments inside my fedora that specify these search paths not in ld.co.conf. For example, /usr/lib64 must be set somewhere, I cannot trace it via ld.so.conf.



I could not identify any lib path environmental variable that sets the internal default lib path.







linux command-line fedora






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 27 at 19:29









Rui F Ribeiro

38.4k1477127




38.4k1477127










asked Nov 27 at 16:57









Matt Young

11




11











  • the /etc/ld.so.conf* files only contain directories that will be searched for libraries by ldconfig(8) when building the ld.so.cache file. They're not used by either gcc, ld or the dynamic linker ld.so(8) -- but the latter will use the ld.so.cache created by ldconfig.
    – mosvy
    Nov 27 at 17:22

















  • the /etc/ld.so.conf* files only contain directories that will be searched for libraries by ldconfig(8) when building the ld.so.cache file. They're not used by either gcc, ld or the dynamic linker ld.so(8) -- but the latter will use the ld.so.cache created by ldconfig.
    – mosvy
    Nov 27 at 17:22
















the /etc/ld.so.conf* files only contain directories that will be searched for libraries by ldconfig(8) when building the ld.so.cache file. They're not used by either gcc, ld or the dynamic linker ld.so(8) -- but the latter will use the ld.so.cache created by ldconfig.
– mosvy
Nov 27 at 17:22





the /etc/ld.so.conf* files only contain directories that will be searched for libraries by ldconfig(8) when building the ld.so.cache file. They're not used by either gcc, ld or the dynamic linker ld.so(8) -- but the latter will use the ld.so.cache created by ldconfig.
– mosvy
Nov 27 at 17:22











1 Answer
1






active

oldest

votes

















up vote
0
down vote













ldconfig looks at a few “trusted directories” by default, in addition to those explicitly listed in its configuration files. On Fedora on 64-bit x86, these are /lib, /lib64, and directories corresponding to hardware capabilities (typically, /lib/i686, /lib/sse2, /lib64/tls, and /lib/sse2).



Note that ldconfig only affects runtime behaviour; it doesn’t affect GCC.






share|improve this answer




















    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "106"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f484483%2funderstanding-the-gcc-library-search-path%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    0
    down vote













    ldconfig looks at a few “trusted directories” by default, in addition to those explicitly listed in its configuration files. On Fedora on 64-bit x86, these are /lib, /lib64, and directories corresponding to hardware capabilities (typically, /lib/i686, /lib/sse2, /lib64/tls, and /lib/sse2).



    Note that ldconfig only affects runtime behaviour; it doesn’t affect GCC.






    share|improve this answer
























      up vote
      0
      down vote













      ldconfig looks at a few “trusted directories” by default, in addition to those explicitly listed in its configuration files. On Fedora on 64-bit x86, these are /lib, /lib64, and directories corresponding to hardware capabilities (typically, /lib/i686, /lib/sse2, /lib64/tls, and /lib/sse2).



      Note that ldconfig only affects runtime behaviour; it doesn’t affect GCC.






      share|improve this answer






















        up vote
        0
        down vote










        up vote
        0
        down vote









        ldconfig looks at a few “trusted directories” by default, in addition to those explicitly listed in its configuration files. On Fedora on 64-bit x86, these are /lib, /lib64, and directories corresponding to hardware capabilities (typically, /lib/i686, /lib/sse2, /lib64/tls, and /lib/sse2).



        Note that ldconfig only affects runtime behaviour; it doesn’t affect GCC.






        share|improve this answer












        ldconfig looks at a few “trusted directories” by default, in addition to those explicitly listed in its configuration files. On Fedora on 64-bit x86, these are /lib, /lib64, and directories corresponding to hardware capabilities (typically, /lib/i686, /lib/sse2, /lib64/tls, and /lib/sse2).



        Note that ldconfig only affects runtime behaviour; it doesn’t affect GCC.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 27 at 17:24









        Stephen Kitt

        160k24357432




        160k24357432



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Unix & Linux Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f484483%2funderstanding-the-gcc-library-search-path%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown






            Popular posts from this blog

            How to check contact read email or not when send email to Individual?

            Bahrain

            Postfix configuration issue with fips on centos 7; mailgun relay