New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Probe can't find /usr/include/SDL2/SDL_ttf.h #1281
Comments
|
Oh boy. Nothing like having 1.2 and 2.0 versions of things where the 2.0 has However, in this case the error was in what I pasted into my post above. For
|
Did you try to run 'make probe' to redo the probe explicitly? |
Can you check
|
I'm on Debian testing and I get:
|
I ran
|
It contains the following. Note that this is different from @MBilderbeek's Debian system above, but he doesn't mention whether he's running Debian 9 as I am or some other version of Debian.
|
I did a bit of debugging in
On my system
Sadly, I can't seem to to figure out where your unit tests are for |
Manuel is running Debian testing, which is an in-development version that will eventually be the basis for the next release. So it's significantly newer than Debian 9. Does There are no unit tests for the build system. If Meson can handle our cross builds, I'll migrate to that rather than continue to maintain our own system. But that's a long term solution; I'd also like to fix this issue in the current system. |
Ah, there's the problem:
I am thinking that the routine that runs |
The error should have been logged in the
|
Ah, yes it is logged there:
I was wondering about that, but because the probe continued on I had assumed that the failure was not fatal. Having now looked at the code, it seems to me that backtick expansions that fail during attempted execution at that point should be treated as fatal errors, because it means that something further up the chain got something wrong, or alternatively what's further up the chain is passing in commands that may fail and should be caught. (That is to say, I'm still not clear on whether there should have been a test for freetype2's dev files being present or whether it's acceptable to make this attempted execution of |
Ideally, we wouldn't need the FreeType compile flags at all, since FreeType is an implementation dependency of SDL2_ttf. But we do need the link flags when linking statically and the probe system does not separate implementation dependencies from interface dependencies, where we do need the compile flags (like SDL2_ttf needing SDL2's headers). But as I wrote earlier, I'd rather adopt an existing build system (Meson being the prime candidate) than redesign our custom one. Anyway, does openMSX build on your machine now? If so, we can close this ticket. |
Well, it will probably build if I install |
Normally I'd agree with you, but since it's likely the build system is going to be replaced soon, I don't really want to spend time on it now. |
I just hit this exact same error. Huge thanks to @0cjs for managing to research the cause. Since this is over a year old now, maybe its worth taking the time to add libfreetype6-dev to hard dependencies? |
@mthuurne Is there something simple we can do? E.g. detect this error and make a special warning for it? |
On
5506d39a2
, the current head ofmaster
as I write this,configure
on my Debian 9 system fails to find only one library,SDL2_ttf
. The relevant lines inprobe.log
appear to be:I have the header file, as installed by the Debian
libsdl-ttf2.0-dev
package, but it's in/usr/include/SDL/SDL_ttf.h
.My feeling is that the build system should be able automatically to find this, but I'm open to workarounds as well. I didn't notice any obvious documentation (in the top-level dir or the
doc/
subdir) on how to configure the build to add additional include paths.The text was updated successfully, but these errors were encountered: