How to find all the files that use a particular header in a specified directory on Linux?












-1















I have huge directory with makefiles, .c, .h .cpp etc. The final output (binary) is built using make.



To do that I have to find and investigate the source files that use <aio.h> and <execinfo.h> headers. So how do I find the files that use #include <aio.h> and #include <execinfo.h>










share|improve this question




















  • 2





    Grep or a grep-like.

    – Dave S
    Jan 2 at 22:11






  • 2





    If you need to auto-generate build dependencies you should probably have a look at this.

    – G.M.
    Jan 2 at 22:22











  • Sounds like you're looking for mkdep

    – Barmar
    Jan 2 at 23:20











  • Possible duplicate of Identify which file has included some particular header file

    – jww
    Jan 4 at 3:34


















-1















I have huge directory with makefiles, .c, .h .cpp etc. The final output (binary) is built using make.



To do that I have to find and investigate the source files that use <aio.h> and <execinfo.h> headers. So how do I find the files that use #include <aio.h> and #include <execinfo.h>










share|improve this question




















  • 2





    Grep or a grep-like.

    – Dave S
    Jan 2 at 22:11






  • 2





    If you need to auto-generate build dependencies you should probably have a look at this.

    – G.M.
    Jan 2 at 22:22











  • Sounds like you're looking for mkdep

    – Barmar
    Jan 2 at 23:20











  • Possible duplicate of Identify which file has included some particular header file

    – jww
    Jan 4 at 3:34
















-1












-1








-1








I have huge directory with makefiles, .c, .h .cpp etc. The final output (binary) is built using make.



To do that I have to find and investigate the source files that use <aio.h> and <execinfo.h> headers. So how do I find the files that use #include <aio.h> and #include <execinfo.h>










share|improve this question
















I have huge directory with makefiles, .c, .h .cpp etc. The final output (binary) is built using make.



To do that I have to find and investigate the source files that use <aio.h> and <execinfo.h> headers. So how do I find the files that use #include <aio.h> and #include <execinfo.h>







linux makefile header






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 3 at 10:08









Renaud Pacalet

9,66321731




9,66321731










asked Jan 2 at 22:08









MikeMike

326




326








  • 2





    Grep or a grep-like.

    – Dave S
    Jan 2 at 22:11






  • 2





    If you need to auto-generate build dependencies you should probably have a look at this.

    – G.M.
    Jan 2 at 22:22











  • Sounds like you're looking for mkdep

    – Barmar
    Jan 2 at 23:20











  • Possible duplicate of Identify which file has included some particular header file

    – jww
    Jan 4 at 3:34
















  • 2





    Grep or a grep-like.

    – Dave S
    Jan 2 at 22:11






  • 2





    If you need to auto-generate build dependencies you should probably have a look at this.

    – G.M.
    Jan 2 at 22:22











  • Sounds like you're looking for mkdep

    – Barmar
    Jan 2 at 23:20











  • Possible duplicate of Identify which file has included some particular header file

    – jww
    Jan 4 at 3:34










2




2





Grep or a grep-like.

– Dave S
Jan 2 at 22:11





Grep or a grep-like.

– Dave S
Jan 2 at 22:11




2




2





If you need to auto-generate build dependencies you should probably have a look at this.

– G.M.
Jan 2 at 22:22





If you need to auto-generate build dependencies you should probably have a look at this.

– G.M.
Jan 2 at 22:22













Sounds like you're looking for mkdep

– Barmar
Jan 2 at 23:20





Sounds like you're looking for mkdep

– Barmar
Jan 2 at 23:20













Possible duplicate of Identify which file has included some particular header file

– jww
Jan 4 at 3:34







Possible duplicate of Identify which file has included some particular header file

– jww
Jan 4 at 3:34














2 Answers
2






active

oldest

votes


















0














For browsing big code, cscope or ctags is used. Both needs to generate database. For cscope it can be done by command cscope -b-q -k and later cscope-d will give console menu for search options. Find or grep will be slow for browsing of big code.






share|improve this answer































    0














    find . -name '*.c (or*.h)' -exec grep "thing_to_Search_for" '{}' ; -print


    This command helped me achieve the results I needed.






    share|improve this answer
























      Your Answer






      StackExchange.ifUsing("editor", function () {
      StackExchange.using("externalEditor", function () {
      StackExchange.using("snippets", function () {
      StackExchange.snippets.init();
      });
      });
      }, "code-snippets");

      StackExchange.ready(function() {
      var channelOptions = {
      tags: "".split(" "),
      id: "1"
      };
      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',
      autoActivateHeartbeat: false,
      convertImagesToLinks: true,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: 10,
      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%2fstackoverflow.com%2fquestions%2f54013819%2fhow-to-find-all-the-files-that-use-a-particular-header-in-a-specified-directory%23new-answer', 'question_page');
      }
      );

      Post as a guest















      Required, but never shown

























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      0














      For browsing big code, cscope or ctags is used. Both needs to generate database. For cscope it can be done by command cscope -b-q -k and later cscope-d will give console menu for search options. Find or grep will be slow for browsing of big code.






      share|improve this answer




























        0














        For browsing big code, cscope or ctags is used. Both needs to generate database. For cscope it can be done by command cscope -b-q -k and later cscope-d will give console menu for search options. Find or grep will be slow for browsing of big code.






        share|improve this answer


























          0












          0








          0







          For browsing big code, cscope or ctags is used. Both needs to generate database. For cscope it can be done by command cscope -b-q -k and later cscope-d will give console menu for search options. Find or grep will be slow for browsing of big code.






          share|improve this answer













          For browsing big code, cscope or ctags is used. Both needs to generate database. For cscope it can be done by command cscope -b-q -k and later cscope-d will give console menu for search options. Find or grep will be slow for browsing of big code.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Jan 3 at 3:16









          anandanand

          1377




          1377

























              0














              find . -name '*.c (or*.h)' -exec grep "thing_to_Search_for" '{}' ; -print


              This command helped me achieve the results I needed.






              share|improve this answer




























                0














                find . -name '*.c (or*.h)' -exec grep "thing_to_Search_for" '{}' ; -print


                This command helped me achieve the results I needed.






                share|improve this answer


























                  0












                  0








                  0







                  find . -name '*.c (or*.h)' -exec grep "thing_to_Search_for" '{}' ; -print


                  This command helped me achieve the results I needed.






                  share|improve this answer













                  find . -name '*.c (or*.h)' -exec grep "thing_to_Search_for" '{}' ; -print


                  This command helped me achieve the results I needed.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Jan 25 at 2:17









                  MikeMike

                  326




                  326






























                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to Stack Overflow!


                      • 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%2fstackoverflow.com%2fquestions%2f54013819%2fhow-to-find-all-the-files-that-use-a-particular-header-in-a-specified-directory%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

                      MongoDB - Not Authorized To Execute Command

                      in spring boot 2.1 many test slices are not allowed anymore due to multiple @BootstrapWith

                      How to fix TextFormField cause rebuild widget in Flutter