-
-
Notifications
You must be signed in to change notification settings - Fork 71
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Missing boost_locale on a build for Haiku #191
Comments
From the given information I can't tell. I'd need the full build output. I'd assume it found neither ICU nor Iconv which would skip the build with a message: Lines 257 to 258 in 0552ffc
Or some of the other requirement isn't met |
Including the full build output, one thing I noticed in the start now is: EDIT This is with ICU 70.1.2 and Iconv 1.17.3 |
Yes it looks like it found iconv and ICU:
However it seems it didn't detect that the std library supports
Checking the Boost.Config sources this is influenced by Both should be correctly set so I can't tell what in your setup causes the issue.
Note that the issue isn't specifically with Boost.Locale as indicated by many "C++03 support is deprecated..." messages |
The open PR to update our boost is linked above (it contains the recipe for the build and the patches I've added). A major part I reworked (as that part changed in the source) to get the build started was here: --- a/tools/build/src/engine/build.sh
+++ b/tools/build/src/engine/build.sh
@@ -325,6 +325,23 @@ case "${B2_TOOLSET}" in
CXX_VERSION_OPT=${CXX_VERSION_OPT:---version}
B2_CXXFLAGS_RELEASE="-O2 -s"
B2_CXXFLAGS_DEBUG="-O0 -g"
+
+ CXX=${CXX:=g++}
+ # Check whether it's MinGW GCC, which has Windows headers and none of POSIX ones.
+ machine=$(${CXX} -dumpmachine 2>/dev/null)
+ if [ $? -ne 0 ]; then
+ echo "B2_TOOLSET is gcc, but the 'gcc' command cannot be executed."
+ echo "Make sure 'gcc' is in PATH, or use a different toolset."
+ exit 1
+ fi
+ case $machine in
+ *haiku*)
+ B2_CXX="${CXX} -x c++ -std=c++17"
+ B2_CXXFLAGS_RELEASE="-O2 -s -D_DEFAULT_SOURCE -lbsd"
+ B2_CXXFLAGS_DEBUG="-O0 -g"
+ ;;
+ esac
;;
intel-*)
-- Seeing you mention gcc being a part of it (already did a new port for ICU73.2 to check also), it could very well be that I made a mistake here.
Looing in there I don't see anything special:
In that directory there is project-cache.jam wich contains:
EDIT: after running that command you supplied earlier I'm getting a better log, attatching it here EDIT2: after hunting down found these functions are disabled in boost/config/platform/haiku.hpp? These havent changed over the version (looking into the files date it originates from 2014?) EDIT3: uncommenting both lines for these functions in haiku.hpp solves the problem and even gets me a new library boost_nowide. |
Yes it seems those defect macros are wrong/outdated. Boost.Locale requires C++11 since Boost 1.81 (see the changelog) as well as some other libraries which is likely why you see this (only) now. I opened an issue for this in Boost.Config: boostorg/config#482 Anyway, glad you were able to find and resolved that, thanks a lot! |
Hello, I'm looking into bumping our version to the latest 1.83.0 version, so far all looks fine but it seems I'm missing the library for boost_locale, am I missing something or is this something intentional?
EDIT
Some additional informationOS: Haiku R1B4 64bit
Compiler: gcc13.2.0
The text was updated successfully, but these errors were encountered: