Skip to content
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

Errors using emscripten toolset on windows. #87

Closed
jzmaddock opened this issue Sep 9, 2021 · 2 comments · Fixed by #310
Closed

Errors using emscripten toolset on windows. #87

jzmaddock opened this issue Sep 9, 2021 · 2 comments · Fixed by #310
Labels
bug Something isn't working

Comments

@jzmaddock
Copy link

Environment and version details

  • Operating System+version: Windows 10
  • Compiler+version: Emscripten github/main
  • Shell: Windows command shell
  • B2 Version: B2 4.6-git

Brief problem description

If I cd into libs/config/test and do

../../../b2 config_info toolset=emscripten

I get:

D:\compilers\emsdk\python\3.7.4-pywin32_64bit\python.exe: can't open file 'D:\data\boost\boost\libs\config\test\\emcc.py': [Errno 2] No such file or directory

That's solved by adding:

using emscripten : : emcc.py ;

to my user-config.jam

But then I see:

D:/data/boost/boost/tools/build/src/build\property.jam:812: in [email protected] from module object(property-map)@37
error: Ambiguous key <abi>ms <asynch-exceptions>off <auto-index-internal>off <auto-index-no-duplicates>off <auto-index-section-names>on <auto-index-verbose>off <auto-index>off <binary-format>pe <closure>off <context-impl>fcontext <coverage>off <debug-store>object <debug-symbols>on <define>BOOST_ALL_NO_LIB=1 <doxygen.doxproc.index>no <doxygen.processor>xsltproc <embed-manifest-via>mt <embed-manifest>on <embind>off <exception-handling>on <extern-c-nothrow>off <format>html <hardcode-dll-paths>true <host-os>windows <include>../../.. <inlining>off <install-dependencies>off <link-optimization>off <link>shared <local-visibility>hidden <main-target-type>OBJ <midl-robust>yes <midl-stubless-proxy>yes <optimization>off <os>NT <pch>on <preserve-test-targets>on <profiling>off <python-debugging>off <python>2.7 <relevant>address-model <relevant>address-sanitizer <relevant>architecture <relevant>c++-template-depth <relevant>cflags <relevant>coverage <relevant>cxxflags <relevant>cxxstd <relevant>cxxstd-dialect <relevant>debug-symbols <relevant>define <relevant>define:<relevant>toolset <relevant>exception-handling <relevant>flags <relevant>force-include <relevant>include <relevant>inlining <relevant>instruction-set <relevant>leak-sanitizer <relevant>link <relevant>link:<relevant>toolset <relevant>local-visibility <relevant>lto <relevant>lto-mode <relevant>optimization <relevant>pch <relevant>pch-file <relevant>profiling <relevant>rtti <relevant>stdlib <relevant>target-os <relevant>thread-sanitizer <relevant>threading <relevant>threading:<relevant>runtime-link <relevant>threading:<relevant>toolset <relevant>toolset <relevant>toolset-gcc:version <relevant>undefined-sanitizer <relevant>warnings <relevant>warnings-as-errors <response-file>auto <rtti>on <runtime-debugging>on <runtime-link>shared <stdlib>native <strip>off <suppress-import-lib>false <symlink-location>project-relative <tag>@Jamfile<D:\data\boost\boost>%Jamfile<D:\data\boost\boost>.tag <target-os>windows <target>object(file-target)@10666 <testing.execute>on <threadapi>win32 <threading>multi <toolset>emscripten <user-interface>console <variant>debug <vectorize>off <visibility>hidden <warnings-as-errors>off <warnings>on <windows-api>desktop <xsl:param>boost.defaults=Boost
D:/data/boost/boost/tools/build/src/build\type.jam:334: in generated-target-ps from module type
D:/data/boost/boost/tools/build/src/build\type.jam:271: in type.generated-target-suffix from module type
D:/data/boost/boost/tools/build/src/build\virtual-target.jam:531: in virtual-target.add-prefix-and-suffix from module virtual-target
D:/data/boost/boost/tools/build/src/build\virtual-target.jam:490: in _adjust-name from module object(file-target)@10666
D:/data/boost/boost/tools/build/src/build\virtual-target.jam:287: in abstract-file-target.__init__ from module object(file-target)@10666
D:/data/boost/boost/tools/build/src/build\virtual-target.jam:583: in class@file-target.__init__ from module object(file-target)@10666
D:/data/boost/boost/tools/build/src/kernel\class.jam:90: in class.new from module class
D:/data/boost/boost/tools/build/src/build\generators.jam:582: in generated-targets from module object(C-compiling-generator)@287
D:/data/boost/boost/tools/build/src/build\generators.jam:468: in construct-result from module object(C-compiling-generator)@287
D:/data/boost/boost/tools/build/src/build\generators.jam:418: in run-really from module object(C-compiling-generator)@287
D:/data/boost/boost/tools/build/src/build\generators.jam:392: in [email protected] from module object(C-compiling-generator)@287
D:/data/boost/boost/tools/build/src/build\generators.jam:1025: in try-one-generator-really from module generators
D:/data/boost/boost/tools/build/src/build\generators.jam:1087: in try-one-generator from module generators
D:/data/boost/boost/tools/build/src/build\generators.jam:1325: in construct-really from module generators
D:/data/boost/boost/tools/build/src/build\generators.jam:1411: in generators.construct from module generators
D:/data/boost/boost/tools/build/src/build\targets.jam:1615: in construct from module object(typed-target)@2055
D:/data/boost/boost/tools/build/src/build\targets.jam:1364: in [email protected] from module object(typed-target)@2055
D:/data/boost/boost/tools/build/src/build\targets.jam:812: in generate-really from module object(main-target)@10645
D:/data/boost/boost/tools/build/src/build\targets.jam:784: in [email protected] from module object(main-target)@10645
D:/data/boost/boost/tools/build/src/build\targets.jam:934: in targets.generate-from-reference from module targets
D:/data/boost/boost/tools/build/src/build\configure.jam:389: in find-builds-raw from module configure
D:/data/boost/boost/tools/build/src/build\configure.jam:470: in configure.find-builds from module configure
D:/data/boost/boost\boostcpp.jam:618: in boostcpp.deduce-address-model from module boostcpp
D:/data/boost/boost/tools/build/src/kernel\modules.jam:107: in modules.call-in from module Jamfile<D:\data\boost\boost>
D:/data/boost/boost/tools/build/src/util\indirect.jam:105: in indirect.call from module indirect
D:/data/boost/boost/tools/build/src/build\property.jam:132: in property.evaluate-conditionals-in-context from module property
D:/data/boost/boost/tools/build/src/build\targets.jam:1088: in evaluate-requirements from module targets
D:/data/boost/boost/tools/build/src/build\targets.jam:1122: in common-properties2 from module targets
D:/data/boost/boost/tools/build/src/build\targets.jam:1018: in targets.common-properties from module targets
D:/data/boost/boost/tools/build/src/build\targets.jam:1314: in [email protected] from module object(typed-target)@10473
D:/data/boost/boost/tools/build/src/build\targets.jam:812: in generate-really from module object(main-target)@10612
D:/data/boost/boost/tools/build/src/build\targets.jam:784: in [email protected] from module object(main-target)@10612
D:/data/boost/boost/tools/build/src\build-system.jam:805: in load from module build-system
D:/data/boost/boost/tools/build/src/kernel\modules.jam:295: in import from module modules
D:/data/boost/boost/tools/build/src/kernel/bootstrap.jam:139: in boost-build from module
D:/data/boost/boost/boost-build.jam:17: in module scope from module

The aim here is to get emscripten running as part of Boost.Config's CI suite.

@jzmaddock jzmaddock added the bug Something isn't working label Sep 9, 2021
@grafikrobot
Copy link
Member

Did you try using the full path to emcc.py?

using emscripten : : D:\compilers\emsdk\...full_path...\emcc.py ;

@mmakhalaf
Copy link

mmakhalaf commented Dec 29, 2021

I get these errors as well when I try to build boost with toolset=emscripten.

If I change emcc to emcc.py in src/tools/emscripten.jam, then I stop getting the first error (though I have to admit I have no idea how the build system works). I still get error: Ambiguous key error. Using the full path also gets rid of the first error about emcc not being found but the second error is still there.

On Windows 11, .\bootstrap.bat then .\b2.exe toolset=emscripten using B2 4.7-git (which ships with Boost 1.78) and the same using the main branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants