Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 748546

Summary: dev-ml/cairo2-0.6.1 : Error: Library lablgtk2 not found.
Product: Gentoo Linux Reporter: Toralf Förster <toralf>
Component: Current packagesAssignee: Mark Wright <gienah>
Status: RESOLVED FIXED    
Severity: normal CC: proteuss
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge-info.txt
dev-ml:cairo2-0.6.1:20201013-204900.log
emerge-history.txt
environment
etc.portage.tbz2
temp.tbz2

Description Toralf Förster gentoo-dev 2020-10-13 21:39:13 UTC
8 |  (libraries  threads lablgtk2 cairo2)
                         ^^^^^^^^
Error: Library "lablgtk2" not found.
Hint: try:
  dune external-lib-deps --missing @install
Done: 0/0 (jobs: 0)

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 17.1_desktop_gnome_systemd-libressl-20201010-201503

  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-7.3.1
 [2] x86_64-pc-linux-gnu-10.2.0 *
clang version 11.0.0
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm/11/bin
/usr/lib/llvm/11
11.0.0
Available Python interpreters, in order of preference:
  [1]   python3.7
  [2]   python3.9 (fallback)
  [3]   python3.8 (fallback)
Available Ruby profiles:
  [1]   ruby25 (with Rubygems)
  [2]   ruby26 (with Rubygems)
  [3]   ruby27 (with Rubygems) *
Available Rust versions:
  [1]   rust-bin-1.47.0 *
The following VMs are available for generation-2:
*)	AdoptOpenJDK 8.265_p01 [openjdk-bin-8]
Available Java Virtual Machines:
  [1]   openjdk-bin-8  system-vm


  timestamp(s) of HEAD at this tinderbox image:
/var/db/repos/gentoo	Tue Oct 13 08:05:14 PM UTC 2020
/var/db/repos/libressl	Fri Oct  9 07:35:07 PM UTC 2020

emerge -qpvO dev-ml/cairo2
[ebuild  N    ] dev-ml/cairo2-0.6.1  USE="ocamlopt"
Comment 1 Toralf Förster gentoo-dev 2020-10-13 21:39:14 UTC
Created attachment 665131 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2020-10-13 21:39:15 UTC
Created attachment 665134 [details]
dev-ml:cairo2-0.6.1:20201013-204900.log
Comment 3 Toralf Förster gentoo-dev 2020-10-13 21:39:17 UTC
Created attachment 665137 [details]
emerge-history.txt
Comment 4 Toralf Förster gentoo-dev 2020-10-13 21:39:19 UTC
Created attachment 665140 [details]
environment
Comment 5 Toralf Förster gentoo-dev 2020-10-13 21:39:20 UTC
Created attachment 665143 [details]
etc.portage.tbz2
Comment 6 Toralf Förster gentoo-dev 2020-10-13 21:39:21 UTC
Created attachment 665146 [details]
temp.tbz2
Comment 7 Bernd Feige 2020-10-14 09:48:00 UTC
Thanks, I'm also seeing this. This is a circular dependency as dev-ml/lablgtk will give the same (finally unhelpful) "hint" that cairo2 was not found.
Any suggestion on how to break this loop? Downgrade back to ocaml-4.09.0?
Comment 8 Bernd Feige 2020-10-15 13:42:30 UTC
I now got dev-ml/cairo2 and dev-ml/lablgtk-3.1.1 to compile. Since ocaml was recently updated to dev-lang/ocaml-4.11.1 and no 'ocaml-updater' exists, I had to manually recompile =dev-ml/lablgtk-2.18.10 and dev-ml/ocamlbuild first as the first error was that my lablgtk was not compiled with the current version of ocaml. (Actually, I first removed a dangling  /usr/lib64/ocaml/liblablgtksourceview2.a symlink.)

After that, dev-ml/cairo2 could be emerged.

After also emerging dev-ml/camlp5 which is not in the dependencies of dev-ml/lablgtk-3.1.1, this one could be emerged as well.

Alas, the whole reason for the procedure was unison, which fails to emerge with the current ocaml toolchain...
Comment 9 Mark Wright gentoo-dev 2020-10-16 01:14:16 UTC
(In reply to Bernd Feige from comment #8)
> I now got dev-ml/cairo2 and dev-ml/lablgtk-3.1.1 to compile. Since ocaml was
> recently updated to dev-lang/ocaml-4.11.1 and no 'ocaml-updater' exists, I
> had to manually recompile =dev-ml/lablgtk-2.18.10 and dev-ml/ocamlbuild
> first as the first error was that my lablgtk was not compiled with the
> current version of ocaml. (Actually, I first removed a dangling 
> /usr/lib64/ocaml/liblablgtksourceview2.a symlink.)
> 
> After that, dev-ml/cairo2 could be emerged.

Can you please rebuild dev-ml/cairo2 with the commit that closes this bug,
as otherwise your ocaml libs might be confused because I'm applying
the patch from Debian to remove the (previously needed but missing,
and now no longed needed) dependency on dev-ml/lablgk:2

> After also emerging dev-ml/camlp5 which is not in the dependencies of
> dev-ml/lablgtk-3.1.1, this one could be emerged as well.

Thanks, I'll add it this to my long list, any more problems please
file new bugs if they are on recently updated packages.  (For
old ml packages that have not been updated recently they might
be removed soon).

> Alas, the whole reason for the procedure was unison, which fails to emerge
> with the current ocaml toolchain...

Hmm, unsure if I want to fix it or remove it, will look later.
Please feel free to comment in:
https://bugs.gentoo.org/749348
Comment 10 Larry the Git Cow gentoo-dev 2020-10-16 01:32:39 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31121592db17d8905a57468952f6e05aeb0f9e63

commit 31121592db17d8905a57468952f6e05aeb0f9e63
Author:     Mark Wright <gienah@gentoo.org>
AuthorDate: 2020-10-16 01:29:13 +0000
Commit:     Mark Wright <gienah@gentoo.org>
CommitDate: 2020-10-16 01:32:10 +0000

    dev-ml/ocaml2: Remove lablgtk2 dep
    
    cairo2 should not depend on labltk2:
    https://github.com/Chris00/ocaml-cairo/issues/21
    Follow Debian with patching out the lablgtk2 dependency:
    https://salsa.debian.org/ocaml-team/ocaml-cairo2/-/blob/master/debian/patches/ignore-gtk-and-pango
    Also add the Debian patch for the tests, however the tests still
    fail.
    
    Closes: https://bugs.gentoo.org/748546
    Package-Manager: Portage-3.0.8, Repoman-3.0.1
    Signed-off-by: Mark Wright <gienah@gentoo.org>

 dev-ml/cairo2/cairo2-0.6.1.ebuild                  |   7 +-
 ...6.1-Fix-multiple-definitions-of-variables.patch | 102 +++++++++++++++++++++
 .../files/cairo2-0.6.1-ignore-gtk-and-pango.patch  |  82 +++++++++++++++++
 3 files changed, 190 insertions(+), 1 deletion(-)
Comment 11 Bernd Feige 2020-10-16 17:48:10 UTC
(In reply to Mark Wright from comment #9)

> Can you please rebuild dev-ml/cairo2 with the commit that closes this bug,
> as otherwise your ocaml libs might be confused because I'm applying
> the patch from Debian to remove the (previously needed but missing,
> and now no longed needed) dependency on dev-ml/lablgk:2

Thanks, that worked better now! Problem with dangling symlink and camlp5 remain.