Why is the distribution tied to a specific Boost version? #5015
Replies: 7 comments 7 replies
-
|
we need to build it with something. It is only used in Soplex I believe. |
Beta Was this translation helpful? Give feedback.
-
|
We use cmake to download it and compile it to be able to build the or-tools
artefacts.
You need to specify a version when you do that. We cannot specify a range
or a min cersion. We also need to patch it
#
##############################################################################
# BOOST
#
##############################################################################
if(BUILD_Boost)
message(CHECK_START "Fetching Boost")
list(APPEND CMAKE_MESSAGE_INDENT " ")
FetchContent_Declare(
Boost
GIT_REPOSITORY "https://github.com/boostorg/boost.git"
GIT_TAG "boost-1.87.0"
GIT_SHALLOW TRUE
GIT_SUBMODULES_RECURSE TRUE
UPDATE_COMMAND git reset --hard --recurse-submodules
PATCH_COMMAND git apply --ignore-whitespace
"${CMAKE_CURRENT_LIST_DIR}/../../patches/boost-1.87.0.patch"
OVERRIDE_FIND_PACKAGE # Needed for Soplex
SYSTEM
)
set(BOOST_INCLUDE_LIBRARIES multiprecision serialization)
option(BOOST_SKIP_INSTALL_RULES NO)
set(BOOST_ENABLE_CMAKE ON)
set(BUILD_SHARED_LIBS OFF)
FetchContent_MakeAvailable(Boost)
set(BUILD_SHARED_LIBS ON)
list(POP_BACK CMAKE_MESSAGE_INDENT)
message(CHECK_PASS "fetched")
endif()
Laurent Perron | Operations Research | ***@***.*** | (33) 1 42 68 53
00
Le mer. 28 janv. 2026 à 19:58, Matt Liberty ***@***.***> a
écrit :
… We do you have to tie it to a specific version and not just specify a
minimum?
—
Reply to this email directly, view it on GitHub
<#5015 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACUPL3P5GGAE7I5CFJ6D7M34JEBGPAVCNFSM6AAAAACTGYCMZCVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKNRTGIYDAMQ>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
|
What is the purpose of this patch? I am building an application that uses boost directly and also uses or-tools. I use boost 1.89. or-tools tries to find 1.87 and can't and fails. I don't think it matters that you compiled with 1.87 to me as the user of the library. |
Beta Was this translation helpful? Give feedback.
-
|
it is still true for 9.15 ? |
Beta Was this translation helpful? Give feedback.
-
|
I'm confused why this is closed. Was there some resolution? |
Beta Was this translation helpful? Give feedback.
-
|
I believe it was fixed in 9.15, thanks for Corentin's patch.
Laurent Perron | Operations Research | ***@***.*** | (33) 1 42 68 53
00
Le sam. 31 janv. 2026 à 07:36, Matt Liberty ***@***.***> a
écrit :
… I don't want to build or-tools from source. I just don't want your binary
distribution to enforce a boost version requirement on or-tools users when
there is no need.
—
Reply to this email directly, view it on GitHub
<#5015 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACUPL3IQZXAWAND6EQHCJKL4JRENLAVCNFSM6AAAAACTGYCMZCVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKNRVG4YDEMY>
.
You are receiving this because you modified the open/close state.Message
ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
|
I just looked at 9.15 and I don't see the problem as solved. You still include and install lib/cmake/boost*1.87.0. This still pins the dependency. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
In
or-tools_x86_64_Ubuntu-24.10_cpp_v9.14.6206I findlib/cmake/Boost-1.87.0/..., why is the released tied to 1.87 specifically? Can it not be used with a different version (eg 1.89)? Boost is generally good about backward compatibility.Beta Was this translation helpful? Give feedback.
All reactions