git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: ./configure fails to link test program due to missing dependencies

From
Paul Smith <paul@mad-scientist.net>
Date
Sep 25, 2024, 15:33 UTC
Message-ID
<5bd2f41c92a00f7799bc543e229b16fa7a473760.camel@mad-scientist.net>
In-Reply-To
<xmqqwmj1t0hp.fsf@gitster.g>
On Tue, 2024-09-24 at 10:39 -0700, Junio C Hamano wrote:
> Our dependance of heavy use of GNU-ism in our Makefiles makes an
> argument that make is the common denominator a fairly weak one, so
> the single one that eventually we use does not have to be "make",
> but it has to be something available widely and easy to learn.

Regardless of what one might imagine :), I am not advocating GNU Make as the perfect solution: it certainly has downsides and disadvantages.

But, it also has benefits that should not be ignored: for example, it's highly portable and it consists of a single binary that can be copied anywhere and run from anywhere with no other prerequisites or need for any setup or privileges. Also it's extremely flexible since it just runs shell scripts. That also makes portability much more "do it yourself" than other tools of course.

Meson is portable, but that's because it's written in Python: that means you have to have a Python interpreter already available (currently Python 3.7 or better), and the ability to add new modules to it. Admittedly this is not a super-high bar in 2024, but it's a non- trivial requirement if you're trying to start from scratch.

Things like cmake provide abstractions that can make building code simple, but it can be surprisingly difficult to get them to perform more advanced tricks like generating source files, linker map files, etc. It can be done, but it's... not always easy. And it has some weird behaviors (for example how cached variables are handled will certainly confuse you at first).

Previous: Junio C HamanoNext: Eli Schwartz
Message 28 of 31 in “./configure fails to link test program due to missing dependencies”
  1. Henrik HolstSep 14, 2024
  2. Junio C HamanoSep 15, 2024
  3. brian m. carlsonSep 15, 2024
  4. Patrick SteinhardtSep 16, 2024
  5. Phillip WoodSep 18, 2024
  6. Junio C HamanoSep 18, 2024
  7. Patrick SteinhardtSep 24, 2024
  8. Eli SchwartzSep 24, 2024
  9. Paul SmithSep 24, 2024
  10. Patrick SteinhardtSep 25, 2024
  11. Eli SchwartzSep 25, 2024
  12. Patrick SteinhardtSep 25, 2024
  13. Phillip WoodSep 26, 2024
  14. Patrick SteinhardtSep 26, 2024
  15. Phillip WoodSep 27, 2024
  16. Eli SchwartzSep 26, 2024
  17. phillip.wood123@gmail.comSep 27, 2024
  18. Junio C HamanoSep 26, 2024
  19. Johannes SchindelinSep 29, 2024
  20. Eli SchwartzSep 29, 2024
  21. Phillip WoodSep 30, 2024
  22. Eli SchwartzSep 30, 2024
  23. Junio C HamanoSep 30, 2024
  24. Johannes SchindelinSep 30, 2024
  25. Patrick SteinhardtSep 25, 2024
  26. Patrick SteinhardtSep 25, 2024
  27. Junio C HamanoSep 24, 2024
  28. Paul SmithSep 25, 2024
  29. Eli SchwartzSep 26, 2024
  30. Paul SmithSep 26, 2024
  31. Eli SchwartzSep 24, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.