tjohnman / Obsession

A modern Hotline client written in Qt featuring Shift-JIS support and other stuff.
GNU General Public License v3.0
10 stars 1 forks source link

Build failure on 10.8–10.10: ld: Assertion failed: ((parser.sectionForAddress(personalityAddr)->type() == ld::Section::typeCode) && "personality column in __compact_unwind section is not pointer to function"), function personalityName, file #42

Open barracuda156 opened 1 year ago

barracuda156 commented 1 year ago

@tjohnman Just to let you know, on three versions of macOS Obsession fails to build with Clang:

/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_www_Obsession/Obsession/work/compwrap/cxx/usr/bin/clang++ -I/opt/local/include -L/opt/local/lib -Wl,-headerpad_max_install_names -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.10 -o Obsession.app/Contents/MacOS/Obsession main.o mainwindow.o ctransaction.o connectioncontroller.o dialogopenconnection.o dialogpreferences.o dialogagreement.o listwidgetusers.o dialogprivatemessaging.o dialogfilebrowser.o dialogtrackers.o dialogaddtracker.o dialogerror.o dialogiconviewer.o dialoglinearnews.o chatlineedit.o downloadmanager.o dialogdownloadqueue.o dialogabout.o widgetchat.o widgetnews.o dialogbookmarks.o cdownload.o widgetdownloaditem.o uploadmanager.o cupload.o dialoguploadsqueue.o widgetconsole.o dialoguserinfo.o threadiconloader.o threaduploader.o dialogprivileges.o dialogrequestaccount.o dialogcreateaccount.o dialogbroadcast.o dialogpostlinearnews.o moc_mainwindow.o moc_connectioncontroller.o moc_dialogopenconnection.o moc_dialogpreferences.o moc_dialogagreement.o moc_listwidgetusers.o moc_dialogprivatemessaging.o moc_dialogfilebrowser.o moc_dialogtrackers.o moc_dialogaddtracker.o moc_dialogerror.o moc_dialogiconviewer.o moc_dialoglinearnews.o moc_downloadmanager.o moc_dialogdownloadqueue.o moc_dialogabout.o moc_widgetchat.o moc_widgetnews.o moc_dialogbookmarks.o moc_cdownload.o moc_widgetdownloaditem.o moc_uploadmanager.o moc_cupload.o moc_dialoguploadsqueue.o moc_widgetconsole.o moc_dialoguserinfo.o moc_threadiconloader.o moc_threaduploader.o moc_dialogprivileges.o moc_dialogrequestaccount.o moc_dialogcreateaccount.o moc_dialogbroadcast.o moc_dialogpostlinearnews.o qrc_resources.o   -F/opt/local/libexec/qt4/Library/Frameworks -F/opt/local/libexec/qt4/lib  -F/opt/local/libexec/qt4/Library/Frameworks -F/opt/local/libexec/qt4/lib -L/opt/local/libexec/qt4/lib -framework QtGui -F/opt/local/Library/Frameworks -framework QtCore -framework QtNetwork 
0  0x10ec16342  __assert_rtn + 144
1  0x10ec19904  mach_o::relocatable::CUSection<x86_64>::personalityName(mach_o::relocatable::Parser<x86_64>&, macho_relocation_info<Pointer64<LittleEndian> > const*) + 144
2  0x10ec2b65f  mach_o::relocatable::CUSection<x86_64>::parse(mach_o::relocatable::Parser<x86_64>&, unsigned int, mach_o::relocatable::CUSection<x86_64>::Info*) + 283
3  0x10ec292ca  mach_o::relocatable::Parser<x86_64>::parse(mach_o::relocatable::ParserOptions const&) + 730
4  0x10ec2192e  mach_o::relocatable::Parser<x86_64>::parse(unsigned char const*, unsigned long long, char const*, long, ld::File::Ordinal, mach_o::relocatable::ParserOptions const&) + 388
5  0x10ec670ca  ld::tool::InputFiles::makeFile(Options::FileInfo const&, bool) + 834
6  0x10ec690ab  ld::tool::InputFiles::parseWorkerThread() + 483
7  0x10f43005a  _pthread_body + 131
8  0x10f42ffd7  _pthread_body + 0
A linker snapshot was created at:
    /tmp/Obsession-2022-11-08-023115.ld-snapshot
ld: Assertion failed: ((parser.sectionForAddress(personalityAddr)->type() == ld::Section::typeCode) && "personality column in __compact_unwind section is not pointer to function"), function personalityName, file /Library/Caches/com.apple.xbs/Sources/ld64/ld64-253.9/src/ld/parsers/macho_relocatable_file.cpp, line 4917.
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Obsession.app/Contents/MacOS/Obsession] Error 1
make: Leaving directory `/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_www_Obsession/Obsession/work/tjohnman-Obsession-6cc3951'
Command failed:  cd "/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_www_Obsession/Obsession/work/Obsession-6cc3951ccc69a772f5944ac16ab1e3e92e7efb7c" && /usr/bin/make -j8 -w all 
Exit code: 2

Details: https://ports.macports.org/port/Obsession/details/ Log from 10.10: https://build.macports.org/builders/ports-10.10_x86_64-builder/builds/204157/steps/install-port/logs/stdio