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

Bug 667728

Summary: media-gfx/alembic-1.7.9 : CMake Error at cmake/AlembicBoost.cmake:98: Boost not found
Product: Gentoo Linux Reporter: Toralf Förster <toralf>
Component: Current packagesAssignee: Bernd <waebbl-gentoo>
Status: RESOLVED FIXED    
Severity: normal CC: mgorny, proxy-maint
Priority: Normal Keywords: PullRequest
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/10394
https://bugs.gentoo.org/show_bug.cgi?id=660980
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge-info.txt
CMakeError.log
CMakeOutput.log
emerge-history.txt
environment
etc.portage.tbz2
logs.tbz2
media-gfx:alembic-1.7.9:20181004-033126.log
temp.tbz2
emerge-info.txt
CMakeError.log
CMakeOutput.log
emerge-history.txt
environment
etc.portage.tbz2
logs.tbz2
media-gfx:alembic-1.7.9:20181007-155837.log
temp.tbz2
container contents of /etc/portage
qlop -l output in container
complete log of ebuildtester run
cmake cache file from cmake-3.12.3
alembic-1.7.9.ebuild
patch to find boost_python for >=cmake-3.11
fixes new naming scheme for boost_python in cmake

Description Toralf Förster gentoo-dev 2018-10-04 15:41:04 UTC
-- Found Threads: TRUE  
-- Could NOT find Boost
CMake Error at cmake/AlembicBoost.cmake:98 (MESSAGE):
  Boost not found.
Call Stack (most recent call first):
  CMakeLists.txt:225 (INCLUDE)

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

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 17.0-desktop_20181001-185905

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

gcc-config -l:
 [1] x86_64-pc-linux-gnu-8.2.0 *

Available Python interpreters, in order of preference:
  [1]   python3.6
  [2]   python2.7 (fallback)
Available Ruby profiles:
  [1]   ruby23 (with Rubygems) *
java-config:
The following VMs are available for generation-2:
*)	IcedTea JDK 3.8.0 [icedtea-bin-8]
Available Java Virtual Machines:
  [1]   icedtea-bin-8  system-vm

emerge -qpv media-gfx/alembic
[ebuild  N    ] media-gfx/alembic-1.7.9  USE="boost python zlib -arnold -doc -examples -hdf5 -maya -prman -test" PYTHON_TARGETS="python2_7"
Comment 1 Toralf Förster gentoo-dev 2018-10-04 15:41:09 UTC
Created attachment 549290 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2018-10-04 15:41:14 UTC
Created attachment 549292 [details]
CMakeError.log
Comment 3 Toralf Förster gentoo-dev 2018-10-04 15:41:18 UTC
Created attachment 549294 [details]
CMakeOutput.log
Comment 4 Toralf Förster gentoo-dev 2018-10-04 15:41:25 UTC
Created attachment 549296 [details]
emerge-history.txt
Comment 5 Toralf Förster gentoo-dev 2018-10-04 15:41:29 UTC
Created attachment 549298 [details]
environment
Comment 6 Toralf Förster gentoo-dev 2018-10-04 15:41:34 UTC
Created attachment 549300 [details]
etc.portage.tbz2
Comment 7 Toralf Förster gentoo-dev 2018-10-04 15:41:39 UTC
Created attachment 549302 [details]
logs.tbz2
Comment 8 Toralf Förster gentoo-dev 2018-10-04 15:41:44 UTC
Created attachment 549304 [details]
media-gfx:alembic-1.7.9:20181004-033126.log
Comment 9 Toralf Förster gentoo-dev 2018-10-04 15:41:50 UTC
Created attachment 549306 [details]
temp.tbz2
Comment 10 Bernd 2018-10-05 08:16:18 UTC
Hi Toralf, thanks for the report.

I can not reproduce the bug. There are standard cmake routines used to find boost>=1.42.0.

Could you please provide the ${BUILD_DIR}/CMakeCache.txt file?
Comment 11 Toralf Förster gentoo-dev 2018-10-07 16:21:46 UTC
appeared recently at the tinderbox image 17.0_20181006-205656
Comment 12 Toralf Förster gentoo-dev 2018-10-07 16:21:48 UTC
Created attachment 549646 [details]
emerge-info.txt
Comment 13 Toralf Förster gentoo-dev 2018-10-07 16:21:51 UTC
Created attachment 549648 [details]
CMakeError.log
Comment 14 Toralf Förster gentoo-dev 2018-10-07 16:21:54 UTC
Created attachment 549650 [details]
CMakeOutput.log
Comment 15 Toralf Förster gentoo-dev 2018-10-07 16:21:56 UTC
Created attachment 549652 [details]
emerge-history.txt
Comment 16 Toralf Förster gentoo-dev 2018-10-07 16:21:59 UTC
Created attachment 549654 [details]
environment
Comment 17 Toralf Förster gentoo-dev 2018-10-07 16:22:02 UTC
Created attachment 549656 [details]
etc.portage.tbz2
Comment 18 Toralf Förster gentoo-dev 2018-10-07 16:22:04 UTC
Created attachment 549658 [details]
logs.tbz2
Comment 19 Toralf Förster gentoo-dev 2018-10-07 16:22:07 UTC
Created attachment 549660 [details]
media-gfx:alembic-1.7.9:20181007-155837.log
Comment 20 Toralf Förster gentoo-dev 2018-10-07 16:22:09 UTC
Created attachment 549662 [details]
temp.tbz2
Comment 21 Toralf Förster gentoo-dev 2018-10-07 16:53:37 UTC
(In reply to Bernd from comment #10)
FWIW it is in 
/var/tmp/portage/media-gfx/alembic-1.7.9/work/alembic-1.7.9_build/CMakeFiles/
or in
/var/tmp/portage/media-gfx/alembic-1.7.9/work/alembic-1.7.9_build/

?
Comment 22 Bernd 2018-10-07 19:26:17 UTC
In /var/tmp/portage/media-gfx/alembic-1.7.9/work/alembic-1.7.9_build/CMakeCache.txt
Comment 23 Bernd 2018-10-09 12:39:53 UTC
Toral, I still couldn't reproduce the error. I now used app-portage/ebuildtester to test the build in a stable amd64 docker container and it compiles fine. See the attached files, if you need some detail.
The container has been using icu, python, nls and zlib USE flags for boost. Threads USE flag is enabled by default with boost, so it should reflect your installation of boost.
I'm now going to do the same test against an unstable arch.
Comment 24 Bernd 2018-10-09 12:40:30 UTC
Created attachment 550236 [details]
container contents of /etc/portage
Comment 25 Bernd 2018-10-09 12:40:59 UTC
Created attachment 550238 [details]
qlop -l output in container
Comment 26 Bernd 2018-10-09 12:41:30 UTC
Created attachment 550240 [details]
complete log of ebuildtester run
Comment 27 Bernd 2018-10-09 19:50:53 UTC
Finally could reproduce the bug with an unstable container. Because boost currently doesn't have an unstable version, I was thinking cmake could be root cause. And indeed, downgrading to stable 3.9.6 solve the configuration error.

I then checked the cmake versions. Cmake-3.10.3 didn't compile due to libuv configuration error and starting with cmake-3.11.4-r1 the error pops up. So I guess, cmake has changed something in how it finds the boost library.

I could save a CMakeCache.txt file, but looks like it doesn't have much information for this issue, at least less than I suspected.

Now going to invetigate what has changed between cmake-3.9.6 and >=cmake-3.11*.
Comment 28 Bernd 2018-10-09 19:52:26 UTC
Created attachment 550282 [details]
cmake cache file from cmake-3.12.3
Comment 29 Bernd 2018-10-09 19:56:01 UTC
Just noticed, on my machine, >=cmake-3.12.0 is masked due to an issue from science overlay. They have problems compiling lapack with those versions. I remember reading about it, but can't remember exactly what's their problem with it. Maybe it is tied to this one. I will check this.
Comment 30 Bernd 2018-10-09 22:17:42 UTC
Found a bug #660980 for 3.11 describing the same problem.

For the time, I found a workaround for the package.

Could you please try, whether the attached ebuild and the two additional patches solve the problem for you? They work on my machine using cmake-3.12.3.
Comment 31 Bernd 2018-10-09 22:19:06 UTC
Created attachment 550290 [details]
alembic-1.7.9.ebuild

includes experimental workaround for the bug.
Comment 32 Bernd 2018-10-09 22:19:51 UTC
Created attachment 550292 [details, diff]
patch to find boost_python for >=cmake-3.11
Comment 33 Bernd 2018-10-09 22:20:26 UTC
Created attachment 550294 [details, diff]
fixes new naming scheme for boost_python in cmake
Comment 34 Bernd 2018-11-10 16:44:12 UTC
Toralf, could you test the patches already?
Comment 35 Toralf Förster gentoo-dev 2018-11-10 17:30:11 UTC
(In reply to Bernd from comment #34)
Well, this is an issue catched by the tinderbox having >2K bugs open reports till now.
I do usually do not test individual patches, except in very rare cases ...
Comment 36 Bernd 2018-11-11 07:42:43 UTC
Ok, so how is it supposed to handle such tinderbox bugs, which get confirmed automatically, without being confirmed by at least a second person, if the reporter can not test fixes?
Comment 37 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2018-11-11 08:32:10 UTC
(In reply to Bernd from comment #36)
> Ok, so how is it supposed to handle such tinderbox bugs, which get confirmed
> automatically, without being confirmed by at least a second person, if the
> reporter can not test fixes?

You reproduced the issue, so test the fix yourself.
Comment 38 Bernd 2018-11-11 09:34:48 UTC
(In reply to Michał Górny from comment #37)
> You reproduced the issue, so test the fix yourself.

If you follow the thread, you might recognize, I already tested it, see comment #30.

So be it. I just open a PR for it!
Comment 39 Andreas Sturmlechner gentoo-dev 2019-05-01 11:28:14 UTC
Actually my mistake, not a stable package.
Comment 40 Larry the Git Cow gentoo-dev 2019-05-08 17:04:58 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4564c5566b6c2450c8b627c997422c0e5a490ec3

commit 4564c5566b6c2450c8b627c997422c0e5a490ec3
Author:     Bernd Waibel <waebbl@gmail.com>
AuthorDate: 2018-11-11 20:55:57 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2019-05-08 16:59:31 +0000

    media-gfx/alembic: fix boost not found error
    
    Fixes an error with >=cmake-3.11* where boost is not found due to
    changes in cmake syntax.
    
    See also: https://github.com/gentoo/gentoo/pull/10394
    Closes: https://bugs.gentoo.org/667728
    Package-Manager: Portage-2.3.51, Repoman-2.3.12
    Signed-off-by: Bernd Waibel <waebbl@gmail.com>
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 media-gfx/alembic/alembic-1.7.9.ebuild               |  9 ++++-----
 ...c-1.7.9-find-boost-python-for-cmake-ge-3.11.patch | 20 ++++++++++++++++++++
 .../alembic-1.7.9-fix-boost-python-naming.patch      | 17 +++++++++++++++++
 3 files changed, 41 insertions(+), 5 deletions(-)