Re: Jami bug source investigation #4
Hi, I sent the patches to the mailing list. They should be soon available here: https://lists.gnu.org/archive/html/guix-patches/2020-07/msg00153.html Jan Wielkiewicz
Re: Jami bug source investigation #4
Nevermind, I've managed to write *I hope good commit messages*. Do not commit the fix yet, I will send all patches tomorrow. Jan Wielkiewcz
Re: Jami bug source investigation #4
Hi, On Sun, 05 Jul 2020 21:29:33 +0100 Christopher Baines wrote: > > 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 That's it for the bug, if you want to have it fixed quickly, feel free to commit it. I didn't do it yet, because I'm busy writting commit messages for my refactored and updated package definitions. I'm also trying to catch up with the latest Jami version - they fixed some annoying stuff too. Is there a script for automatically writing commit messages compliant with the GNU coding standards? Jan Wielkiewicz
Re: Jami bug source investigation #4
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 signature.asc Description: PGP signature
Re: Jami bug source investigation #4
Jan Wielkiewicz writes: > 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. Then it seems reasonable to fetch from Git. > Once I'll send the patches, would be cool if someone tested it. Will do, thanks again for your work! -- Pierre Neidhardt https://ambrevar.xyz/ signature.asc Description: PGP signature
Re: Jami bug source investigation #4
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. Jan Wielkiewicz
Re: Jami bug source investigation #4
Nevermind, I resolved the issue. Jami built from git repository instead of from tarball didn't fix the bug with audio call. Jan Wielkiewicz
Re: Jami bug source investigation #4
Hello, it turns out there is a directory in libringclient package - include/libringclient/web-chatview and it contains the missing files, including the "web.gresource.xml" make and configure complain about. I need to copy the files from include/libringclient/web-chatview of libringclient package to source/web/ of jami package. How do I do this? I tried using modify-phases and just copying the files, but it fails in the same manner, while in the build directory obtained using "--keep-failed", there are only links to the files. Jan Wielkiewicz