Hi,
I'm currently attempting to install galprop on on Ubuntu but running into an error on "Local install boost" that I can't really make heads or tails of. There are a few potential issues I see looking at the logs, but I'm not familiar with most of the tools being used to understand them. Boost fails on updating two targets.
For the two targets, here's what the boost 1.76.0 install log says:.
The first:
Code:
gcc.compile.c++.pch bin.v2/libs/math/build/pch/gcc-13/release/threading-multi/visibility-hidden/../src/tr1/pch.hpp.gch
In file included from ./boost/math/tools/mp.hpp:341,
from ./boost/math/policies/policy.hpp:11,
from ./boost/math/special_functions/math_fwd.hpp:31,
from ./boost/math/special_functions/airy.hpp:11,
from ./boost/math/special_functions.hpp:15,
from libs/math/build/../src/tr1/pch.hpp:9:
/usr/include/c++/13/utility:98:14: error: ‘__and_’ was not declared in this scope; did you mean ‘std::__and_’?
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ^~~~~~
| std::__and_
In file included from /usr/include/c++/13/bits/stl_pair.h:60,
from /usr/include/c++/13/bits/stl_algobase.h:64,
from /usr/include/c++/13/vector:62,
from ./boost/math/special_functions/math_fwd.hpp:26:
/usr/include/c++/13/type_traits:176:12: note: ‘std::__and_’ declared here
176 | struct __and_
| ^~~~~~
/usr/include/c++/13/utility:98:21: error: ‘is_nothrow_move_constructible’ was not declared in this scope; did you mean ‘std::is_nothrow_move_constructible’?
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| std::is_nothrow_move_constructible
/usr/include/c++/13/type_traits:1140:12: note: ‘std::is_nothrow_move_constructible’ declared here
1140 | struct is_nothrow_move_constructible
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/utility:98:54: error: expected primary-expression before ‘>’ token
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ^
/usr/include/c++/13/utility:98:55: error: expected primary-expression before ‘,’ token
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ^
/usr/include/c++/13/utility:98:55: error: expected ‘)’ before ‘,’ token
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ~ ^
| )
/usr/include/c++/13/utility:98:55: error: expected ‘;’ before ‘,’ token
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ^
| ;
/usr/include/c++/13/utility:107:15: error: ‘add_const_t’ does not name a type
107 | constexpr add_const_t<_Tp>&
| ^~~~~~~~~~~
./boost/math/tools/mp.hpp:342:10: error: ‘boost::math::tools::meta_programming::std::size_t’ has not been declared
342 | template<std::size_t... I>
| ^~~
./boost/math/tools/mp.hpp:343:29: error: ‘index_sequence’ in namespace ‘boost::math::tools::meta_programming::std’ does not name a template type
343 | using index_sequence = std::index_sequence<I...>;
| ^~~~~~~~~~~~~~
./boost/math/tools/mp.hpp:345:10: error: ‘boost::math::tools::meta_programming::std::size_t’ has not been declared
345 | template<std::size_t N>
| ^~~
./boost/math/tools/mp.hpp:346:34: error: ‘make_index_sequence’ in namespace ‘boost::math::tools::meta_programming::std’ does not name a template type
346 | using make_index_sequence = std::make_index_sequence<N>;
| ^~~~~~~~~~~~~~~~~~~
./boost/math/tools/mp.hpp:349:33: error: ‘index_sequence_for’ in namespace ‘boost::math::tools::meta_programming::std’ does not name a template type
349 | using index_sequence_for = std::index_sequence_for<T...>;
| ^~~~~~~~~~~~~~~~~~
"g++" -x c++-header -fvisibility-inlines-hidden -fPIC -m64 -pthread -O3 -finline-functions -Wno-inline -Wall -fvisibility=hidden -fvisibility=hidden -DBOOST_ALL_NO_LIB=1 -DBOOST_BUILD_PCH_ENABLED -DBOOST_MATH_TR1_DYN_LINK=1 -DNDEBUG -I"." -I"libs/math/src/tr1" -c -o "bin.v2/libs/math/build/pch/gcc-13/release/threading-multi/visibility-hidden/../src/tr1/pch.hpp.gch" "libs/math/build/../src/tr1/pch.hpp"
...failed gcc.compile.c++.pch bin.v2/libs/math/build/pch/gcc-13/release/threading-multi/visibility-hidden/../src/tr1/pch.hpp.gch...
and the second (which has a very similar path to the first, except with "link-static"):
Code:
gcc.compile.c++.pch bin.v2/libs/math/build/pch/gcc-13/release/link-static/threading-multi/visibility-hidden/../src/tr1/pch.hpp.gch
In file included from ./boost/math/tools/mp.hpp:341,
from ./boost/math/policies/policy.hpp:11,
from ./boost/math/special_functions/math_fwd.hpp:31,
from ./boost/math/special_functions/airy.hpp:11,
from ./boost/math/special_functions.hpp:15,
from libs/math/build/../src/tr1/pch.hpp:9:
/usr/include/c++/13/utility:98:14: error: ‘__and_’ was not declared in this scope; did you mean ‘std::__and_’?
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ^~~~~~
| std::__and_
In file included from /usr/include/c++/13/bits/stl_pair.h:60,
from /usr/include/c++/13/bits/stl_algobase.h:64,
from /usr/include/c++/13/vector:62,
from ./boost/math/special_functions/math_fwd.hpp:26:
/usr/include/c++/13/type_traits:176:12: note: ‘std::__and_’ declared here
176 | struct __and_
| ^~~~~~
/usr/include/c++/13/utility:98:21: error: ‘is_nothrow_move_constructible’ was not declared in this scope; did you mean ‘std::is_nothrow_move_constructible’?
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| std::is_nothrow_move_constructible
/usr/include/c++/13/type_traits:1140:12: note: ‘std::is_nothrow_move_constructible’ declared here
1140 | struct is_nothrow_move_constructible
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/utility:98:54: error: expected primary-expression before ‘>’ token
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ^
/usr/include/c++/13/utility:98:55: error: expected primary-expression before ‘,’ token
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ^
/usr/include/c++/13/utility:98:55: error: expected ‘)’ before ‘,’ token
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ~ ^
| )
/usr/include/c++/13/utility:98:55: error: expected ‘;’ before ‘,’ token
98 | noexcept(__and_<is_nothrow_move_constructible<_Tp>,
| ^
| ;
/usr/include/c++/13/utility:107:15: error: ‘add_const_t’ does not name a type
107 | constexpr add_const_t<_Tp>&
| ^~~~~~~~~~~
./boost/math/tools/mp.hpp:342:10: error: ‘boost::math::tools::meta_programming::std::size_t’ has not been declared
342 | template<std::size_t... I>
| ^~~
./boost/math/tools/mp.hpp:343:29: error: ‘index_sequence’ in namespace ‘boost::math::tools::meta_programming::std’ does not name a template type
343 | using index_sequence = std::index_sequence<I...>;
| ^~~~~~~~~~~~~~
./boost/math/tools/mp.hpp:345:10: error: ‘boost::math::tools::meta_programming::std::size_t’ has not been declared
345 | template<std::size_t N>
| ^~~
./boost/math/tools/mp.hpp:346:34: error: ‘make_index_sequence’ in namespace ‘boost::math::tools::meta_programming::std’ does not name a template type
346 | using make_index_sequence = std::make_index_sequence<N>;
| ^~~~~~~~~~~~~~~~~~~
./boost/math/tools/mp.hpp:349:33: error: ‘index_sequence_for’ in namespace ‘boost::math::tools::meta_programming::std’ does not name a template type
349 | using index_sequence_for = std::index_sequence_for<T...>;
| ^~~~~~~~~~~~~~~~~~
"g++" -x c++-header -fvisibility-inlines-hidden -m64 -pthread -O3 -finline-functions -Wno-inline -Wall -fvisibility=hidden -fvisibility=hidden -DBOOST_ALL_NO_LIB=1 -DBOOST_BUILD_PCH_ENABLED -DNDEBUG -I"." -I"libs/math/src/tr1" -c -o "bin.v2/libs/math/build/pch/gcc-13/release/link-static/threading-multi/visibility-hidden/../src/tr1/pch.hpp.gch" "libs/math/build/../src/tr1/pch.hpp"
...failed gcc.compile.c++.pch bin.v2/libs/math/build/pch/gcc-13/release/link-static/threading-multi/visibility-hidden/../src/tr1/pch.hpp.gch...
I'm not sufficiently familiar with boost nor its multithreading features to know how to proceed. It's quite possible that the issue doesn't lie with these two failures altogether, in which case I'm happy to provide any other logs that might help. I attempted to find some sort of boost-related documentation on the issue, but to no avail. All installs cfitsio--gsl worked fine.
Any insight would be greatly appreciated!
EDIT:
Something else that might be worthwhile is that the boost config log is:
Code:
Jamroot.jam:107: in modules.load from module Jamfile</home/alex/Downloads/galprop_v57_release_r1/lib/boost_1_76_0/tools/build>
warning: Bison generator program 'bison' not found. Skipping grammar build.
/home/alex/Downloads/galprop_v57_release_r1/lib/boost_1_76_0/tools/build/src/build/project.jam:372: in load-jamfile from module project
/home/alex/Downloads/galprop_v57_release_r1/lib/boost_1_76_0/tools/build/src/build/project.jam:64: in load from module project
/home/alex/Downloads/galprop_v57_release_r1/lib/boost_1_76_0/tools/build/src/build/project.jam:142: in project.find from module project
/home/alex/Downloads/galprop_v57_release_r1/lib/boost_1_76_0/tools/build/src/build-system.jam:618: in load from module build-system
/home/alex/Downloads/galprop_v57_release_r1/lib/boost_1_76_0/tools/build/src/kernel/modules.jam:295: in import from module modules
/home/alex/Downloads/galprop_v57_release_r1/lib/boost_1_76_0/tools/build/src/kernel/bootstrap.jam:139: in boost-build from module
/home/alex/Downloads/galprop_v57_release_r1/lib/boost_1_76_0/tools/build/boost-build.jam:8: in module scope from module
warning: No toolsets are configured.
warning: Configuring default toolset "gcc".
warning: If the default is wrong, your build may not work correctly.
warning: Use the "toolset=xxxxx" option to override our guess.
warning: For more configuration options, please consult
warning: http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html
...found 486 targets...
...updating 1 target...
common.copy /home/alex/Downloads/galprop_v57_release_r1/lib/boost_1_76_0/build/bin/b2
...updated 1 target...
It seems odd that it can't locate any toolset since install_galprop.sh does seem to specify the toolset via {MY_OS_BOOST_TOOLSET} but, again, I may be misunderstanding.