Jan Wielkiewicz writes: > On Mon, 22 Jun 2020 09:32:50 +0200 > Pierre Neidhardt wrote: > >> Great! Does this fix any other issue? >> Does it warrant a package upgrade in Guix? >> > > This alone didn't fix the problem, but as no other possibility was left > than broken pjproject, I tried to fix it and succeeded. > It is mandatory to pass "-DNDBUG" flag to turn off assertion. > https://trac.pjsip.org/repos/wiki/FAQ#Performance > https://trac.pjsip.org/repos/wiki/FAQ#assert > > "Release mode. Don't forget to set the appropriate compiler > optimization flag, and disable assertion with -DNDEBUG." > > This surely fixes the bug the reason of I was chasing for several > months, where after disconnecting from audio call, the daemon > "crashed" (asserted). > It is also possible this fixes some other issues with SIP, I didn't > test, because I was uninterested. > > I'll prepare my messy code for committing once I have more time. > > I'm not sure whether I should fetch from git or use a tarball after > doing all this work. Fetching from git adds more complexity to the > packages, but it gives me more control over it plus I'm not sure if I > can trust the tarballs anymore, after two cases where some files/folders > were missing. > > Once I'll send the patches, would be cool if someone tested it. So, I tried adding -DNDEBUG to the CFLAGS bit of the #:configure-flags, and the package built. Testing it out seems to work, I think I've experienced this issue with assertion failures, so hopefully this will help. modified gnu/packages/jami.scm @@ -141,7 +141,7 @@ ;; against pjproject-jami: ;; relocation R_X86_64_32S against `.rodata' can not be used when ;; making a shared object; - "CFLAGS=-fPIC" + "CFLAGS=-fPIC -DNDEBUG" "CXXFLAGS=-fPIC") #:phases (modify-phases %standard-phases Is there more to applying this fix, or will this change alone help? I'm more than happy to review patches. Thanks, Chris