Can't build Boost 1.59 error: feature "deduced-address-model" : "32" "64" : "propagated" "optional" "composite" "hidden" - c++

I unsuccessfully trying to build boost under osx
What I tried
git checkout boost-1.59.0
./bootstrap.sh
Building Boost.Build engine with toolset darwin... tools/build/src/engine/bin.macosxx86_64/b2
Detecting Python version... 2.7
Detecting Python root... /System/Library/Frameworks/Python.framework/Versions/2.7
Unicode/ICU support for Boost.Regex?... not found.
Generating Boost.Build configuration in project-config.jam...
Bootstrapping is done. To build, run:
./b2
To adjust configuration, edit 'project-config.jam'.
Further information:
- Command line help:
./b2 --help
- Getting started guide:
http://www.boost.org/more/getting_started/unix-variants.html
- Boost.Build documentation:
http://www.boost.org/build/doc/html/index.html
./b2
/Volumes/Data/Developers/Library/boost/tools/build/src/build/feature.jam:139: in feature.feature from module feature
error: unknown attributes: hidden
error: in feature declaration:
error: feature "deduced-address-model" : "32" "64" : "propagated" "optional" "composite" "hidden"
/Volumes/Data/Developers/Library/boost/boostcpp.jam:611: in load from module boostcpp
/Volumes/Data/Developers/Library/boost/tools/build/src/kernel/modules.jam:289: in modules.import from module modules
/Volumes/Data/Developers/Library/boost/tools/build/src/build/project.jam:1024: in import from module Jamfile</Volumes/Data/Developers/Library/boost>
Jamroot:124: in modules.load from module Jamfile</Volumes/Data/Developers/Library/boost>
/Volumes/Data/Developers/Library/boost/tools/build/src/build/project.jam:311: in load-jamfile from module project
/Volumes/Data/Developers/Library/boost/tools/build/src/build/project.jam:64: in load from module project
/Volumes/Data/Developers/Library/boost/tools/build/src/build/project.jam:145: in project.find from module project
/Volumes/Data/Developers/Library/boost/tools/build/src/build-system.jam:535: in load from module build-system
/Volumes/Data/Developers/Library/boost/tools/build/src/kernel/modules.jam:289: in import from module modules
/Volumes/Data/Developers/Library/boost/tools/build/src/kernel/bootstrap.jam:139: in boost-build from module
/Volumes/Data/Developers/Library/boost/boost-build.jam:17: in module scope from module
So can someone explain what this error means? How to fix it?
* Solution *
I forgot to update submodules, my fault

No that is really strange!
What commands are you passing to build? (or is that literally the default?)
I recommend trying out one of my build scripts here:
https://github.com/danoli3/ofxOSXBoost
If that doesn't work either it may be a system conflict.
Do you have Homebrew or Macports installed? See if they have a Boost version installed.

Related

Dlangui hello world program exit with non-zero code

I'm new to D and DlangUI, and I'm compiling a hello world app using DlangUI following the official wiki using vscode, I have edited the app.d file and run dub run, it shows Program exited with code -1073741701.
I have tried the following but have no luck:
dub upgrade --force-remove
dub build --force
remove dub.selections.json
Environment:
dmd: v2.100.2-dirty
dub: 1.29.2
os: Windows 10 Professional 21H1 (64bit)
Output of dub run:
bindbc-loader 1.0.1: target for configuration "noBC" is up to date.
bindbc-opengl 1.0.2: target for configuration "dynamic" is up to date.
derelict-util 3.0.0-beta.2: target for configuration "library" is up to date.
derelict-ft 2.0.0-beta.5: target for configuration "library" is up to date.
derelict-sdl2 3.0.0-beta.8: target for configuration "derelict-sdl2-dynamic" is up to date.
inilike 1.2.1: target for configuration "library" is up to date.
isfreedesktop 0.1.1: target for configuration "library" is up to date.
xdgpaths 0.2.5: target for configuration "library" is up to date.
icontheme 1.2.3: target for configuration "library" is up to date.
dlangui 0.9.187: target for configuration "default" is up to date.
helloworld ~master: building configuration "application"...
C:\Users\JinReal\AppData\Local\dub\packages\dlangui-0.9.187\dlangui\src\dlangui\graphics\resources.d(104,8): Deprecation: module `std.xml` is deprecated - Will be removed from Phobos in 2.101.0. If you still need it, go to https://github.com/DigitalMars/undeaD
C:\Users\JinReal\AppData\Local\dub\packages\dlangui-0.9.187\dlangui\src\dlangui\widgets\styles.d(28,16): Deprecation: module `std.xml` is deprecated - Will be removed from Phobos in 2.101.0. If you still need it, go to https://github.com/DigitalMars/undeaD
C:\Users\JinReal\AppData\Local\dub\packages\dlangui-0.9.187\dlangui\3rdparty\dimage\png.d(585,1): Deprecation: Usage of the `body` keyword is deprecated. Use `do` instead.
Linking...
To force a rebuild of up-to-date targets, run again with --force.
Copying files for dlangui...
Running helloworld.exe
Program exited with code -1073741701
Update #1:
Seems that it's a 64 bit build, and now I try a 32 bit build using dub build --arch=x86(as the comments suggest) it shows something different:
Performing "debug" build using D:\env\dmd2\windows\bin\dmd.exe for x86, x86_mscoff.
bindbc-loader 1.0.1: building configuration "noBC"...
derelict-ft 2.0.0-beta.5: building configuration "library"...
derelict-sdl2 3.0.0-beta.8: building configuration "derelict-sdl2-dynamic"...
inilike 1.2.1: building configuration "library"...
isfreedesktop 0.1.1: building configuration "library"...
xdgpaths 0.2.5: building configuration "library"...
icontheme 1.2.3: building configuration "library"...
dlangui 0.9.187: building configuration "default"...
C:\Users\JinReal\AppData\Local\dub\packages\dlangui-0.9.187\dlangui\3rdparty\dimage\png.d(585,1): Deprecation: Usage of the `body` keyword is deprecated. Use `do` instead.
C:\Users\JinReal\AppData\Local\dub\packages\dlangui-0.9.187\dlangui\src\dlangui\graphics\resources.d(104,8): Deprecation: module `std.xml` is deprecated - Will be removed from Phobos in 2.101.0. If you still need it, go to https://github.com/DigitalMars/undeaD
C:\Users\JinReal\AppData\Local\dub\packages\dlangui-0.9.187\dlangui\src\dlangui\widgets\styles.d(28,16): Deprecation: module `std.xml` is deprecated - Will be removed from Phobos in 2.101.0. If you still need it, go to https://github.com/DigitalMars/undeaD
helloworld ~master: building configuration "application"...
C:\Users\JinReal\AppData\Local\dub\packages\dlangui-0.9.187\dlangui\src\dlangui\graphics\resources.d(104,8): Deprecation: module `std.xml` is deprecated - Will be removed from Phobos in 2.101.0. If you still need it, go to https://github.com/DigitalMars/undeaD
C:\Users\JinReal\AppData\Local\dub\packages\dlangui-0.9.187\dlangui\src\dlangui\widgets\styles.d(28,16): Deprecation: module `std.xml` is deprecated - Will be removed from Phobos in 2.101.0. If you still need it, go to https://github.com/DigitalMars/undeaD
C:\Users\JinReal\AppData\Local\dub\packages\dlangui-0.9.187\dlangui\3rdparty\dimage\png.d(585,1): Deprecation: Usage of the `body` keyword is deprecated. Use `do` instead.
Linking...
lld-link: error: unknown directive: EXETYPE
Error: linker exited with status 1
I've read this post and found that there's no sourceFiles-windows entry in it so it doesn't seem to be the same issue.

b2 install command does not run

I want to install Boost.Build, but if I want to run this command like in the tutorial:
D:\boost_1_74_0> ./b2 install --prefix=C:\BoostBuild
Then I get this error message:
D:/boost_1_74_0/tools/build/src/tools\gcc.jam:164: in gcc.init from module gcc
error: toolset gcc initialization:
error: provided command '-w64-mingw32-g++.exe' not found
error: initialized from C:\Users\maxfe\user-config.jam:1
D:/boost_1_74_0/tools/build/src/build\toolset.jam:44: in toolset.using from module toolset
D:/boost_1_74_0/tools/build/src/build\project.jam:1104: in using from module project-rules
C:\Users\username\user-config.jam:1: in modules.load from module user-config
D:/boost_1_74_0/tools/build/src\build-system.jam:255: in load-config from module build-system
D:/boost_1_74_0/tools/build/src\build-system.jam:453: in load-configuration-files from module build-system
D:/boost_1_74_0/tools/build/src\build-system.jam:607: in load from module build-system
D:/boost_1_74_0/tools/build/src/kernel\modules.jam:295: in import from module modules
D:/boost_1_74_0/tools/build/src/kernel/bootstrap.jam:139: in boost-build from module
D:/boost_1_74_0/boost-build.jam:17: in module scope from module
I have installed MinGw-w64.
Can anyone help me with this?
I followed this tutorial: https://www.boost.org/doc/libs/1_74_0/more/getting_started/windows.html
I forgot to edit "user_config.jam", which is in %HOMEDRIVE% or %HOMEPATH%.

Cython: UserWarning: Unknown Extension options: 'include_path'

I have a Cython module that I inherited. I built it once. Then when I go to build it a second time I get the following error:
mhoggan#mhoggan-C02S81PRG8WM:pcl_functions (master=)$ sudo python setup.py build_ext --inplace
/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/extension.py:133: UserWarning: Unknown Extension options: 'include_path'
warnings.warn(msg)
What could be the cause? I am new to Cython and it does not make since why the module would build once, then subsequently give me this error.
Maybe you've used a different version of Cython the last time. Check version with cython --version.
The cythonize() function seems to accept include_path: https://github.com/cython/cython/search?utf8=%E2%9C%93&q=include_path
Are you using Extension or cythonize? For cythonize usage see https://github.com/cython/cython/wiki/enhancements-distutils_preprocessing
Extension() accepts "include_dirs" option:
https://github.com/cztomczak/cefpython/blob/f8286e0ff5abf32242986aca2e7bb8fd3f6a60ff/src/linux/setup/setup.py#L66

Missing Jam file in fresh download of boost

I religiously follow http://www.boost.org/doc/libs/1_61_0/more/getting_started/windows.html.
After downloading and unpacking the 1.61 version of boost, I tried to build it from source with the instruction from section 5.1 in this guide.
So
bootstrap
.\b2
But then I get the error:
error: Unable to load Jamfile.
error: Could not find a Jamfile in directory 'libs/config/checks/architecture'.
error: Attempted to find it with pattern '[Bb]uild.jam [Jj]amfile.v2 [Jj]amfile [Jj]amfile. [Jj]amfile.jam'.
error: Please consult the documentation at 'http://www.boost.org'.
Exactly the same as Trac issue #12173 of boost.
What is going wrong? How can I make bjam find the jam files?
Bit out of date, but I was able to get this working by getting the config submodule:
git submodule update --init libs/config
It seems like the config module is an unlisted prerequisite for some of the other modules.
This error might happen when "bootstrap.jam" is trying to load the modules of the build system from a wrong path.
Make sure that BOOST_BUILD_PATH is set to "boost*/tools/build" and that BOOST_ROOT is unset.
Example of a WRONG config:
libtorrent-rasterbar-1.2.0>set BOOST_BUILD_PATH=..\boost_1_68_0
libtorrent-rasterbar-1.2.0>set BOOST_ROOT=..\boost_1_68_0
libtorrent-rasterbar-1.2.0>b2
Jamroot.jam:1: syntax error at EOF
CXXFLAGS =
LDFLAGS =
OS = NT
building boost from source directory: ..\boost_1_68_0
boost_1_68_0/tools/build/src/build\project.jam:262: in find-jamfile from module project
error: Unable to load Jamfile.
error: Could not find a Jamfile in directory '../boost_1_68_0/libs/config/checks/architecture'.
error: Attempted to find it with pattern '[Bb]uild.jam [Jj]amfile.v2 [Jj]amfile [Jj]amfile. [Jj]amfile.jam'.
error: Please consult the documentation at 'http://www.boost.org'.
boost_1_68_0/tools/build/src/build\project.jam:325: in load-jamfile from module project
boost_1_68_0/tools/build/src/build\project.jam:64: in load from module project
boost_1_68_0/tools/build/src/build\project.jam:89: in load-used-projects from module project
boost_1_68_0/tools/build/src/build\project.jam:75: in load from module project
boost_1_68_0/tools/build/src/build\project.jam:89: in load-used-projects from module project
boost_1_68_0/tools/build/src/build\project.jam:75: in load from module project
boost_1_68_0/tools/build/src/build\project.jam:145: in project.find from module project
boost_1_68_0/tools/build/src\build-system.jam:618: in load from module build-system
..\boost_1_68_0\tools\build\src/kernel\modules.jam:295: in import from module modules
..\boost_1_68_0\tools\build\src/kernel/bootstrap.jam:139: in boost-build from module
..\boost_1_68_0\boost-build.jam:17: in module scope from module
Example of a FIXED config:
libtorrent-rasterbar-1.2.0>set BOOST_BUILD_PATH=..\boost_1_68_0\tools\build
libtorrent-rasterbar-1.2.0>set BOOST_ROOT=
libtorrent-rasterbar-1.2.0>b2
Jamroot.jam:1: syntax error at EOF
CXXFLAGS =
LDFLAGS =
OS = NT
warning: No toolsets are configured.
warning: Configuring default toolset "msvc".
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
...patience...
...found 1058 targets...
...updating 163 targets...
msvc.write-setup-script bin\standalone\msvc\msvc-14.1\msvc-setup.bat
compile-c-c++ bin\msvc-14.1\debug\threading-multi\src\alert.obj
alert.cpp
...

How to install Modular Boost?

Because I need to test some experimental features of Boost, I would like to install Boost from the Modular Boost repository.
I followed the instructions on https://svn.boost.org/trac/boost/wiki/TryModBoost and the b2 command failed:
./b2 headers
/home/wichtounet/src/modular-boost/tools/build/src/build/feature.jam:493: in feature.validate-value-string from module feature
error: "none" is not a known value of feature <optimization>
error: legal values: "off" "speed" "space"
/home/wichtounet/src/modular-boost/tools/build/src/build/property.jam:273: in validate1 from module property
/home/wichtounet/src/modular-boost/tools/build/src/build/property.jam:299: in property.validate from module property
/home/wichtounet/src/modular-boost/tools/build/src/tools/builtin.jam:377: in variant from module builtin
/usr/share/boost-build/site-config.jam:9: in modules.load from module site-config
/home/wichtounet/src/modular-boost/tools/build/src/build-system.jam:249: in load-config from module build-system
/home/wichtounet/src/modular-boost/tools/build/src/build-system.jam:351: in load-configuration-files from module build-system
/home/wichtounet/src/modular-boost/tools/build/src/build-system.jam:524: in load from module build-system
/home/wichtounet/src/modular-boost/tools/build/src/kernel/modules.jam:289: in import from module modules
/home/wichtounet/src/modular-boost/tools/build/src/kernel/bootstrap.jam:139: in boost-build from module
/home/wichtounet/src/modular-boost/boost-build.jam:17: in module scope from module
I tried adding optimization=speed on the command line, but it didn't changed a thing. I tried the master and develop branches. I tried with clang and gcc toolset.
Does someone has an idea how to install Modular Boost ?
Is there some configuration that is necessary (and where) ? Or is there another procedure to follow ?
EDIT: It seems that it comes from the /usr/share/boost-build/site-config.jam file that is probably installed by Gentoo. I need to be able to tell b2 to ignore this file.
I turned out that this was caused by a Gentoo configuration file. I just had to ignore the file with:
./b2 --ignore-site-config
I use modular boost to get all revisions of boost at my fingertips. Together with ccache I can just switch the boost library version at a whim and I use this procedure for this:
export BOOST_VER=boost-1.55.0
git checkout --force "$BOOST_VER"
git submodule foreach 'git checkout --force "$BOOST_VER" || true'
./bootstrap.sh && ./b2 headers
That's after initial cloning as per the documentation:
git clone --recursive git#github.com:boostorg/boost.git modular-boost
My system is
Linux desktop 3.11.0-18-generic #32-Ubuntu SMP Tue Feb 18 21:11:14 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 13.10
Release: 13.10
Codename: saucy
git version 1.8.3.2