Fails to build due to a missing reference to libtgvoip. Reproducible: Always
Created attachment 645542 [details] emerge --info
Created attachment 645544 [details] build log
can you provide 'emerge --info pulseaudio' output, please?
Created attachment 645730 [details] emerge --info pulseaudio
On my system telegram-desktop-2.1.14 fails during configure (2.1.13 was ok): -- Checking for module 'tgvoip' -- Package 'libpulse', required by 'tgvoip', not found I have no pulseaudio on my system, so USE=-pulseaudio is in effect for both telegram-desktop and libtgvoip (the latter was already installed).
there were some related changes upstream I already discussed, they said it should not be required, guess cmake is wrong indeed. I'll check it.
ok found it. it's a bug in tgvoip package in file /usr/lib64/pkgconfig/tgvoip.pc it defines > Requires.private: libcrypto opus alsa libpulse if you remove libpulse from there, telegram will build fine. I'll do a revbump shortly. meanwhile you can workaround easily. > Requires.private: libcrypto opus alsa libpulse should be > Requires.private: libcrypto opus alsa if you don't want pulse.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f100c11f216cf63794164d1eba94a5a9f85aecbd commit f100c11f216cf63794164d1eba94a5a9f85aecbd Author: Georgy Yakovlev <gyakovlev@gentoo.org> AuthorDate: 2020-07-01 06:05:20 +0000 Commit: Georgy Yakovlev <gyakovlev@gentoo.org> CommitDate: 2020-07-01 06:05:39 +0000 media-libs/libtgvoip: revbump, fix build without pulse Bug: https://bugs.gentoo.org/729034 Package-Manager: Portage-2.3.103, Repoman-2.3.23 Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org> ...tgvoip-2.4.4_p20200627.ebuild => libtgvoip-2.4.4_p20200627-r1.ebuild} | 1 + 1 file changed, 1 insertion(+)
try now with libtgvoip-2.4.4_p20200627-r1 should be fine.
(In reply to Georgy Yakovlev from comment #9) > try now with libtgvoip-2.4.4_p20200627-r1 > > should be fine. It is indeed, 2.1.14 is ok, thank you. :)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7b51d0c7fa7b11eab0da6bd8e99cd9939f30e28a commit 7b51d0c7fa7b11eab0da6bd8e99cd9939f30e28a Author: Georgy Yakovlev <gyakovlev@gentoo.org> AuthorDate: 2020-07-01 16:52:37 +0000 Commit: Georgy Yakovlev <gyakovlev@gentoo.org> CommitDate: 2020-07-01 17:02:00 +0000 media-libs/libtgvoip: drop p20200627-r1 Closes: https://bugs.gentoo.org/729034 Package-Manager: Portage-2.3.103, Repoman-2.3.23 Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org> media-libs/libtgvoip/Manifest | 1 - .../libtgvoip/libtgvoip-2.4.4_p20200627-r1.ebuild | 54 ---------------------- 2 files changed, 55 deletions(-)
This is most definitely not fixed. I'm still having this exact same build failure with telegram-desktop-2.1.16 and libtgvoip-2.4.4_p20200701.
I can't reproduce. can you try enabling alsa useflag for telegram and tgvoip and check if it helps? generally, disabling alsa is not recommended.
Same result with alsa and pulseaudio enabled in libtgvoip + telegram-desktop.
I have no idea what's happening here honestly. can you also upload tgvoip build log? and /usr/lib64/libtgvoip.so* files (compressed) so I can check them for missing symbols? seems it's something weird going on on your system.
Created attachment 647612 [details] tgvoip build log
Created attachment 647614 [details] tgvoip.so
ok looks like you are using fish? from emerge --info: SHELL="/bin/fish" SUDO_COMMAND="/bin/fish" from tgvoip configure: ./configure: 17913: test: xyes: unexpected operator ./configure: 17921: test: x: unexpected operator ./configure: 17929: test: x: unexpected operator Detected OS: linux-gnu ./configure: 17946: test: x: unexpected operator ./configure: 17962: test: xno: unexpected operator checking for dlopen in -ldl... yes ./configure: 18036: test: xyes: unexpected operator checking for libpulse... yes checking for alsa... yes ./configure: 18251: test: xyes: unexpected operator ./configure: 18259: test: xyes: unexpected operator ./configure: 18275: test: xyes: unexpected operator checking for size_t... yes it's affecting the scripts and linking commands. please don't set fish as login shell, just use this local trick described on https://wiki.gentoo.org/wiki/Fish .bashrc safety net part. it'll be pretty seamless and everything will work fine. and never, never change shell for root. can you change shell back to bash (for user and root if changed), re-build libtgvoip and re-try building telegram?
the real bug reason is that tgvoip uses non-posix syntax to check conditions AS_ECHO("Detected CPU: $host_cpu") AM_CONDITIONAL(TARGET_CPU_X86, test "x$cpu_x86" == xyes) AM_CONDITIONAL(TARGET_CPU_ARM, test "x$cpu_arm" == xyes) AM_CONDITIONAL(TARGET_CPU_ARMV7, test "x$cpu_armv7" == xyes) AS_ECHO("Detected OS: $host_os") not the double == it should use single = so you end up with tgvoip build without alsa or pulseaudio because of that bug, that's why telegram can't find symbols in the library at the linking time. I'll open a PR upstream to fix it, it should also fix building on shells like dash. but my warnings about fish still stand. use the .bashrc trick and don't set it as shell, there are more hard to find bugs waiting for you if you continue doing so =)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ee03110149ff0a37f5d0481a0e4a310d7a9838c commit 4ee03110149ff0a37f5d0481a0e4a310d7a9838c Author: Georgy Yakovlev <gyakovlev@gentoo.org> AuthorDate: 2020-07-05 00:15:23 +0000 Commit: Georgy Yakovlev <gyakovlev@gentoo.org> CommitDate: 2020-07-05 00:18:53 +0000 media-libs/libtgvoip: fix non-posix configure test Bug: https://bugs.gentoo.org/729034 Package-Manager: Portage-2.3.103, Repoman-2.3.23 Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org> .../libtgvoip/files/configure-bashisms.patch | 83 ++++++++++++++++++++++ ....ebuild => libtgvoip-2.4.4_p20200701-r1.ebuild} | 2 + 2 files changed, 85 insertions(+)
The patch did the trick for now. I'll have to look into my shell startup at some point when I have time as well. :)
upstream merged the commit, so all good. going to backport it to stable versions and close the bug later.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2719a1c2db7499e10895739210d13510a07ae3a5 commit 2719a1c2db7499e10895739210d13510a07ae3a5 Author: Georgy Yakovlev <gyakovlev@gentoo.org> AuthorDate: 2020-07-17 17:58:14 +0000 Commit: Georgy Yakovlev <gyakovlev@gentoo.org> CommitDate: 2020-07-17 17:58:14 +0000 media-libs/libtgvoip: drop old Closes: https://bugs.gentoo.org/729034 Package-Manager: Portage-2.3.103, Repoman-2.3.23 Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org> media-libs/libtgvoip/Manifest | 2 - .../libtgvoip/libtgvoip-2.4.4_p20200430.ebuild | 52 --------------------- .../libtgvoip/libtgvoip-2.4.4_p20200525.ebuild | 53 ---------------------- 3 files changed, 107 deletions(-)