Bug 1479023 - Ceres 1.12.0 has CMake fatal error (fixed in 1.13)
Summary: Ceres 1.12.0 has CMake fatal error (fixed in 1.13)
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: ceres-solver
Version: 26
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Rich Mattes
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-08-07 18:21 UTC by Philip Salvaggio
Modified: 2017-08-20 18:25 UTC (History)
2 users (show)

Fixed In Version: ceres-solver-1.12.0-6.fc26
Clone Of:
Environment:
Last Closed: 2017-08-20 18:25:24 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Philip Salvaggio 2017-08-07 18:21:00 UTC
Description of problem:
After installing ceres-solver-devel, the CMake config script has a fatal error (duplicate else statement on line 89). This has been fixed in 1.13, but prevents any CMake-based project from using Ceres on 1.12.

Version-Release number of selected component (if applicable):
Fedora 26, ceres-solver-devel 1.12.0

How reproducible:


Steps to Reproduce:
1. sudo dnf install ceres-solver-devel
2. Try to use find_package(Ceres) in another CMake project

Actual results:
-- Failed to find Ceres - Found Eigen dependency, but the version of Eigen found (3.3.4) does not exactly match the version of Eigen Ceres was compiled with (3.3.3). This can cause subtle bugs by triggering violations of the One Definition Rule. See the Wikipedia article http://en.wikipedia.org/wiki/One_Definition_Rule for more details
CMake Error at /usr/lib64/cmake/Ceres/CeresConfig.cmake:89 (else):
  A duplicate ELSE command was found inside an IF block.
Call Stack (most recent call first):
  /usr/lib64/cmake/Ceres/CeresConfig.cmake:217 (ceres_report_not_found)
  CMakeLists.txt:253 (find_package)

Expected results:


Additional info:
This CMake bug has been fixed in 1.13.0, so upgrading the RPM to 1.13.0 should resolve this issue. The Eigen version mismatch warning is also concerning, so possibly the upgrade will fix that as well.

Comment 1 Rich Mattes 2017-08-08 00:54:08 UTC
Thanks for the report.  It looks like 1.13.0 has some backwards incompatible changes, so I'd prefer not to update it in a released fedora.  I will port the cmake patch to 1.12.0 and rebuild so that the correct version of eigen3 is detected.

Comment 2 Fedora Update System 2017-08-08 01:54:48 UTC
ceres-solver-1.12.0-6.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-d196b09c83

Comment 3 Fedora Update System 2017-08-13 04:02:35 UTC
ceres-solver-1.12.0-6.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-d196b09c83

Comment 4 Fedora Update System 2017-08-20 18:25:24 UTC
ceres-solver-1.12.0-6.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.