[Solved] Building Mythtv 31.x on Catalina

For discussion of topics specific to MythTV on OSX
User avatar
jhoyt
Senior
Posts: 143
Joined: Thu Aug 27, 2015 10:11 am
United States of America

[Solved] Building Mythtv 31.x on Catalina

Post by jhoyt »

So I've managed to fight through all of the configure and compile issues on Catalina using the 30.x instructions as a template. I managed to get mythfrontend.app built and packaged with only minor issues (e.g. making sure all frameworks are spelt correctly for a case sensitive file system).

The application opens, I can dig through my recordings and video library, but when I go to watch any videos, mythfrontend.app segfaults.

Any suggestion on what's causing it and where to fix the code / configuration?

Here's the beginning of the autogenerated problem report from the crash:

Code: Select all

Process:               mythfrontend [26663]
Path:                  /Users/USER/*/mythfrontend.app/Contents/MacOS/mythfrontend
Identifier:            com.yourcompany.mythfrontend
Version:               0
Code Type:             X86-64 (Native)
Parent Process:        zsh [81915]
Responsible:           Terminal [81912]
User ID:               502

Date/Time:             2020-04-11 15:02:49.825 -0400
OS Version:            Mac OS X 10.15.4 (19E287)
Report Version:        12
Anonymous UUID:        74D36EF2-DC32-44AD-A0F1-46B9A651C83D

Sleep/Wake UUID:       3C038811-4DAB-4B26-9AE1-69549A73AA91

Time Awake Since Boot: 140000 seconds
Time Since Wake:       2100 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       EXC_I386_GPFLT
Exception Note:        EXC_CORPSE_NOTIFY

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libdyld.dylib                 	0x00007fff6ca7d70a stack_not_16_byte_aligned_error + 0

Thread 1:: com.apple.CFSocket.private
0   libsystem_kernel.dylib        	0x00007fff6cbc80fe __select + 10
1   com.apple.CoreFoundation      	0x00007fff32b60e13 __CFSocketManager + 641
2   libsystem_pthread.dylib       	0x00007fff6cc83109 _pthread_start + 148
3   libsystem_pthread.dylib       	0x00007fff6cc7eb8b thread_start + 15

Thread 2:: LogForward
0   libsystem_kernel.dylib        	0x00007fff6cbc2882 __psynch_cvwait + 10
1   libsystem_pthread.dylib       	0x00007fff6cc83425 _pthread_cond_wait + 698
2   org.qt-project.QtCore         	0x000000010eed2b43 0x10eeb4000 + 125763
3   org.qt-project.QtCore         	0x000000010eed2949 0x10eeb4000 + 125257
4   org.qt-project.QtCore         	0x000000010eed28b4 QWaitCondition::wait(QMutex*, QDeadlineTimer) + 108
5   org.qt-project.QtCore         	0x000000010eed2813 QWaitCondition::wait(QMutex*, unsigned long) + 63
6   mythbase                      	0x000000010b562915 LogForwardThread::run() + 309
7   libsystem_pthread.dylib       	0x00007fff6cc83109 _pthread_start + 148
8   libsystem_pthread.dylib       	0x00007fff6cc7eb8b thread_start + 15

Thread 3:: Logger
0   libsystem_kernel.dylib        	0x00007fff6cbc2882 __psynch_cvwait + 10
1   libsystem_pthread.dylib       	0x00007fff6cc83425 _pthread_cond_wait + 698
2   org.qt-project.QtCore         	0x000000010eed2b43 0x10eeb4000 + 125763
3   org.qt-project.QtCore         	0x000000010eed2949 0x10eeb4000 + 125257
4   org.qt-project.QtCore         	0x000000010eed28b4 QWaitCondition::wait(QMutex*, QDeadlineTimer) + 108
5   org.qt-project.QtCore         	0x000000010eed2813 QWaitCondition::wait(QMutex*, unsigned long) + 63
6   mythbase                      	0x000000010b5525e9 LoggerThread::run() + 793
7   libsystem_pthread.dylib       	0x00007fff6cc83109 _pthread_start + 148
8   libsystem_pthread.dylib       	0x00007fff6cc7eb8b thread_start + 15

Thread 4:: com.apple.NSEventThread
0   libsystem_kernel.dylib        	0x00007fff6cbbfdfa mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff6cbc0170 mach_msg + 60
2   com.apple.CoreFoundation      	0x00007fff32b380b5 __CFRunLoopServiceMachPort + 247
3   com.apple.CoreFoundation      	0x00007fff32b36b82 __CFRunLoopRun + 1319
4   com.apple.CoreFoundation      	0x00007fff32b35ffe CFRunLoopRunSpecific + 462
5   com.apple.AppKit              	0x00007fff2ff565b4 _NSEventThread + 132
6   libsystem_pthread.dylib       	0x00007fff6cc83109 _pthread_start + 148
7   libsystem_pthread.dylib       	0x00007fff6cc7eb8b thread_start + 15

Thread 5:: QDBusConnectionManager
0   libsystem_kernel.dylib        	0x00007fff6cbc63d6 poll + 10
1   org.qt-project.QtCore         	0x000000010f01cf4b qt_safe_poll(pollfd*, unsigned int, timespec const*) + 187
2   org.qt-project.QtCore         	0x000000010f01dc47 QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 357
3   org.qt-project.QtCore         	0x000000010efe4a57 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 267
4   org.qt-project.QtCore         	0x000000010eeccdec QThread::exec() + 86
5   org.qt-project.QtDBus         	0x000000010eb94474 0x10eb91000 + 13428
6   org.qt-project.QtCore         	0x000000010eecd964 0x10eeb4000 + 104804
7   libsystem_pthread.dylib       	0x00007fff6cc83109 _pthread_start + 148
8   libsystem_pthread.dylib       	0x00007fff6cc7eb8b thread_start + 15

Thread 6:: SSDP
0   libsystem_kernel.dylib        	0x00007fff6cbc80fe __select + 10
1   mythupnp                      	0x000000010b20affe SSDP::run() + 1006
2   libsystem_pthread.dylib       	0x00007fff6cc83109 _pthread_start + 148
3   libsystem_pthread.dylib       	0x00007fff6cc7eb8b thread_start + 15

Thread 7:: TaskQueue
0   libsystem_kernel.dylib        	0x00007fff6cbc2756 __semwait_signal + 10
1   libsystem_c.dylib             	0x00007fff6cb45eea nanosleep + 196
2   libc++.1.dylib                	0x00007fff69d896da std::__1::this_thread::sleep_for(std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l> > const&) + 73
3   com.yourcompany.mythfrontend  	0x0000000107971d8d void std::__1::this_thread::sleep_for<long long, std::__1::ratio<1l, 1000l> >(std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000l> > const&) + 205
4   libsystem_pthread.dylib       	0x00007fff6cc83109 _pthread_start + 148
5   libsystem_pthread.dylib       	0x00007fff6cc7eb8b thread_start + 15

Thread 8:: PT0
0   libsystem_kernel.dylib        	0x00007fff6cbc2882 __psynch_cvwait + 10
1   libsystem_pthread.dylib       	0x00007fff6cc83425 _pthread_cond_wait + 698
2   org.qt-project.QtCore         	0x000000010eed2b43 0x10eeb4000 + 125763
3   org.qt-project.QtCore         	0x000000010eed2949 0x10eeb4000 + 125257
4   org.qt-project.QtCore         	0x000000010eed28b4 QWaitCondition::wait(QMutex*, QDeadlineTimer) + 108
5   org.qt-project.QtCore         	0x000000010eed2813 QWaitCondition::wait(QMutex*, unsigned long) + 63
6   mythbase                      	0x000000010b4409ea MPoolThread::run() + 186
7   libsystem_pthread.dylib       	0x00007fff6cc83109 _pthread_start + 148
8   libsystem_pthread.dylib       	0x00007fff6cc7eb8b thread_start + 15

Thread 9:: PT1
0   libsystem_kernel.dylib        	0x00007fff6cbc2882 __psynch_cvwait + 10
1   libsystem_pthread.dylib       	0x00007fff6cc83425 _pthread_cond_wait + 698
2   org.qt-project.QtCore         	0x000000010eed2b43 0x10eeb4000 + 125763
3   org.qt-project.QtCore         	0x000000010eed2949 0x10eeb4000 + 125257
4   org.qt-project.QtCore         	0x000000010eed28b4 QWaitCondition::wait(QMutex*, QDeadlineTimer) + 108
5   org.qt-project.QtCore         	0x000000010eed2813 QWaitCondition::wait(QMutex*, unsigned long) + 63
6   mythbase                      	0x000000010b4409ea MPoolThread::run() + 186
7   libsystem_pthread.dylib       	0x00007fff6cc83109 _pthread_start + 148
8   libsystem_pthread.dylib       	0x00007fff6cc7eb8b thread_start + 15
Last edited by jhoyt on Sat May 09, 2020 10:14 am, edited 2 times in total.
User avatar
jhoyt
Senior
Posts: 143
Joined: Thu Aug 27, 2015 10:11 am
United States of America

Re: Building Mythtv 31.x on Catalina

Post by jhoyt »

:: 5/15 added libX11 liberation-fonts and dejavu-fonts
:: 5/11-2 update configure for run-prefix and add lines to copy i18n, fonts, and themes into the app
:: 5/11 remove fftw-short and fftw-long from required ports
:: 5/9 Minor updates from successful build and Info.plist updates
:: 5/8 Added some missing ports and python selection commands
:: 4/17 Updated to fix issues brought up in later comments.::
:: 4/17 - 2 Added commands to add ports for python/perl bindings::
:: 4/18 - More updates to align with myth buildbot::

Here are the build instructions I'm following to get v31 compiled (based on the v30 thread in this forum). Unfortunately, I still can't get past the playback segfault.

Code: Select all

# Step 1, install macports

# Specify mythtv version to pull from git
MYTHTV_VERS="fixes/31"
REPO_DIR=~/mythtv-31
SRC_DIR=$REPO_DIR/mythtv/mythtv
THEME_DIR=$REPO_DIR/mythtv/myththemes
PKG_CONFIG_SYSTEM_INCLUDE_PATH=/opt/local/include
INSTALL_DIR=$REPO_DIR/31-osx-64bit/build/install
export PATH=/opt/local/lib/mysql57/bin:$PATH 

# setup the working directory structure
REPO_DIR=~/mythtv-31
mkdir -p $REPO_DIR
# create the temporary install directory 
mkdir -p $REPO_DIR/31-osx-64bit/build/install

# setup mythtv source from git
cd $REPO_DIR
git clone -b $MYTHTV_VERS git://github.com/MythTV/mythtv.git
cd $REPO_DIR/mythtv
git clone -b https://github.com/MythTV/packaging.git

# add necessary packages from macports
sudo port install pkgconfig mysql57 qt5-qtwebkit qt5-qtscript qt5 \
qt5-mysql-plugin nasm libsamplerate taglib libbluray exiv2 \
lame x264 x265 openssl libxml2 gsed ccache fftw-3 apache-ant libvpx \
libX11 liberation-fonts dejavu-fonts
sudo port load dbus

# ports for python and perl bindings
sudo port install py38-pymysql py38-lxml py-future py-requests py-simplejson \
p5-dbi p5-dbd-mysql p5-http-request-ascgi p5-libwww-perl p5-net-upnp \
p5.28-xml-simple p5-io-socket-inet6
sudo port select --set python python38
sudo port select --set python3 python38

# There's no python 3 MySQLdb port yet,so install via pip
sudo port install py38-pip
sudo port select --set pip pip38
sudo port select --set pip3 pip38
sudo pip install mysqlclient

# comment out filters in packaging (...I think they've been removed???)
# ...I don't have an automated way to do this yet, so comment out the following line:
# [$REPO_DIR/mythtv/packaging/OSX/build/makebundleDOTsh]
#73: echo "Installing filters"
#74: make -C ../../filters           INSTALL_ROOT=`pwd`      install >/dev/null

# create the install temporary directory 
mkdir -p $INSTALL_DIR

# configure mythfrontend
cd $SRC_DIR
./configure --prefix=$INSTALL_DIR \
			--runprefix='../Resources' \
			--enable-mac-bundle \
			--qmake=/opt/local/libexec/qt5/bin/qmake \
			--cc=clang \
			--cxx=clang++ \
			--extra-cxxflags=-I/opt/local/include \
			--extra-ldflags=-L/opt/local/lib \
			--disable-backend \
			--disable-distcc \
			--disable-firewire \
			--disable-libmp3lame \
			--disable-libxvid \
			--enable-libx264 \
			--enable-libx265 \
			--enable-libvpx \
			--enable-bdjava \
	 		--python=/opt/local/bin/python3.8
	 		
#compile mythfrontend
make
# need to do a make install or macdeployqt will not copy everything in and makebundle.sh will fail.
make install 

# Package up the executable
cd $SRC_DIR/programs/mythfrontend
/opt/local/libexec/qt5/bin/macdeployqt mythfrontend.app
$REPO_DIR/mythtv/packaging/OSX/build/makebundle.sh mythfrontend.app
cp -r $INSTALL_DIR/share/mythtv/i18n mythfrontend.app/Contents/Resources/share/mythtv/
cp -r $INSTALL_DIR/share/mythtv/fonts mythfrontend.app/Contents/Resources/share/mythtv/
cp -r $INSTALL_DIR/share/mythtv/themes mythfrontend.app/Contents/Resources/share/mythtv/
cp mythfrontend.icns mythfrontend.app/Contents/Resources/application.icns
You'll also need to update mythfrontend.app/Contents/Info.plist. Mine looks like:

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleExecutable</key>
	<string>mythfrontend</string>
	<key>CFBundleIconFile</key>
	<string>application.icns</string>
	<key>CFBundleIdentifier</key>
	<string>org.osx-bundler.mythfrontend</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>31</string>
	<key>CFBundleSignature</key>
	<string>osx-bundler</string>
	<key>NSAppleScriptEnabled</key>
	<string>NO</string>
	<key>CFBundleGetInfoString</key>
	<string></string>
	<key>CFBundleVersion</key>
	<string>1.0</string>
	<key>NSHumanReadableCopyright</key>
	<string>MythTV Team</string>
	<key>LSMinimumSystemVersion</key>
	<string>10.13</string>
	<key>NOTE</key>
	<string>This file was generated by Qt/QMake.</string>
	<key>NSPrincipalClass</key>
	<string>NSApplication</string>
	<key>NSSupportsAutomaticGraphicsSwitching</key>
	<true/>
	<key>ATSApplicationFontsPath</key>
	<string>share/mythtv/fonts</string>
</dict>
</plist>
Last edited by jhoyt on Fri May 15, 2020 4:07 pm, edited 14 times in total.
User avatar
pvr4me
Senior
Posts: 763
Joined: Fri Feb 07, 2014 7:25 pm
Location: near Toronto, Canada
Contact:
Canada

Re: Building Mythtv 31.x on Catalina

Post by pvr4me »

I haven't attempted a build of 31 yet, but some random observations:

1) nasm is now preferred over yasm. eg:
https://lists.gt.net/mythtv/commits/627 ... sm;#627574

2) Dependencies. Do you have qt5-mysql-plugin installed? I think it is needed for database access.

3) Re s/VideoToolBox/VideoToolbox/ fix. You should report this as a bug. Not many Mac systems are case sensitive but...some are.

4) Why do you run the configure command twice? Why not put all the args on one command line?

5) Why are you using clang-9.0? I think you should use the version of clang provided by Xcode.

6) The '--extra-cflags="-fno-stack-check" --extra-cxxflags="-fno-stack-check" ' is new to me. How did you determine this? What happens without?

7) Does '--disable-backend' actually do anything? Virtually all of the build time in Myth is in the libraries and the frontend and backend both use all the libs. I believe the build time related to mythbackend is trivial.

8) No perl or python bindings attempted. Virtually none of the standard scripts will work.

9) No plugins...but few people care.

Could you post the output from the configure command?

Craig
Formerly the MacPorts guy.
User avatar
pvr4me
Senior
Posts: 763
Joined: Fri Feb 07, 2014 7:25 pm
Location: near Toronto, Canada
Contact:
Canada

Re: Building Mythtv 31.x on Catalina

Post by pvr4me »

Also, you might trying running

otool -L $SRC_DIR/programs/mythfrontend

to see exactly what the frontend is linking against. You might be getting a system version of a lib rather than one you intended to get from MacPorts.

Craig
Formerly the MacPorts guy.
User avatar
jhoyt
Senior
Posts: 143
Joined: Thu Aug 27, 2015 10:11 am
United States of America

Re: Building Mythtv 31.x on Catalina

Post by jhoyt »

Craig thank you for responding!!!! Here are some responses:

1) nasm is now preferred over yasm. eg:
I gave yasm a go after getting the same segfault with nasm. I'll use nasm going forward and will update the previous entry to reflect the update.

2) Dependencies. Do you have qt5-mysql-plugin installed? I think it is needed for database access.
I do have it installed, I'll update the port call to include it.

3) Re s/VideoToolBox/VideoToolbox/ fix. You should report this as a bug. Not many Mac systems are case sensitive but...some are.
Will do. I was waiting until I got something working before reporting bugs.

4) Why do you run the configure command twice? Why not put all the args on one command line?
That was a copy / paste mistake from my scratchpad. The first configure was the valid one, the second I was messing around trying to see if anything worked. I'll fix the previous entry.

5) Why are you using clang-9.0? I think you should use the version of clang provided by Xcode.
I was, in the second configure, I was seeing if using the macports compiler would magically fix things. It didn't (will update the previous entry)...

6) The '--extra-cflags="-fno-stack-check" --extra-cxxflags="-fno-stack-check" ' is new to me. How did you determine this? What happens without?
I got these out of the ffmpeg trac. Basically compiling the latest ffmpeg causes similar "stack_not_16_byte_aligned_error" (trac.ffmpeg.org/ticket/8073). Given this and myth's use of ffmpeg code, I was hopeful for a fix. It didn't work...

7) Does '--disable-backend' actually do anything? Virtually all of the build time in Myth is in the libraries and the frontend and backend both use all the libs. I believe the build time related to mythbackend is trivial.
It is, but as I was building frontend only (have an Ubuntu based backend), I was trying to save the trivial amount of time.

8) No perl or python bindings attempted. Virtually none of the standard scripts will work.
Correct, I was just trying to get mythfrontend working before diving into any perl/python related issues.

9) No plugins...but few people care.
Correct, see previous response.

Could you post the output from the configure command?
Will do in another post.
User avatar
jhoyt
Senior
Posts: 143
Joined: Thu Aug 27, 2015 10:11 am
United States of America

Re: Building Mythtv 31.x on Catalina

Post by jhoyt »

Here's my output from configure

Code: Select all

./configure --enable-mac-bundle --qmake=/opt/local/libexec/qt5/bin/qmake --disable-backend --runprefix=../Resources --disable-lirc --disable-distcc

cc_default gcc , 
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/4.2.1
Firewire being disabled. FireWire SDK missing
WARNING: disabling Python bindings; missing MySQLdb
WARNING: disabling Python bindings; missing lxml
WARNING: disabling Python bindings; missing requests
WARNING: disabling Python bindings; missing simplejson
WARNING: disabling Python bindings; missing future
WARNING: disabling Perl bindings; missing DBI
WARNING: disabling Perl bindings; missing DBD::mysql
WARNING: disabling Perl bindings; missing HTTP::Request
WARNING: disabling Perl bindings; missing LWP::UserAgent
WARNING: disabling Perl bindings; missing Net::UPnP::QueryResponse
WARNING: disabling Perl bindings; missing Net::UPnP::ControlPoint
WARNING: disabling Perl bindings; missing IO::Socket::INET6
WARNING: disabling Perl bindings; missing XML::Simple
sed 's#@@PREFIX@@#/Users/jhoyt/mythtv-31/mythtv/mythtv/external/nv-codec-headers/install#' ffnvcodec.pc.in > ffnvcodec.pc
install -m 0755 -d '/Users/jhoyt/mythtv-31/mythtv/mythtv/external/nv-codec-headers/install/include/ffnvcodec'
install -m 0644 include/ffnvcodec/*.h '/Users/jhoyt/mythtv-31/mythtv/mythtv/external/nv-codec-headers/install/include/ffnvcodec'
install -m 0755 -d '/Users/jhoyt/mythtv-31/mythtv/mythtv/external/nv-codec-headers/install/lib/pkgconfig'
install -m 0644 ffnvcodec.pc '/Users/jhoyt/mythtv-31/mythtv/mythtv/external/nv-codec-headers/install/lib/pkgconfig'

#### FFmpeg CONFIGURATION ####
install prefix            /usr/local
source path               .
C compiler                gcc
C library                 
ARCH                      x86 (generic)
big-endian                no
runtime cpu detection     yes
standalone assembly       yes
x86 assembler             nasm
MMX enabled               yes
MMXEXT enabled            yes
3DNow! enabled            yes
3DNow! extended enabled   yes
SSE enabled               yes
SSSE3 enabled             yes
AESNI enabled             yes
AVX enabled               yes
AVX2 enabled              yes
AVX-512 enabled           yes
XOP enabled               yes
FMA3 enabled              yes
FMA4 enabled              yes
i686 features enabled     yes
CMOV is fast              yes
EBX available             yes
EBP available             yes
debug symbols             yes
strip symbols             yes
optimize for size         no
optimizations             yes
static                    no
shared                    yes
postprocessing support    yes
network support           yes
threading support         pthreads
safe bitstream reader     yes
texi2html enabled         no
perl enabled              yes
pod2man enabled           yes
makeinfo enabled          yes
makeinfo supports HTML    yes

External libraries:
appkit                  bzlib                   gnutls                  libbluray               libxcb_shape            libxcb_xfixes           lzma
avfoundation            coreimage               libass                  libxcb                  libxcb_shm              libxml2                 zlib

External libraries providing hardware acceleration:
audiotoolbox            videotoolbox

Libraries:
avcodec                 avfilter                avutil                  swresample
avdevice                avformat                postproc                swscale

Programs:
ffmpeg                  ffprobe

Enabled decoders:
aac                     aptx                    dxtory                  interplay_dpcm          paf_video               ralf                    utvideo
aac_at                  aptx_hd                 dxv                     interplay_video         pam                     rasc                    v210
aac_fixed               arbc                    eac3                    jacosub                 pbm                     rawvideo                v210x
aac_latm                ass                     eac3_at                 jpeg2000                pcm_alaw                realtext                v308
aasc                    asv1                    eacmv                   jpegls                  pcm_alaw_at             rl2                     v408
ac3                     asv2                    eamad                   jv                      pcm_bluray              roq                     v410
ac3_at                  atrac1                  eatgq                   kgv1                    pcm_dvd                 roq_dpcm                vb
ac3_fixed               atrac3                  eatgv                   kmvc                    pcm_f16le               rpza                    vble
adpcm_4xm               atrac3al                eatqi                   lagarith                pcm_f24le               rscc                    vc1
adpcm_adx               atrac3p                 eightbps                loco                    pcm_f32be               rv10                    vc1image
adpcm_afc               atrac3pal               eightsvx_exp            lscr                    pcm_f32le               rv20                    vcr1
adpcm_agm               atrac9                  eightsvx_fib            m101                    pcm_f64be               rv30                    vmdaudio
adpcm_aica              aura                    escape124               mace3                   pcm_f64le               rv40                    vmdvideo
adpcm_ct                aura2                   escape130               mace6                   pcm_lxf                 s302m                   vmnc
adpcm_dtk               avrn                    evrc                    magicyuv                pcm_mulaw               sami                    vorbis
adpcm_ea                avrp                    exr                     mdec                    pcm_mulaw_at            sanm                    vp3
adpcm_ea_maxis_xa       avs                     ffv1                    metasound               pcm_s16be               sbc                     vp4
adpcm_ea_r1             avui                    ffvhuff                 microdvd                pcm_s16be_planar        scpr                    vp5
adpcm_ea_r2             ayuv                    ffwavesynth             mimic                   pcm_s16le               screenpresso            vp6
adpcm_ea_r3             bethsoftvid             fic                     mjpeg                   pcm_s16le_planar        sdx2_dpcm               vp6a
adpcm_ea_xas            bfi                     fits                    mjpegb                  pcm_s24be               sgi                     vp6f
adpcm_g722              bink                    flac                    mlp                     pcm_s24daud             sgirle                  vp7
adpcm_g726              binkaudio_dct           flashsv                 mmvideo                 pcm_s24le               sheervideo              vp8
adpcm_g726le            binkaudio_rdft          flashsv2                motionpixels            pcm_s24le_planar        shorten                 vp9
adpcm_ima_amv           bintext                 flic                    movtext                 pcm_s32be               sipr                    vplayer
adpcm_ima_apc           bitpacked               flv                     mp1                     pcm_s32le               smackaud                vqa
adpcm_ima_dat4          bmp                     fmvc                    mp1_at                  pcm_s32le_planar        smacker                 wavpack
adpcm_ima_dk3           bmv_audio               fourxm                  mp1float                pcm_s64be               smc                     wcmv
adpcm_ima_dk4           bmv_video               fraps                   mp2                     pcm_s64le               smvjpeg                 webp
adpcm_ima_ea_eacs       brender_pix             frwu                    mp2_at                  pcm_s8                  snow                    webvtt
adpcm_ima_ea_sead       c93                     g2m                     mp2float                pcm_s8_planar           sol_dpcm                wmalossless
adpcm_ima_iss           cavs                    g723_1                  mp3                     pcm_u16be               sonic                   wmapro
adpcm_ima_oki           ccaption                g729                    mp3_at                  pcm_u16le               sp5x                    wmav1
adpcm_ima_qt            cdgraphics              gdv                     mp3adu                  pcm_u24be               speedhq                 wmav2
adpcm_ima_qt_at         cdxl                    gif                     mp3adufloat             pcm_u24le               srgc                    wmavoice
adpcm_ima_rad           cfhd                    gremlin_dpcm            mp3float                pcm_u32be               srt                     wmv1
adpcm_ima_smjpeg        cinepak                 gsm                     mp3on4                  pcm_u32le               ssa                     wmv2
adpcm_ima_wav           clearvideo              gsm_ms                  mp3on4float             pcm_u8                  stl                     wmv3
adpcm_ima_ws            cljr                    gsm_ms_at               mpc7                    pcm_vidc                subrip                  wmv3image
adpcm_ms                cllc                    h261                    mpc8                    pcm_zork                subviewer               wnv1
adpcm_mtaf              comfortnoise            h263                    mpeg1video              pcx                     subviewer1              wrapped_avframe
adpcm_psx               cook                    h263i                   mpeg2video              pgm                     sunrast                 ws_snd1
adpcm_sbpro_2           cpia                    h263p                   mpeg4                   pgmyuv                  svq1                    xan_dpcm
adpcm_sbpro_3           cscd                    h264                    mpegvideo               pgssub                  svq3                    xan_wc3
adpcm_sbpro_4           cyuv                    hap                     mpl2                    pictor                  tak                     xan_wc4
adpcm_swf               dca                     hcom                    msa1                    pixlet                  targa                   xbin
adpcm_thp               dds                     hevc                    mscc                    pjs                     targa_y216              xbm
adpcm_thp_le            dfa                     hnm4_video              msmpeg4v1               png                     tdsc                    xface
adpcm_vima              dirac                   hq_hqa                  msmpeg4v2               ppm                     text                    xl
adpcm_xa                dnxhd                   hqx                     msmpeg4v3               prores                  theora                  xma1
adpcm_yamaha            dolby_e                 huffyuv                 msrle                   prosumer                thp                     xma2
agm                     dpx                     hymt                    mss1                    psd                     tiertexseqvideo         xpm
aic                     dsd_lsbf                iac                     mss2                    ptx                     tiff                    xsub
alac                    dsd_lsbf_planar         idcin                   msvideo1                qcelp                   tmv                     xwd
alac_at                 dsd_msbf                idf                     mszh                    qdm2                    truehd                  y41p
alias_pix               dsd_msbf_planar         iff_ilbm                mts2                    qdm2_at                 truemotion1             ylc
als                     dsicinaudio             ilbc                    mvc1                    qdmc                    truemotion2             yop
amr_nb_at               dsicinvideo             ilbc_at                 mvc2                    qdmc_at                 truemotion2rt           yuv4
amrnb                   dss_sp                  imc                     mwsc                    qdraw                   truespeech              zero12v
amrwb                   dst                     imm4                    mxpeg                   qpeg                    tscc                    zerocodec
amv                     dvaudio                 indeo2                  nellymoser              qtrle                   tscc2                   zlib
anm                     dvbsub                  indeo3                  nuv                     r10k                    tta                     zmbv
ansi                    dvdsub                  indeo4                  on2avc                  r210                    twinvq
ape                     dvvideo                 indeo5                  opus                    ra_144                  txd
apng                    dxa                     interplay_acm           paf_audio               ra_288                  ulti

Enabled encoders:
a64multi                asv1                    g723_1                  msvideo1                pcm_s32le               r10k                    tta
a64multi5               asv2                    gif                     nellymoser              pcm_s32le_planar        r210                    utvideo
aac                     avrp                    h261                    opus                    pcm_s64be               ra_144                  v210
aac_at                  avui                    h263                    pam                     pcm_s64le               rawvideo                v308
ac3                     ayuv                    h263p                   pbm                     pcm_s8                  roq                     v408
ac3_fixed               bmp                     h264_videotoolbox       pcm_alaw                pcm_s8_planar           roq_dpcm                v410
adpcm_adx               cinepak                 hevc_videotoolbox       pcm_alaw_at             pcm_u16be               rv10                    vc2
adpcm_g722              cljr                    huffyuv                 pcm_dvd                 pcm_u16le               rv20                    vorbis
adpcm_g726              comfortnoise            ilbc_at                 pcm_f32be               pcm_u24be               s302m                   wavpack
adpcm_g726le            dca                     jpeg2000                pcm_f32le               pcm_u24le               sbc                     webvtt
adpcm_ima_qt            dnxhd                   jpegls                  pcm_f64be               pcm_u32be               sgi                     wmav1
adpcm_ima_wav           dpx                     ljpeg                   pcm_f64le               pcm_u32le               snow                    wmav2
adpcm_ms                dvbsub                  magicyuv                pcm_mulaw               pcm_u8                  sonic                   wmv1
adpcm_swf               dvdsub                  mjpeg                   pcm_mulaw_at            pcm_vidc                sonic_ls                wmv2
adpcm_yamaha            dvvideo                 mlp                     pcm_s16be               pcx                     srt                     wrapped_avframe
alac                    eac3                    movtext                 pcm_s16be_planar        pgm                     ssa                     xbm
alac_at                 ffv1                    mp2                     pcm_s16le               pgmyuv                  subrip                  xface
alias_pix               ffvhuff                 mp2fixed                pcm_s16le_planar        png                     sunrast                 xsub
amv                     fits                    mpeg1video              pcm_s24be               ppm                     svq1                    xwd
apng                    flac                    mpeg2video              pcm_s24daud             prores                  targa                   y41p
aptx                    flashsv                 mpeg4                   pcm_s24le               prores_aw               text                    yuv4
aptx_hd                 flashsv2                msmpeg4v2               pcm_s24le_planar        prores_ks               tiff                    zlib
ass                     flv                     msmpeg4v3               pcm_s32be               qtrle                   truehd                  zmbv

Enabled hwaccels:
h263_videotoolbox       h264_videotoolbox       hevc_videotoolbox       mpeg1_videotoolbox      mpeg2_videotoolbox      mpeg4_videotoolbox

Enabled parsers:
aac                     cavsvideo               dvbsub                  gsm                     mpeg4video              rv40                    vp8
aac_latm                cook                    dvd_nav                 h261                    mpegaudio               sbc                     vp9
ac3                     dca                     dvdsub                  h263                    mpegvideo               sipr                    xma
adx                     dirac                   flac                    h264                    opus                    tak
av1                     dnxhd                   g723_1                  hevc                    png                     vc1
avs2                    dpx                     g729                    mjpeg                   pnm                     vorbis
bmp                     dvaudio                 gif                     mlp                     rv30                    vp3

Enabled demuxers:
aa                      cavsvideo               genh                    image_webp_pipe         musx                    rawvideo                threedostr
aac                     cdg                     gif                     image_xpm_pipe          mv                      realtext                tiertexseq
ac3                     cdxl                    gsm                     image_xwd_pipe          mvi                     redspark                tmv
acm                     cine                    gxf                     ingenient               mxf                     rl2                     truehd
act                     codec2                  h261                    ipmovie                 mxg                     rm                      tta
adf                     codec2raw               h263                    ircam                   mythtv_mpegts           roq                     tty
adp                     concat                  h264                    iss                     mythtv_mpegtsraw        rpl                     txd
ads                     dash                    hcom                    iv8                     nc                      rsd                     ty
adx                     data                    hevc                    ivf                     nistsphere              rso                     v210
aea                     daud                    hls                     ivr                     nsp                     rtp                     v210x
afc                     dcstr                   hnm                     jacosub                 nsv                     rtsp                    vag
aiff                    dfa                     ico                     jv                      nut                     s337m                   vc1
aix                     dhav                    idcin                   kux                     nuv                     sami                    vc1t
amr                     dirac                   idf                     live_flv                ogg                     sap                     vividas
amrnb                   dnxhd                   iff                     lmlm4                   oma                     sbc                     vivo
amrwb                   dsf                     ifv                     loas                    paf                     sbg                     vmd
anm                     dsicin                  ilbc                    lrc                     pcm_alaw                scc                     vobsub
apc                     dss                     image2                  lvf                     pcm_f32be               sdp                     voc
ape                     dts                     image2_alias_pix        lxf                     pcm_f32le               sdr2                    vpk
apng                    dtshd                   image2_brender_pix      m4v                     pcm_f64be               sds                     vplayer
aptx                    dv                      image2pipe              matroska                pcm_f64le               sdx                     vqf
aptx_hd                 dvbsub                  image_bmp_pipe          mgsts                   pcm_mulaw               segafilm                w64
aqtitle                 dvbtxt                  image_dds_pipe          microdvd                pcm_s16be               ser                     wav
asf                     dxa                     image_dpx_pipe          mjpeg                   pcm_s16le               shorten                 wc3
asf_o                   ea                      image_exr_pipe          mjpeg_2000              pcm_s24be               siff                    webm_dash_manifest
ass                     ea_cdata                image_gif_pipe          mlp                     pcm_s24le               sln                     webvtt
ast                     eac3                    image_j2k_pipe          mlv                     pcm_s32be               smacker                 wsaud
au                      epaf                    image_jpeg_pipe         mm                      pcm_s32le               smjpeg                  wsd
avi                     ffmetadata              image_jpegls_pipe       mmf                     pcm_s8                  smush                   wsvqa
avr                     filmstrip               image_pam_pipe          mov                     pcm_u16be               sol                     wtv
avs                     fits                    image_pbm_pipe          mp3                     pcm_u16le               sox                     wv
avs2                    flac                    image_pcx_pipe          mpc                     pcm_u24be               spdif                   wve
bethsoftvid             flic                    image_pgm_pipe          mpc8                    pcm_u24le               srt                     xa
bfi                     flv                     image_pgmyuv_pipe       mpegps                  pcm_u32be               stl                     xbin
bfstm                   fourxm                  image_pictor_pipe       mpegts                  pcm_u32le               str                     xmv
bink                    frm                     image_png_pipe          mpegvideo               pcm_u8                  subviewer               xvag
bintext                 fsb                     image_ppm_pipe          mpjpeg                  pcm_vidc                subviewer1              xwma
bit                     g722                    image_psd_pipe          mpl2                    pjs                     sup                     yop
bmv                     g723_1                  image_qdraw_pipe        mpsub                   pmp                     svag                    yuv4mpegpipe
boa                     g726                    image_sgi_pipe          msf                     pva                     swf
brstm                   g726le                  image_sunrast_pipe      msnwc_tcp               pvf                     tak
c93                     g729                    image_svg_pipe          mtaf                    qcp                     tedcaptions
caf                     gdv                     image_tiff_pipe         mtv                     r3d                     thp

Enabled muxers:
a64                     data                    gxf                     mjpeg                   ogv                     psp                     tg2
ac3                     daud                    h261                    mkvtimestamp_v2         oma                     rawvideo                tgp
adts                    dirac                   h263                    mlp                     opus                    rm                      truehd
adx                     dnxhd                   h264                    mmf                     pcm_alaw                roq                     tta
aiff                    dts                     hash                    mov                     pcm_f32be               rso                     uncodedframecrc
amr                     dv                      hds                     mp2                     pcm_f32le               rtp                     vc1
apng                    eac3                    hevc                    mp3                     pcm_f64be               rtp_mpegts              vc1t
aptx                    f4v                     hls                     mp4                     pcm_f64le               rtsp                    voc
aptx_hd                 ffmetadata              ico                     mpeg1system             pcm_mulaw               sap                     w64
asf                     fifo                    ilbc                    mpeg1vcd                pcm_s16be               sbc                     wav
asf_stream              fifo_test               image2                  mpeg1video              pcm_s16le               scc                     webm
ass                     filmstrip               image2pipe              mpeg2dvd                pcm_s24be               segafilm                webm_chunk
ast                     fits                    ipod                    mpeg2svcd               pcm_s24le               segment                 webm_dash_manifest
au                      flac                    ircam                   mpeg2video              pcm_s32be               singlejpeg              webp
avi                     flv                     ismv                    mpeg2vob                pcm_s32le               smjpeg                  webvtt
avm2                    framecrc                ivf                     mpegts                  pcm_s8                  smoothstreaming         wtv
avs2                    framehash               jacosub                 mpjpeg                  pcm_u16be               sox                     wv
bit                     framemd5                latm                    mxf                     pcm_u16le               spdif                   yuv4mpegpipe
caf                     g722                    lrc                     mxf_d10                 pcm_u24be               spx
cavsvideo               g723_1                  m4v                     mxf_opatom              pcm_u24le               srt
codec2                  g726                    matroska                null                    pcm_u32be               stream_segment
codec2raw               g726le                  matroska_audio          nut                     pcm_u32le               sup
crc                     gif                     md5                     oga                     pcm_u8                  swf
dash                    gsm                     microdvd                ogg                     pcm_vidc                tee

Enabled protocols:
async                   data                    hls                     md5                     rtmp                    srtp                    udp
bluray                  ffrtmphttp              http                    mmsh                    rtmps                   subfile                 udplite
cache                   file                    httpproxy               mmst                    rtmpt                   tcp                     unix
concat                  ftp                     https                   pipe                    rtmpts                  tee
crypto                  gopher                  icecast                 prompeg                 rtp                     tls

Enabled filters:
abench                  arealtime               convolution             fifo                    lut1d                   realtime                ssim
abitscope               aresample               convolve                fillborders             lut2                    remap                   stereo3d
acompressor             areverse                copy                    find_rect               lut3d                   removegrain             stereotools
acontrast               aselect                 coreimage               firequalizer            lutrgb                  removelogo              stereowiden
acopy                   asendcmd                coreimagesrc            flanger                 lutyuv                  repeatfields            streamselect
acrossfade              asetnsamples            cover_rect              floodfill               mandelbrot              replaygain              subtitles
acrossover              asetpts                 crop                    format                  maskedclamp             reverse                 super2xsai
acrusher                asetrate                cropdetect              fps                     maskedmerge             rgbashift               superequalizer
acue                    asettb                  crossfeed               framepack               maskfun                 rgbtestsrc              surround
adeclick                ashowinfo               crystalizer             framerate               mcdeint                 roberts                 swaprect
adeclip                 asidedata               cue                     framestep               mcompand                rotate                  swapuv
adelay                  asoftclip               curves                  freezedetect            mergeplanes             sab                     tblend
aderivative             asplit                  datascope               fspp                    mestimate               scale                   telecine
adrawgraph              ass                     dcshift                 gblur                   metadata                scale2ref               testsrc
aecho                   astats                  dctdnoiz                geq                     midequalizer            select                  testsrc2
aemphasis               astreamselect           deband                  gradfun                 minterpolate            selectivecolor          threshold
aeval                   atadenoise              deblock                 graphmonitor            mix                     sendcmd                 thumbnail
aevalsrc                atempo                  decimate                greyedge                movie                   separatefields          tile
afade                   atrim                   deconvolve              haas                    mpdecimate              setdar                  tinterlace
afftdn                  avectorscope            dedot                   haldclut                mptestsrc               setfield                tlut2
afftfilt                avgblur                 deesser                 haldclutsrc             negate                  setparams               tmix
afifo                   bandpass                deflate                 hdcd                    nlmeans                 setpts                  tonemap
afir                    bandreject              deflicker               headphone               nnedi                   setrange                tpad
aformat                 bass                    dejudder                hflip                   noformat                setsar                  transpose
agate                   bbox                    delogo                  highpass                noise                   settb                   treble
agraphmonitor           bench                   derain                  highshelf               normalize               showcqt                 tremolo
ahistogram              biquad                  deshake                 hilbert                 null                    showfreqs               trim
aiir                    bitplanenoise           despill                 histeq                  nullsink                showinfo                unpremultiply
aintegral               blackdetect             detelecine              histogram               nullsrc                 showpalette             unsharp
ainterleave             blackframe              dilation                hqdn3d                  oscilloscope            showspatial             uspp
alimiter                blend                   displace                hqx                     overlay                 showspectrum            vaguedenoiser
allpass                 bm3d                    doubleweave             hstack                  owdenoise               showspectrumpic         vectorscope
allrgb                  boxblur                 drawbox                 hue                     pad                     showvolume              vflip
allyuv                  bwdif                   drawgraph               hwdownload              pal100bars              showwaves               vfrdet
aloop                   cellauto                drawgrid                hwmap                   pal75bars               showwavespic            vibrance
alphaextract            channelmap              drmeter                 hwupload                palettegen              shuffleframes           vibrato
alphamerge              channelsplit            dynaudnorm              hysteresis              paletteuse              shuffleplanes           vignette
amerge                  chorus                  earwax                  idet                    pan                     sidechaincompress       vmafmotion
ametadata               chromahold              ebur128                 il                      perms                   sidechaingate           volume
amix                    chromakey               edgedetect              inflate                 perspective             sidedata                volumedetect
amovie                  chromashift             elbg                    interlace               phase                   signalstats             vstack
amplify                 ciescope                entropy                 interleave              pixdesctest             signature               w3fdif
amultiply               codecview               eq                      join                    pixscope                silencedetect           waveform
anequalizer             color                   equalizer               kerndeint               pp                      silenceremove           weave
anlmdn                  colorbalance            erosion                 lagfun                  pp7                     sinc                    xbr
anoisesrc               colorchannelmixer       extractplanes           lenscorrection          premultiply             sine                    xmedian
anull                   colorhold               extrastereo             life                    prewitt                 smartblur               xstack
anullsink               colorkey                fade                    limiter                 pseudocolor             smptebars               yadif
anullsrc                colorlevels             fftdnoiz                loop                    psnr                    smptehdbars             yuvtestsrc
apad                    colormatrix             fftfilt                 loudnorm                pullup                  sobel                   zoompan
aperms                  colorspace              field                   lowpass                 qp                      spectrumsynth
aphasemeter             compand                 fieldhint               lowshelf                random                  split
aphaser                 compensationdelay       fieldmatch              lumakey                 readeia608              spp
apulsator               concat                  fieldorder              lut                     readvitc                sr

Enabled bsfs:
aac_adtstoasc           dump_extradata          h264_mp4toannexb        imx_dump_header         mpeg2_metadata          remove_extradata        vp9_raw_reorder
av1_frame_split         eac3_core               h264_redundant_pps      mjpeg2jpeg              mpeg4_unpack_bframes    text2movsub             vp9_superframe
av1_metadata            extract_extradata       hapqa_extract           mjpega_dump_header      noise                   trace_headers           vp9_superframe_split
chomp                   filter_units            hevc_metadata           mov2textsub             null                    truehd_core
dca_core                h264_metadata           hevc_mp4toannexb        mp3_header_decompress   prores_metadata         vp9_metadata

Enabled indevs:
avfoundation            lavfi                   xcbgrab

Enabled outdevs:

License: GPL version 2 or later
libavutil/avconfig.h is unchanged
libavfilter/filter_list.c is unchanged
libavcodec/codec_list.c is unchanged
libavcodec/parser_list.c is unchanged
libavcodec/bsf_list.c is unchanged
libavformat/demuxer_list.c is unchanged
libavformat/muxer_list.c is unchanged
libavdevice/indev_list.c is unchanged
libavdevice/outdev_list.c is unchanged
libavformat/protocol_list.c is unchanged

#### MythTV CONFIGURATION ####
# Basic Settings
Qt minimum version        5.7
Qt installed version      5.14.1
Compile type              profile
Compiler cache            no
DistCC                    no
qmake                     /opt/local/libexec/qt5/bin/qmake
install prefix            /usr/local
runtime prefix            ../Resources
CPU                       x86 x86_64 (Intel(R) Core(TM) i5-5287U CPU @ 2.90GHz)
standalone assembly       yes
x86 assembler             nasm
MMX enabled               yes
MMXEXT enabled            yes
3DNow! enabled            yes
3DNow! extended enabled   yes
SSE enabled               yes
SSSE3 enabled             yes
AESNI enabled             yes
AVX enabled               yes
AVX2 enabled              yes
XOP enabled               yes
FMA3 enabled              yes
FMA4 enabled              yes
i686 features enabled     yes
Creating configuration files ...

# Input Support
Joystick menu             no
lirc support              no
libCEC device support     no [/usr/include]
Apple Remote              yes
Video4Linux support       no
ivtv support              no
HD-PVR support            no
FireWire support          no
DVB support               no [/usr/include]
DVB-S2 support            no
HDHomeRun support         no
V@Box TV Gateway support  yes
Ceton support             yes
DVEO ASI support          no

# Sound Output Support
PulseAudio support        no
OSS support               no
ALSA support              no
JACK support              default
libfftw3 support          no

# Video Output Support
x11 support               no
DRM support               no
Video4Linux codecs        no (DRM no)
MMAL decoder support      no
OpenGL                    yes (OpenGLES no)
EGL support               no
MHEG support              yes
libass subtitle support   yes

# Misc Features
Frontend                  yes
Backend                   yes
multi threaded libavcodec yes
libxml2 support           yes [/opt/local/include/libxml2]
libdns_sd (Bonjour)       yes
libcrypto                 yes
gnutls                    yes
bluray support            yes (system)
BD-J (Bluray java)        no
BD-J type                 j2se
systemd_notify            no
systemd_journal           no

# Bindings
bindings_perl             no
bindings_python           no
bindings_php              yes

# External Codec Options
mp3lame                   no
xvid                      no
x264                      no
x265 (HEVC)               no
vpx                       no
libaom   (AV1)            no
libdav1d (AV1)            no

# Compilation Options
Enforce c++11 nullptr     no
Enforce shadowed vars     yes

Creating libs/libmythbase/mythconfig.h and libs/libmythbase/mythconfig.mak

Created libs/libmythbase/mythconfig.h
Created libs/libmythbase/mythconfig.mak
Configuring libmythdvdnav...
Configuring libudfread...
Configuring libmythsoundtouch...
Last edited by jhoyt on Sat Apr 18, 2020 4:34 pm, edited 1 time in total.
User avatar
pvr4me
Senior
Posts: 763
Joined: Fri Feb 07, 2014 7:25 pm
Location: near Toronto, Canada
Contact:
Canada

Re: Building Mythtv 31.x on Catalina

Post by pvr4me »

You might find some clues in the OSX buildbot since it is using pretty much the same build process as you. The fixes-31 builder is here:

https://code.mythtv.org/buildbot/#/builders/131

Drilling into the configure step for a recent (successful) build shows the following configure output:

https://code.mythtv.org/buildbot/#/buil ... logs/stdio

Their configure command (wrapped) was:

Code: Select all

./configure 
	--prefix=/Users/buildworker/mythtv/31-osx-64bit/build/install 
	--qmake=/opt/local/libexec/qt5/bin/qmake 
	--cc=clang 
	--cxx=clang++ 
	--extra-cxxflags=-I/opt/local/include 
	--extra-ldflags=-L/opt/local/lib 
	--disable-distcc 
	--disable-firewire 
	--disable-libmp3lame 
	--disable-libxvid 
	--enable-bdjava 
	--enable-libx264 
	--enable-libx265 
	--enable-libvpx
I think the --extra-cxxflags and --extra-ldflags would mean that you don't need to link MacPorts-built headers into the build directory. It may also fix the problem that mp3lame, x264 and x265 are disabled. I don't know why they disabled libmp3lame.

BTW, I see that the buildbot is using yasm; not nasm. Not sure if that is significant or not.

You might also try setting an environment variable for pkg-config:

Code: Select all

PKG_CONFIG_SYSTEM_INCLUDE_PATH=/opt/local/include
Otherwise, pkg-config includes a spurious '-I/opt/local/include' in cflags. I'm hazy on the details now, but this caused me no end of problems building Myth under MacPorts. Perhaps it won't affect you.

Other than that, I'm not seeing anything that strikes me as a potential problem. If you continue to have crashes, you might want to joint the IRC chat or post to the developer's mailing list.

Fingers crossed for you!

Craig
Formerly the MacPorts guy.
User avatar
jhoyt
Senior
Posts: 143
Joined: Thu Aug 27, 2015 10:11 am
United States of America

Re: Building Mythtv 31.x on Catalina

Post by jhoyt »

Thanks again for the help.

I dug through the configure file and updated / added ports as necessary. Unfortunately I'm still getting segfaults on playback. When I get some more time, I'll dig through the buildbot and probably post an email out to dev.

Here's the output of "otool -L $SRC_DIR/programs/mythfrontend/mythfrontend.app/Contents/MacOS/mythfrontend"

Code: Select all

/Users/XXX/mythtv-31/mythtv/mythtv/programs/mythfrontend/mythfrontend.app/Contents/MacOS/mythfrontend:
	@executable_path/../Frameworks/mythswscale.framework/mythswscale (compatibility version 5.0.0, current version 5.5.100)
	@executable_path/../Frameworks/mythavformat.framework/mythavformat (compatibility version 58.0.0, current version 58.29.100)
	@executable_path/../Frameworks/mythswresample.framework/mythswresample (compatibility version 3.0.0, current version 3.5.100)
	@executable_path/../Frameworks/mythavutil.framework/mythavutil (compatibility version 56.0.0, current version 56.31.100)
	@executable_path/../Frameworks/mythavcodec.framework/mythavcodec (compatibility version 58.0.0, current version 58.54.100)
	@executable_path/../Frameworks/mythpostproc.framework/mythpostproc (compatibility version 55.0.0, current version 55.5.100)
	@executable_path/../Frameworks/mythavfilter.framework/mythavfilter (compatibility version 7.0.0, current version 7.57.100)
	@executable_path/../Frameworks/mythtv.framework/mythtv (compatibility version 31.0.0, current version 31.0.0)
	@executable_path/../Frameworks/mythupnp.framework/mythupnp (compatibility version 31.0.0, current version 31.0.0)
	@executable_path/../Frameworks/mythbase.framework/mythbase (compatibility version 31.0.0, current version 31.0.0)
	@executable_path/../Frameworks/mythui.framework/mythui (compatibility version 31.0.0, current version 31.0.0)
	@executable_path/../Frameworks/myth.framework/myth (compatibility version 31.0.0, current version 31.0.0)
	@executable_path/../Frameworks/mythmetadata.framework/mythmetadata (compatibility version 31.0.0, current version 31.0.0)
	@executable_path/../Frameworks/mythservicecontracts.framework/mythservicecontracts (compatibility version 31.0.0, current version 31.0.0)
	@executable_path/../Frameworks/mythprotoserver.framework/mythprotoserver (compatibility version 31.0.0, current version 31.0.0)
	@executable_path/../Frameworks/mythfreemheg.framework/mythfreemheg (compatibility version 31.0.0, current version 31.0.0)
	@executable_path/../Frameworks/libtag.1.dylib (compatibility version 1.0.0, current version 1.17.0)
	/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 902.1.0)
	@executable_path/../Frameworks/libcrypto.1.1.dylib (compatibility version 1.1.0, current version 1.1.0)
	@executable_path/../Frameworks/libass.9.dylib (compatibility version 10.0.0, current version 10.2.0)
	@executable_path/../Frameworks/libfftw3_threads.3.dylib (compatibility version 9.0.0, current version 9.8.0)
	@executable_path/../Frameworks/libfftw3f.3.dylib (compatibility version 9.0.0, current version 9.8.0)
	@executable_path/../Frameworks/libfftw3.3.dylib (compatibility version 9.0.0, current version 9.8.0)
	/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
	@executable_path/../Frameworks/libxml2.2.dylib (compatibility version 12.0.0, current version 12.10.0)
	@executable_path/../Frameworks/libx264.157.dylib (compatibility version 0.0.0, current version 0.0.0)
	@executable_path/../Frameworks/libfontconfig.1.dylib (compatibility version 14.0.0, current version 14.0.0)
	@executable_path/../Frameworks/libfreetype.6.dylib (compatibility version 24.0.0, current version 24.1.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1281.100.1)
	@executable_path/../Frameworks/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)
	@executable_path/../Frameworks/libbluray.2.dylib (compatibility version 4.0.0, current version 4.2.0)
	@executable_path/../Frameworks/libsamplerate.0.dylib (compatibility version 2.0.0, current version 2.8.0)
	@executable_path/../Frameworks/QtWebKitWidgets.framework/Versions/5/QtWebKitWidgets (compatibility version 5.9.0, current version 5.9.1)
	@executable_path/../Frameworks/QtWidgets.framework/Versions/5/QtWidgets (compatibility version 5.14.0, current version 5.14.1)
	@executable_path/../Frameworks/QtWebKit.framework/Versions/5/QtWebKit (compatibility version 5.9.0, current version 5.9.1)
	@executable_path/../Frameworks/QtGui.framework/Versions/5/QtGui (compatibility version 5.14.0, current version 5.14.1)
	/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1894.40.150)
	/System/Library/Frameworks/Metal.framework/Versions/A/Metal (compatibility version 1.0.0, current version 212.5.15)
	@executable_path/../Frameworks/QtNetwork.framework/Versions/5/QtNetwork (compatibility version 5.14.0, current version 5.14.1)
	@executable_path/../Frameworks/QtXml.framework/Versions/5/QtXml (compatibility version 5.14.0, current version 5.14.1)
	@executable_path/../Frameworks/QtSql.framework/Versions/5/QtSql (compatibility version 5.14.0, current version 5.14.1)
	@executable_path/../Frameworks/QtScript.framework/Versions/5/QtScript (compatibility version 5.14.0, current version 5.14.1)
	@executable_path/../Frameworks/QtDBus.framework/Versions/5/QtDBus (compatibility version 5.14.0, current version 5.14.1)
	@executable_path/../Frameworks/QtCore.framework/Versions/5/QtCore (compatibility version 5.14.0, current version 5.14.1)
	/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (compatibility version 1.0.0, current version 1.0.0)
	/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
	/System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0)
User avatar
pvr4me
Senior
Posts: 763
Joined: Fri Feb 07, 2014 7:25 pm
Location: near Toronto, Canada
Contact:
Canada

Re: Building Mythtv 31.x on Catalina

Post by pvr4me »

None of the linkages jumps out at me as a concern.

After a bit of quality DuckDuckGo time, I see why you were adding the '-fno-stack-check' flag. The problem seems to be specific to Xcode 11 on macOS 10.15. The ffmpeg folks added a configure hack (on April 15, 2020) to include the flag:

http://git.videolan.org/?p=ffmpeg.git;a ... fd0c073b13

AFAICT, Myth's configure hasn't been so updated:

https://github.com/MythTV/mythtv/blob/f ... /configure

BTW, my (sketchy) understanding of how Myth's configure invokes ffmpeg configuration indicates that added flags aren't always passed down to ffmeg. You may need to dive into the config.log files (or whatever) to find out if the flag was applied or not. Or search the full build log for details.

Hope this provides a clue,

Craig
Formerly the MacPorts guy.
User avatar
pvr4me
Senior
Posts: 763
Joined: Fri Feb 07, 2014 7:25 pm
Location: near Toronto, Canada
Contact:
Canada

Re: Building Mythtv 31.x on Catalina

Post by pvr4me »

BTW, which version of Xcode do you have installed? Spelunking some old Macports messages shows that the stack check test was buggy in Xcode 11.1 and 11.2. It appears that 11.4.1 is now available for Catalina. Worth upgrading to see if the problem goes away.

Craig
Formerly the MacPorts guy.
User avatar
hampton
Developer
Posts: 10
Joined: Wed Apr 22, 2020 3:54 pm
United States of America

Re: Building Mythtv 31.x on Catalina

Post by hampton »

The OSX builder is running OSX 10.15.3 and XCode 11.3.1.

I built fixes/31 on that machine, and I can successfully start mythfrontend, play recordings, play videos, and play music. What video profile are you using? With fixes/31 it should probably be "VideoToolBox Normal", although none of the others should cause a crash.
User avatar
pvr4me
Senior
Posts: 763
Joined: Fri Feb 07, 2014 7:25 pm
Location: near Toronto, Canada
Contact:
Canada

Re: Building Mythtv 31.x on Catalina

Post by pvr4me »

hampton wrote:
Wed Apr 22, 2020 4:03 pm
The OSX builder is running OSX 10.15.3 and XCode 11.3.1.

I built fixes/31 on that machine, and I can successfully start mythfrontend, play recordings, play videos, and play music. What video profile are you using? With fixes/31 it should probably be "VideoToolBox Normal", although none of the others should cause a crash.
@hampton, are you using a bundled OSX app or starting mythfrontend from the command line?

From jhoyt's description, it appears he is double-clicking the bundled app. So, perhaps the problem is in the bundling process. @jhoyt, when an executable is bundled, it is still possible to start it from the Terminal command line. Open the bundle and find the executable and then use the full path in the Terminal to execute.

Craig
Formerly the MacPorts guy.
User avatar
hampton
Developer
Posts: 10
Joined: Wed Apr 22, 2020 3:54 pm
United States of America

Re: Building Mythtv 31.x on Catalina

Post by hampton »

I am staring the app from the command line.
User avatar
jhoyt
Senior
Posts: 143
Joined: Thu Aug 27, 2015 10:11 am
United States of America

Re: Building Mythtv 31.x on Catalina

Post by jhoyt »

hampton, can you post your build instructions? I was building mostly for personal use, but was planning on posting a .dmg file for others benefit. Most likely on the old sourceforge page which hasn't been serviced since 0.28 (https://sourceforge.net/projects/mythtvformacosx/)

Craig, I am also opening the app from the commandline (wanted the commandline outputs).

Also, I was using the VideoToolbox profile when receiving the segfaults.

Thanks!
User avatar
pvr4me
Senior
Posts: 763
Joined: Fri Feb 07, 2014 7:25 pm
Location: near Toronto, Canada
Contact:
Canada

Re: Building Mythtv 31.x on Catalina

Post by pvr4me »

jhoyt, please post the log messages you get from mythfrontend up until it crashes.

Craig
Formerly the MacPorts guy.
Post Reply