Page 1 of 5
[Solved] Building Mythtv 31.x on Catalina
Posted: Sat Apr 11, 2020 7:13 pm
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
Re: Building Mythtv 31.x on Catalina
Posted: Fri Apr 17, 2020 11:38 am
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>
Re: Building Mythtv 31.x on Catalina
Posted: Fri Apr 17, 2020 12:32 pm
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
Re: Building Mythtv 31.x on Catalina
Posted: Fri Apr 17, 2020 12:35 pm
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
Re: Building Mythtv 31.x on Catalina
Posted: Fri Apr 17, 2020 7:09 pm
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.
Re: Building Mythtv 31.x on Catalina
Posted: Fri Apr 17, 2020 7:13 pm
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...
Re: Building Mythtv 31.x on Catalina
Posted: Sat Apr 18, 2020 2:18 am
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
Re: Building Mythtv 31.x on Catalina
Posted: Sat Apr 18, 2020 4:27 pm
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)
Re: Building Mythtv 31.x on Catalina
Posted: Sat Apr 18, 2020 5:24 pm
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
Re: Building Mythtv 31.x on Catalina
Posted: Wed Apr 22, 2020 3:54 pm
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
Re: Building Mythtv 31.x on Catalina
Posted: Wed Apr 22, 2020 4:03 pm
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.
Re: Building Mythtv 31.x on Catalina
Posted: Wed Apr 22, 2020 5:41 pm
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
Re: Building Mythtv 31.x on Catalina
Posted: Wed Apr 22, 2020 6:47 pm
by hampton
I am staring the app from the command line.
Re: Building Mythtv 31.x on Catalina
Posted: Fri Apr 24, 2020 7:58 pm
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!
Re: Building Mythtv 31.x on Catalina
Posted: Fri Apr 24, 2020 8:06 pm
by pvr4me
jhoyt, please post the log messages you get from mythfrontend up until it crashes.
Craig