[mythtv] Compiler issue on github runner for Fixes/32 macOS 11/12
Scott Theisen
scott.the.elm at gmail.com
Thu Nov 24 19:18:53 UTC 2022
On 11/24/22 06:46, John Hoyt wrote:
>
>
> On Wed, Nov 23, 2022 at 7:18 PM Scott Theisen
> <scott.the.elm at gmail.com> wrote:
>
> On 11/23/22 18:37, John Hoyt wrote:
>> On Wed, Nov 23, 2022 at 6:28 PM John Hoyt <john.hoyt at gmail.com>
>> wrote:
>>
>> Hi Scott, thanks for taking a look. I've worked up a patch
>> file to resolve, but it sounds like getting configure working
>> correctly is a better solution (happy to post the patch file).
>>
>> Without the outputs from configure, particularly the log
>> file config.ep, I can't say for certain if those lines
>> are the problem.
>>
>>
>> Configure output: https://pastebin.com/gG8E1Fbg
>> config.ep: https://pastebin.com/b6Tk5M4Q
>>
>>
>
> from config.ep line 5736:
> ```
> dyld[67989]: Library not loaded: '@PREFIX@/lib/libhdhomerun.dylib'
> Referenced from:
> '/private/var/folders/4c/__l40lp140324rnbz1m2jkgh0000gn/T/ffconf.xBPEc1aO/test'
> Reason: tried: '/usr/local/lib/libhdhomerun.dylib' (no such file),
> '/usr/lib/libhdhomerun.dylib' (no such file)
> ```
>
> That looks suspicious to me. Would that prevent the test from
> executing?
>
>
> That was the culprit. It appears that configure pretty much stopped
> running at this point. Uninstalling hdhome seems to have allowed
> configure to complete successfully.
>
> Also, a fix for hdhomerun was pushed to macports last night (Thank you
> Craig!!!!). It appears that everything now gets through configure
> cleanly. Sorry to send you down the weeds of a package management issue.
Our GitHub Actions use Homebrew, so if the root cause is a package
management issue, that would be why MythTV's Actions work.
> The resultant config.h files from our configure and FFmpeg's would
> be useful to compare.
>
>
> mythtv's config.h is here: https://pastebin.com/xavF0smp
```
#define HAVE_LRINT 0
...
#define HAVE_ROUND 0
```
If this was from before uninstalling libhdhomerun, it is as I expected,
and all of the other math functions are defined 1.
> ffmpeg'sconfig.h is here: https://pastebin.com/XprwzBbw
> <https://pastebin.com/XprwzBbw>
"This paste has been deemed potentially harmful."
I assume FFmpeg's config.h defines HAVE_LRINT and HAVE_ROUND to 1, based
on the compile errors.
> I would prefer to fix configure, rather than hack around the error.
>
> Were the HAVE_LRINTF changes necessary? I don't think they should be.
>
> I think a better solution is to remove the referenced configure
> lines and see if that works. My reasoning is the following:
>
> 1. `git grep -nE "math.h" -- :^*/FFmpeg/** :^platform/**` We use
> <cmath> not <math.h>, except in external/libexiv2.
> 2. We never use lrint() `git grep -nE lrint -- :^*/FFmpeg/**`
> only lrintf().
> * Although, we do use round(), `git grep -nE
> "[^A-Za-z]round\(" -- :^*/FFmpeg/** :^*/html/**`.
> 3. We are using C++17, these functions are from C99/C++11.
>
> Happy to try this but also believe this is probably overcome by the
> hdhomerun fix.
>
If the updated libhdhomerun package fixes this, you don't need to test
the configure change.
> Thanks again for the help!
No problem.
Regards,
Scott
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mythtv.org/pipermail/mythtv-dev/attachments/20221124/5e086427/attachment.htm>
More information about the mythtv-dev
mailing list