LINUX.ORG.RU

Падает сборка boost

 , ,


1

1

Доброго времени суток ЛОР. Пытаюсь собрать boost для arm, но сборка падает даже не начавшись.

build.log

* Package:    dev-libs/boost-1.71.0
 * Repository: gentoo
 * Maintainer: soap@gentoo.org office@gentoo.org
 * USE:        arm bzip2 elibc_glibc kernel_linux nls python python_targets_python2_7 python_targets_python3_6 threads userland_GNU zlib
 * FEATURES:   preserve-libs userpriv
>>> Unpacking source...
>>> Unpacking boost_1_71_0.tar.bz2 to /var/tmp/portage/dev-libs/boost-1.71.0/work
>>> Source unpacked in /var/tmp/portage/dev-libs/boost-1.71.0/work
>>> Preparing source in /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0 ...
 * Applying boost-1.48.0-disable_icu_rpath.patch ...
 [ ok ]
 * Applying boost-1.69.0-context-x32.patch ...
 [ ok ]
 * Applying boost-1.56.0-build-auto_index-tool.patch ...
 [ ok ]
 * Will copy sources from /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0
 * .arm: copying to /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0 ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0 ...
 * .arm: running multilib-minimal_abi_src_compile
 * Creating configuration in /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm/user-config.jam
 * python2_7: running append_to_user_config
 * python3_6: running append_to_user_config
 * Disabling support for NumPy extensions in Boost.Python
 * python2_7: running append_to_b2_opts
 * python3_6: running append_to_b2_opts
b2 --user-config=/var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm/user-config.jam python=2.7 python=3.6 gentoorelease -j5 -q -d+2 pch=off --disable-icu boost.locale.icu=off --without-mpi --without-context --without-corouti>
Unable to load Boost.Build: could not find "boost-build.jam"
---------------------------------------------------------------
BOOST_ROOT must be set, either in the environment, or 
on the command-line with -sBOOST_ROOT=..., to the root
of the boost installation.

Attempted search from /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm up to the root
at /usr/share/boost-build
and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: /usr/share/boost-build.
Please consult the documentation at 'http://www.boost.org'.
 * ERROR: dev-libs/boost-1.71.0::gentoo failed (compile phase):
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line  125:  Called src_compile
 *   environment, line 3269:  Called multilib-minimal_src_compile
 *   environment, line 1640:  Called multilib_foreach_abi 'multilib-minimal_abi_src_compile'
 *   environment, line 1884:  Called multibuild_foreach_variant '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_compile'
 *   environment, line 1587:  Called _multibuild_run '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_compile'
 *   environment, line 1585:  Called _multilib_multibuild_wrapper 'multilib-minimal_abi_src_compile'
 *   environment, line  436:  Called multilib-minimal_abi_src_compile
 *   environment, line 1634:  Called multilib_src_compile
 *   environment, line 2104:  Called die
 * The specific snippet of code:
 *       ejam "${OPTIONS[@]}" || die;
 * 
 * If you need support, post the output of `emerge --info '=dev-libs/boost-1.71.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-libs/boost-1.71.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/dev-libs/boost-1.71.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-libs/boost-1.71.0/temp/environment'.
 * Working directory: '/var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm'
 * S: '/var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0'

emerge --info

ACCEPT_KEYWORDS="arm"
ACCEPT_LICENSE="*"
CBUILD="armv7a-hardfloat-linux-gnueabi"
CFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard"
CHOST="armv7a-hardfloat-linux-gnueabi"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard"
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS="-j2 --ask --binpkg-changed-deps=n"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersync xattr"
FFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
INSTALL_MASK="/lib/systemd /usr/lib/systemd /etc/systemd"
LANG="ru_RU.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="acl arm armv5te armv6 armv6t2 berkdb bzip2 cli crypt cxx dri fortran gdbm iconv ipv6 ncurses nls nptl openmp pam pcre readline seccomp split-usr ssl tcpd unicode vim xattr zlib" ADA_TARGET="gnat_2018" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_ARM="edsp thumb thumb2 v4 v5 v6 v7 vfp" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="pc" INPUT_DEVICES="libinput keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" NETBEANS_MODULES="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6" QEMU_SOFTMMU_TARGETS="i386 x86_64 arm" QEMU_USER_TARGETS="i386 x86_64 arm" RUBY_TARGETS="ruby24 ruby25" USERLAND="GNU" VIDEO_CARDS="exynos fbdev omap v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

Очень надеюсь на вашу помощь.

★★★

Ответ на: комментарий от linxon

Результат тот же( Только в опции сборки добавилось:

-sBOOST_ROOT=/var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm

и boost-build.jam в каталоге сборки присутствует.
* Package:    dev-libs/boost-1.71.0
 * Repository: imax-ua
 * USE:        arm bzip2 elibc_glibc kernel_linux nls python python_targets_python2_7 python_targets_python3_6 threads userland_GNU zlib
 * FEATURES:   preserve-libs userpriv
>>> Unpacking source...
>>> Unpacking boost_1_71_0.tar.bz2 to /var/tmp/portage/dev-libs/boost-1.71.0/work
>>> Source unpacked in /var/tmp/portage/dev-libs/boost-1.71.0/work
>>> Preparing source in /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0 ...
 * Applying boost-1.48.0-disable_icu_rpath.patch ...
 [ ok ]
 * Applying boost-1.69.0-context-x32.patch ...
 [ ok ]
 * Applying boost-1.56.0-build-auto_index-tool.patch ...
 [ ok ]
 * Will copy sources from /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0
 * .arm: copying to /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0 ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0 ...
 * .arm: running multilib-minimal_abi_src_compile
 * Creating configuration in /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm/user-config.jam
 * python2_7: running append_to_user_config
 * python3_6: running append_to_user_config
 * Disabling support for NumPy extensions in Boost.Python
 * python2_7: running append_to_b2_opts
 * python3_6: running append_to_b2_opts
b2 --user-config=/var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm/user-config.jam -sBOOST_ROOT=/var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm python=2.7 python=3.6 gentoorelease -j5 -q -d+2 pch=off --disable->
Unable to load Boost.Build: could not find "boost-build.jam"
---------------------------------------------------------------
BOOST_ROOT must be set, either in the environment, or
on the command-line with -sBOOST_ROOT=..., to the root
of the boost installation.

Attempted search from /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm up to the root
at /usr/share/boost-build
and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: /usr/share/boost-build.
Please consult the documentation at 'http://www.boost.org'.
 * ERROR: dev-libs/boost-1.71.0::imax-ua failed (compile phase):
 *   (no error message)
 *
 * Call stack:
 *     ebuild.sh, line  125:  Called src_compile
 *   environment, line 3269:  Called multilib-minimal_src_compile
 *   environment, line 1640:  Called multilib_foreach_abi 'multilib-minimal_abi_src_compile'
 *   environment, line 1884:  Called multibuild_foreach_variant '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_compile'
 *   environment, line 1587:  Called _multibuild_run '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_compile'
 *   environment, line 1585:  Called _multilib_multibuild_wrapper 'multilib-minimal_abi_src_compile'
 *   environment, line  436:  Called multilib-minimal_abi_src_compile
 *   environment, line 1634:  Called multilib_src_compile
 *   environment, line 2104:  Called die
 * The specific snippet of code:
 *       ejam "${OPTIONS[@]}" || die;
 *
 * If you need support, post the output of `emerge --info '=dev-libs/boost-1.71.0::imax-ua'`,
 * the complete build log and the output of `emerge -pqv '=dev-libs/boost-1.71.0::imax-ua'`.
 * The complete build log is located at '/var/tmp/portage/dev-libs/boost-1.71.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-libs/boost-1.71.0/temp/environment'.
 * Working directory: '/var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm'
 * S: '/var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0'

xaTa ★★★
() автор топика
Последнее исправление: xaTa (всего исправлений: 1)
Ответ на: комментарий от xaTa

ну смотри, не может найти build в директории: /usr/share/boost-build, BOOST_ROOT должен быть установлен, либо в среде, либо в командной строке с -sBOOST_ROOT = ..., в корень установки буста. попробуй эту директорию в переменную BOOST_ROOT писануть

spawn_sp ★★★★
()
Ответ на: комментарий от xaTa

у меня с этими флагами собран: Calculating dependencies... done! [ebuild R ] dev-libs/boost-1.71.0:0/1.71.0::gentoo USE=«bzip2 icu lzma nls threads zlib -context -debug -doc -mpi -numpy -python -static-libs -tools -zstd» ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS=«python2_7 python3_5 python3_6 (-python3_7)» 0 KiB, так для инфо

spawn_sp ★★★★
()
Ответ на: комментарий от spawn_sp

ну так писанул же) посмотри последний build.log

xaTa ★★★
() автор топика
Ответ на: комментарий от spawn_sp

у меня с этими же идет сборка.

xaTa ★★★
() автор топика
Ответ на: комментарий от xaTa

Невозможно загрузить Boost.Build: не удалось найти «boost-build.jam», чё то кривой build что ли

spawn_sp ★★★★
()
Ответ на: комментарий от spawn_sp

Пробовал. Первый build.log из генты.

xaTa ★★★
() автор топика
Ответ на: комментарий от xaTa

пардон, вижу, спать надо ложиться, бензин кончился походу

spawn_sp ★★★★
()
Ответ на: комментарий от xaTa

boost 1.71 из ::gentoo.

>>> Compiling source in /tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0 ...
 * abi_x86_64.amd64: running multilib-minimal_abi_src_compile
 * Creating configuration in /tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-abi_x86_64.amd64/user-config.jam
 * Disabling support for NumPy extensions in Boost.Python
b2 --user-config=/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-abi_x86_64.amd64/user-config.jam --without-python gentoorelease -j3 -q -d+2 pch=off -sICU_PATH=/usr --without-mpi --without-locale --without-context --without-coroutine --without-fiber --without-stacktrace --boost-build=/usr/share/boost-build --prefix=/tmp/portage/dev-libs/boost-1.71.0/image/usr --layout=system --no-cmake-config threading=multi link=shared -sNO_BZIP2=0 -sNO_LZMA=1 -sNO_ZLIB=0 -sNO_ZSTD=1

дальше я вручную запустил b2 с debug-configuration.

b2 --user-config=/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-abi_x86_64.amd64/user-config.jam --without-python gentoorelease -j3 -q -d+2 pch=off -sICU_PATH=/usr --without-mpi --without-locale --without-context --without-coroutine --without-fiber --without-stacktrace --boost-build=/usr/share/boost-build --prefix=/tmp/portage/dev-libs/boost-1.71.0/image/usr --layout=system --no-cmake-config threading=multi link=shared -sNO_BZIP2=0 -sNO_LZMA=1 -sNO_ZLIB=0 -sNO_ZSTD=1 --debug-configuration
notice: found boost-build.jam at /usr/share/boost-build/boost-build.jam
notice: loading Boost.Build from /usr/share/boost-build
notice: Searching '/etc' '/root' '/usr/share/boost-build/src/kernel' '/usr/share/boost-build' '/usr/share/boost-build/kernel' '/usr/share/boost-build/util' '/usr/share/boost-build/build' '/usr/share/boost-build/tools' '/usr/share/boost-build/contrib' '/usr/share/boost-build/.' for site-config
configuration file 'site-config.jam'.
notice: Loading site-config configuration file 'site-config.jam' from '/usr/share/boost-build'.
notice: Loading explicitly specified user configuration file:
    /tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-abi_x86_64.amd64/user-config.jam
notice: Searching '/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-abi_x86_64.amd64' for user-config configuration file 'user-config.jam'.
notice: Loading user-config configuration file 'user-config.jam' from '/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-abi_x86_64.amd64'.
notice: will use 'x86_64-pc-linux-gnu-g++' for gcc, condition <toolset>gcc-8.2
notice: using gcc libraries :: <toolset>gcc-8.2 :: /usr/bin /usr/lib /usr/lib32 /usr/lib64
notice: using gcc archiver :: <toolset>gcc-8.2 :: /usr/x86_64-pc-linux-gnu/bin/ar
notice: using gcc ranlib :: <toolset>gcc-8.2 :: /usr/x86_64-pc-linux-gnu/bin/ranlib
warning: toolset gcc initialization: can not find tool windres
warning: initialized from /tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-abi_x86_64.amd64/user-config.jam:1
notice: using rc compiler :: <toolset>gcc-8.2 :: /usr/bin/as
error: no Jamfile in current directory found, and no target references specified.

Никаких сюрпризов. Файло для сборки он берет из /usr/share/boost-build. Это указывается явно в ebuild.

$(usex context '' '--without-context --without-coroutine --without-fiber')
                $(usex threads '' '--without-thread')
                --without-stacktrace
                --boost-build="${BROOT}"/usr/share/boost-build
                --prefix="${ED}/usr"
                --layout=system
                # CMake has issues working with multiple python impls,
                # disable cmake config generation for the time being
                # https://github.com/boostorg/python/issues/262#issuecomment-483069294
                --no-cmake-config

Проверяй параметры b2 и пути до boost-build. Если вручную указывать BROOT, это похерит –boost-build

arrecck ★★★
()
Ответ на: комментарий от grem

Пробовал перед тем как сюда писать. Безрезультатно.

xaTa ★★★
() автор топика
Ответ на: комментарий от arrecck

Никаких сюрпризов. Файло для сборки он берет из /usr/share/boost-build. Это указывается явно в ebuild.

Это понятно.

Проверяй параметры b2 и пути до boost-build.

Все стандартно. Только что от себя указал BOOST_ROOT.

b2 --user-config=/var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm/user-config.jam --without-python gentoorelease -j5 -q -d+2 pch=off -sBOOST_ROOT=/var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm --disable-icu boost.locale.icu=off --without-mpi --without-context --without-coroutine --without-fiber --without-stacktrace --boost-build=/usr/share/boost-build --prefix=/var/tmp/portage/dev-libs/boost-1.71.0/image/usr --layout=system --no-cmake-config threading=multi link=shared -sNO_BZIP2=0 -sNO_LZMA=1 -sNO_ZLIB=0 -sNO_ZSTD=1 --debug-configuration
Unable to load Boost.Build: could not find "boost-build.jam"
---------------------------------------------------------------
BOOST_ROOT must be set, either in the environment, or 
on the command-line with -sBOOST_ROOT=..., to the root
of the boost installation.

Attempted search from / up to the root
at /usr/share/boost-build
and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: /usr/share/boost-build, /var/tmp/portage/dev-libs/boost-1.71.0/work/boost_1_71_0-.arm.
Please consult the documentation at 'http://www.boost.org'.

xaTa ★★★
() автор топика
Ответ на: комментарий от xaTa

я грепнул сырцы boost/tools


# We attempt to load "boost-build.jam" by searching from the current
    # invocation directory up to the root of the file-system.
    #
    # boost-build.jam is expected to invoke the "boost-build" rule to load the
    # Boost.Build files.

    local search-path = $(BOOST_BUILD_PATH) $(BOOST_ROOT) ;
    local self = [ SELF_PATH ] ;
    local boost-build-relative = ../../share/boost-build ;
    local self-based-path = [ NORMALIZE_PATH $(boost-build-relative:R=$(self)) ] ;

    local boost-build-files =
        [ find-to-root [ PWD ] : boost-build.jam ]
        [ GLOB $(self-based-path) : boost-build.jam ]
        # Another temporary measure so Jam works with Boost.Build v1.
        [ GLOB $(search-path) : boost-build.jam ] ;

    .boost-build-file = $(boost-build-files[1]) ;

    # There is no boost-build.jam we can find, exit with an error, and
    # information.
    if ! $(.boost-build-file)
 {
        ECHO "Unable to load Boost.Build: could not find \"boost-build.jam\"" ;
        ECHO --------------------------------------------------------------- ;

        if ! [ MATCH .*(bjam).* : $(ARGV[1]:BL) ]
        {
            ECHO "BOOST_ROOT must be set, either in the environment, or " ;
            ECHO "on the command-line with -sBOOST_ROOT=..., to the root" ;
            ECHO "of the boost installation." ;
            ECHO ;
        }

        ECHO "Attempted search from" [ PWD ] "up to the root" ;
        ECHO "at" $(self-based-path) ;
        ECHO "and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: "$(search-path:J=", ")"." ;
        EXIT "Please consult the documentation at 'http://www.boost.org'." ;
    }

проверить это можно так b2 -d+5 | head -30

(builtin):>> SELF_PATH
(builtin):>> NORMALIZE_PATH /usr/bin/b2/../../share/boost-build
(builtin):>> PWD
(builtin):>> find-to-root /home/arrecck : boost-build.jam
(builtin):>>>> GLOB /home/arrecck : boost-build.jam
(builtin):>>>> GLOB /home : boost-build.jam
(builtin):>>>> GLOB / : boost-build.jam
(builtin):>> GLOB /usr/share/boost-build : boost-build.jam
(builtin):>> GLOB /usr/share/boost-build : boost-build.jam
(builtin):>> MATCH .*(--debug-configuration).* : b2 -d+5
(builtin):>> boost-build src/kernel
(builtin):>>>> _poke .ENVIRON : BOOST_BUILD_PATH : /usr/share/boost-build/src/kernel /usr/share/boost-build
(builtin):>>>> GLOB /usr/share/boost-build/src/kernel /usr/share/boost-build : bootstrap.jam
(builtin):>>>> MATCH .*(--debug-configuration).* : b2 -d+5
(builtin):>>>> RULENAMES

либо собирать с -ggdb и проверять, что ему не нравится.

arrecck ★★★
()
Ответ на: комментарий от arrecck

проверить это можно так b2 -d+5 | head -30

вот мой выхлоп:

b2 -d+5 | head -30d
(builtin):>> SELF_PATH 
(builtin):>> NORMALIZE_PATH /usr/bin/b2/../../share/boost-build
(builtin):>> PWD 
(builtin):>> find-to-root / : boost-build.jam
(builtin):>>>> GLOB / : boost-build.jam
(builtin):>> GLOB /usr/share/boost-build : boost-build.jam
(builtin):>> GLOB /usr/share/boost-build : boost-build.jam
(builtin):>> ECHO Unable to load Boost.Build: could not find "boost-build.jam"
Unable to load Boost.Build: could not find "boost-build.jam"
(builtin):>> ECHO ---------------------------------------------------------------
---------------------------------------------------------------
(builtin):>> MATCH .*(bjam).* : b2
(builtin):>> ECHO BOOST_ROOT must be set, either in the environment, or 
BOOST_ROOT must be set, either in the environment, or 
(builtin):>> ECHO on the command-line with -sBOOST_ROOT=..., to the root
on the command-line with -sBOOST_ROOT=..., to the root
(builtin):>> ECHO of the boost installation.
of the boost installation.
(builtin):>> ECHO 

(builtin):>> PWD 
(builtin):>> ECHO Attempted search from / up to the root
Attempted search from / up to the root
(builtin):>> ECHO at /usr/share/boost-build
at /usr/share/boost-build
(builtin):>> ECHO and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: /usr/share/boost-build.
and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: /usr/share/boost-build.
(builtin):>> EXIT Please consult the documentation at 'http://www.boost.org'.
Please consult the documentation at 'http://www.boost.org'.

xaTa ★★★
() автор топика
Ответ на: комментарий от xaTa

компилировать b2 с -ggdb и дебажить. У меня такой backtrace.

#0  file_collect_dir_content_ (d=0x5555555cec98) at fileunix.cpp:130
#1  0x000055555556562c in file_dirscan_impl (dir=0x5555555c0238, func=
    0x555555559be0 <builtin_glob_back(void*, OBJECT*, int, timestamp const*)>, closure=0x7fffffffc720)
    at filesys.cpp:450
#2  0x0000555555564f76 in file_dirscan (dir=0x5555555c0238,
    func=0x555555559be0 <builtin_glob_back(void*, OBJECT*, int, timestamp const*)>, closure=0x7fffffffc720)
    at filesys.cpp:180
#3  0x0000555555559f9b in builtin_glob (frame=0x7fffffffce10, flags=0) at builtins.cpp:796
#4  0x000055555556f291 in function_run (function_=0x5555555bcdb0, frame=0x7fffffffce10,
    s=0x55555559f3b0 <stack_global()::result>) at function.cpp:3897
#5  0x000055555555e0b0 in evaluate_rule (rule=0x5555555bcbf8, rulename=0x5555555b9cd0, frame=0x7fffffffce10)
    at compile.cpp:150
#6  0x0000555555566729 in function_call_rule (function=0x5555555d51f0, frame=0x7fffffffd550,
    s=0x55555559f3b0 <stack_global()::result>, n_args=2, unexpanded=0x5555555b9cd0 "GLOB",
    file=0x5555555b5f10, line=72) at function.cpp:493
#7  0x0000555555570fe3 in function_run (function_=0x5555555d51f0, frame=0x7fffffffd550,
    s=0x55555559f3b0 <stack_global()::result>) at function.cpp:4620
#8  0x0000555555580d98 in parse_impl (frame=0x7fffffffd550) at parse.cpp:55
#9  0x0000555555580de2 in parse_file (f=0x5555555b5f10, frame=0x7fffffffd550) at parse.cpp:68
#10 0x0000555555575ba3 in main (argc=0, argv=0x7fffffffe740, arg_environ=0x7fffffffe748) at jam.cpp:649

Почему на arm он не отрабатывает, не могу сказать. Проблема может быть и в драйвере ФС. В коде scandir из libc. Обычный stat нормально отрабатывает? stat /usr/share/boost-build/boost-build.jam

arrecck ★★★
()
Ответ на: комментарий от arrecck

компилировать b2 с -ggdb и дебажить.

b2 с -ggdb
Unable to load Boost.Build: could not find "boost-build.jam"
---------------------------------------------------------------
BOOST_ROOT must be set, either in the environment, or 
on the command-line with -sBOOST_ROOT=..., to the root
of the boost installation.

Attempted search from / up to the root
at /usr/share/boost-build
and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: /usr/share/boost-build.
Please consult the documentation at 'http://www.boost.org'.

Я правильно тебя понял?

Обычный stat нормально отрабатывает?

Да, вполне.

stat /usr/share/boost-build/boost-build.jam
  Файл: /usr/share/boost-build/boost-build.jam
  Размер: 267           Блоков: 8          Блок В/В: 4096   обычный файл
Устройство: fc01h/64513d        Inode: 1373726     Ссылки: 1
Доступ: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Доступ: 2019-11-29 11:24:36.000000000 -0000
Модифицирован: 2019-11-29 11:24:36.000000000 -0000
Изменён: 2019-11-29 11:25:07.000000000 -0000
 Создан: -

xaTa ★★★
() автор топика
Ответ на: комментарий от xaTa

так и не выходит пока, завтра почитаю по ссылке из твоих логов, заодно и для себя, для шевеления опилок в голове

spawn_sp ★★★★
()
Ответ на: комментарий от xaTa

Я правильно тебя понял?

нет. Я говорил про дебаг-версию b2 из пакета boost-build. Чтобы ее собрать, надо запустить сборочный скрипт build.sh с флагом -g или -ggdb. Там уже в любом случае придется программированием и отладкой заниматься. Я выше выложил backtrace из gdb отладчика. GLOB из интерпретатора b2 реализован в builtins.cpp и в конечном итоге вызвывает scandir в файле fileunix.cpp. Мне сложно сказать, где именно косяк. Специфичен он для arm или нет. У меня на моей машине проблем то нет и баг я поймать не могу.

arrecck ★★★
()
Последнее исправление: arrecck (всего исправлений: 1)
Ответ на: комментарий от arrecck

Смотри что у меня получилось.

./build.sh -ggdb
###
###
### Using 'gcc' toolset.
###
###
g++ --version
g++ (Gentoo 8.3.0-r1 p1.1) 8.3.0
Copyright (C) 2018 Free Software Foundation, Inc.
Это свободно распространяемое программное обеспечение. Условия копирования
приведены в исходных текстах.

  Без гарантии каких-либо качеств, включая
коммерческую ценность и применимость для каких-либо целей.



###
###
g++ -x c++ -std=c++11 -O2 -s -DNDEBUG builtins.cpp class.cpp command.cpp compile.cpp constants.cpp cwd.cpp debug.cpp debugger.cpp execcmd.cpp filesys.cpp frames.cpp function.cpp glob.cpp hash.cpp hcache.cpp hdrmacro.cpp headers.cpp jam.cpp jambase.cpp jamgram.cpp lists.cpp make.cpp make1.cpp md5.cpp mem.cpp modules.cpp native.cpp object.cpp option.cpp output.cpp parse.cpp pathsys.cpp regexp.cpp rules.cpp scan.cpp search.cpp strings.cpp subst.cpp sysinfo.cpp timestamp.cpp variable.cpp w32_getreg.cpp modules/order.cpp modules/path.cpp modules/property-set.cpp modules/regex.cpp modules/sequence.cpp modules/set.cpp execunix.cpp fileunix.cpp pathunix.cpp -o b2
debugger.cpp: В функции «LIST* debug_list_read(FILE*)»:
debugger.cpp:165:11: предупреждение: результат «int fscanf(FILE*, const char*, ...)», декларированной с атрибутом warn_unused_result, игнорируется [-Wunused-result]
     fscanf( in, "%d", &len );
     ~~~~~~^~~~~~~~~~~~~~~~~~
cp b2 bjam

xaTa ★★★
() автор топика
Ответ на: комментарий от xaTa

сижу частично перевожу на сайте с твоего лога, «Программа, которую вы используете для создания проекта, управляемого Boost.Build, называется b2. Если вы скачали и собрали библиотеки Boost C++, вы уже использовали b2. b2 ищет файлы конфигурации, читает их и соответственно строит проект. Он также принимает различные параметры командной строки, которые могут быть полезны, например, для отображения всех команд, выполняемых b2 для построения проекта.» появляются вопросы используешь ли библиотеку Boost C++?, или отдельно хочешь собрать boost.buld?, «Boost.Build был создан для простой сборки и установки библиотек Boost C++ с различными компиляторами на разных платформах. Хотя Boost.Build является частью и поставляется с библиотеками Boost C++, его можно использовать отдельно для любого проекта C++ или C. Можно даже загрузить только Boost.Build, если вы не хотите использовать библиотеки Boost C++.

spawn_sp ★★★★
()
Ответ на: комментарий от xaTa

а эта ошибка вроде у тебя в логе встречалась, «Если вы скопируете b2 в каталог, который не содержит Jamfiles, и запустите программу, вы получите сообщение об ошибке. Однако b2 не жалуется, что не может найти Jamfile. Он жалуется на то, что не нашел систему сборки.», как у тебя: «Невозможно загрузить Boost.Build: не удалось найти «boost-build.jam» -------------------------------------------------- ------------- Попытка поиска от \ Users до корня

Пожалуйста, ознакомьтесь с документацией на http://www.boost.org.", попробуй собрать эту библиотеку Boost C++, может я ошибаюсь, сам только учусь

spawn_sp ★★★★
()
Последнее исправление: spawn_sp (всего исправлений: 1)
Ответ на: комментарий от xaTa

ну и ещё для инфо: Файл конфигурации, который ищет b2, называется Jamfile.jam. Файлы с расширением jam называются Jamfiles. Если b2 находит Jamfile в текущем рабочем каталоге, он ищет больше Jamfile в родительских каталогах. b2 поднимается по родительским каталогам, пока не находит файл конфигурации с именем Jamroot.jam. Jamroot.jam ничем не отличается от Jamfile.jam. Это только указывает на то, что b2 не нужно искать дальше.

spawn_sp ★★★★
()
Ответ на: комментарий от xaTa

принудительно ты его вроде пробовал прописать, может в системе создать самому «BOOST_ROOT» или jam.file самому создавать

spawn_sp ★★★★
()
Последнее исправление: spawn_sp (всего исправлений: 1)
Ответ на: комментарий от xaTa

или хочет это: Jamroot.jam что бы не искать дальше, Если вы скопируете b2 в каталог, который не содержит Jamfiles, и запустите программу, вы получите сообщение об ошибке. то есть b2 должен быть в этом же каталоге?

spawn_sp ★★★★
()
Последнее исправление: spawn_sp (всего исправлений: 1)

я тут подумал, можно посмотреть флаги у самих зависимостей версии боста для x86_64, и выставить такие же у зависимостей для версии арм в packge.use, кроме архитектурно-зависимых конечно, может отличаются и попрёт, build-зависимости сборки и другие

spawn_sp ★★★★
()
Ответ на: комментарий от spawn_sp

Да нет профиль у меня самопальный на все 3 чрута. и флаги там такие же как и на amd64 и на x86.

xaTa ★★★
() автор топика

не нашёл я багу в гентушной packages по версии arm, не тестят совсем что ли, какие то старые попадались только в поиске, версию постарее попробуй, из stable есть 1.65.0, или ждать пока пофиксят

spawn_sp ★★★★
()
Ответ на: комментарий от spawn_sp

Я тоже перед тем как сюда писать на багзилу лазил, но не нашел. Во всяком случае спасибо за помощь.

xaTa ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.