FS#40491 - [assimp] Invalid Boost version in assimp-config.cmake

Attached to Project: Community Packages
Opened by Benjamin Chretien (bchretien) - Thursday, 22 May 2014, 12:20 GMT
Last edited by Sven-Hendrik Haase (Svenstaro) - Saturday, 31 May 2014, 14:28 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Sven-Hendrik Haase (Svenstaro)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

While compiling ros-hydro-geometric-shapes (https://aur.archlinux.org/packages/ros-hydro-geometric-shapes/) that relies on assimp, compilation now fails:

-- Boost version: 1.55.0
-- Found the following Boost libraries:
-- system
-- filesystem
CMake Error at /usr/share/cmake-2.8/Modules/FindBoost.cmake:429 (message):
When requesting a specific version of Boost, you must provide at least the
major and minor version numbers, e.g., 1.34
Call Stack (most recent call first):
/usr/lib64/cmake/assimp-3.0/assimp-config.cmake:54 (find_package)
CMakeLists.txt:13 (find_package)


-- Could NOT find Boost

The investigation led me to /usr/lib64/cmake/assimp-3.0/assimp-config.cmake (lines 47/48):

# the boost version assimp was compiled with
set( ASSIMP_Boost_VERSION ".")

I guess this is supposed to be automatically set when compiling assimp, but it was apparently not. This should be "1.55". Thus, the following line fails:

find_package(Boost ${ASSIMP_Boost_VERSION} EXACT COMPONENTS thread date_time)


Additional info:
* package version: 3.1-1
This task depends upon

Closed by  Sven-Hendrik Haase (Svenstaro)
Saturday, 31 May 2014, 14:28 GMT
Reason for closing:  Fixed
Additional comments about closing:  Using -DASSIMP_ENABLE_BOOST_WORKAROUND=OFF
Comment by Benjamin Chretien (bchretien) - Thursday, 22 May 2014, 12:25 GMT
This is possibly something that should be reported to assimp's developers (possible related issue: https://github.com/assimp/assimp/pull/260).
Comment by Benjamin Chretien (bchretien) - Thursday, 22 May 2014, 12:40 GMT
I compared to assimp 3.0, and they changed their CMake file... This part used to be WIN32 only, which is probably why we did not encounter this problem before. I reported this issue on GitHub: https://github.com/assimp/assimp/issues/282
Comment by drevilt (drevilt) - Tuesday, 27 May 2014, 23:01 GMT
I think this is the same bug as the one i reported five days ago.

https://bugs.archlinux.org/task/40505

But you categorized this as an upstream bug, which it may be but in arch we can work around this problem by providing -DASSIMP_ENABLE_BOOST_WORKAROUND=FALSE in the cmake options, as described in the other bug report.
Comment by Benjamin Chretien (bchretien) - Wednesday, 28 May 2014, 09:08 GMT
@drevilt: the upstream bug is related to the fact that if you choose not to link to Boost, the CMake file generated contains an error. There's at least a simple check missing. However, I agree with you: linking to Boost would certainly be the better route for Arch users (unless I'm missing something obvious here).

Loading...