Opened 2 weeks ago

Last modified 9 days ago

#66686 assigned defect

boost171 @1.71.0: Build failure universal arm64/x86_64 on M1 Mac

Reported by: nryan9444 Owned by: michaelld (Michael Dickens)
Priority: Normal Milestone:
Component: ports Version:
Keywords: ventura Cc: mascguy (Christopher Nielsen)
Port: boost171

Description (last modified by ryandesign (Ryan Schmidt))

--->  Fetching distfiles for boost171
--->  Attempting to fetch boost_1_71_0.tar.bz2 from https://distfiles.macports.org/boost171
--->  Verifying checksums for boost171                                          
--->  Extracting boost171
--->  Applying patches to boost171
--->  Configuring boost171
--->  Building boost171                                  
Error: Failed to build boost171: command execution failed
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_boost171/boost171/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug.
Error: Processing of port openscad failed
--->  Some of the ports you installed have notes:
  cmake-bootstrap has the following notes:
    To use this bootstrap version of cmake instead of the usual cmake port, add
    the following lines to the Portfile:
    
    depends_build-replace  path:bin/cmake:cmake port:cmake-bootstrap
    configure.cmd          ${prefix}/libexec/cmake-bootstrap/bin/cmake
  dbus has the following notes:
    Startup items (named 'dbus-system, dbus-session') have been generated that
    will aid in starting dbus with launchd. They are disabled by default.
    Execute the following command to start them, and to cause them to launch at
    startup:
    
        sudo port load dbus
  libpsl has the following notes:
    libpsl API documentation is provided by the port 'libpsl-docs'.
  lzma has the following notes:
    The LZMA SDK program is installed as "lzma_alone", to avoid conflict with
    LZMA Utils
  python310 has the following notes:
    To make this the default Python or Python 3 (i.e., the version run by the
    'python' or 'python3' commands), run one or both of:
    
        sudo port select --set python python310
        sudo port select --set python3 python310
  qt4-mac has the following notes:
    Users experiencing graphics glitches on newer OS versions (10.13 and up) can
    experiment with different graphics drawing systems that can be set in the
    Interface tab of the /Applications/MacPorts/Qt4/qtconfig.app utility. Raster
    mode is the preferred mode but is not compatible with all non-standard
    widget styles. Keep an eye on the Fonts setting before saving!
(base) nolanryan@nolans-air ~ % port contents openscad
Port openscad is not installed.
(base) nolanryan@nolans-air ~ % 

Attachments (2)

OPEN SCAD .docx (14.1 KB) - added by nryan9444 2 weeks ago.
terminal
boost-171-fail-main.log (1.7 MB) - added by kencu (Ken) 9 days ago.

Download all attachments as: .zip

Change History (8)

Changed 2 weeks ago by nryan9444

Attachment: OPEN SCAD .docx added

terminal

comment:1 Changed 2 weeks ago by ryandesign (Ryan Schmidt)

Cc: mascguy added
Description: modified (diff)
Keywords: ventura added
Owner: set to michaelld
Port: boost171 added; openscad removed
Status: newassigned
Summary: Openscad not loading ventura 13.1boost171 @1.71.0: Build failure
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_boost171/boost171/main.log for details.

Please attach that main.log file.

comment:2 Changed 9 days ago by kencu (Ken)

I tried to build openscad on my M1 just now, and ran into the same boost171 error, so I will post up my main.log, which is likely similar to what you ran into.

Last edited 9 days ago by kencu (Ken) (previous) (diff)

Changed 9 days ago by kencu (Ken)

Attachment: boost-171-fail-main.log added

comment:3 Changed 9 days ago by kencu (Ken)

It looks like this might be the error, when building boost171 +universal on an M1 Mac:

:info:build darwin.link.dll bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/libboost_fiber-mt.dylib
:info:build     "/usr/bin/clang++" -dynamiclib -Wl,-single_module -install_name "/opt/local/libexec/boost/1.71/lib/libboost_fiber-mt.dylib"  -o "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/libboost_fiber-mt.dylib" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/algo/algorithm.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/algo/round_robin.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/algo/shared_work.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/algo/work_stealing.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/barrier.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/condition_variable.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/context.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/fiber.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/future.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/mutex.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/properties.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/recursive_mutex.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/recursive_timed_mutex.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/timed_mutex.o" "bin.v2/libs/fiber/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/scheduler.o" "bin.v2/libs/context/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/libboost_context-mt.dylib" "bin.v2/libs/filesystem/build/darwin-14.0.0/release/architecture-combined/pch-off/threading-multi/visibility-hidden/libboost_filesystem-mt.dylib"      -headerpad_max_install_names -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -Wl,-dead_strip -no_dead_strip_inits_and_terms -L/opt/local/lib -Wl,-headerpad_max_install_names -Wl,-rpath,/opt/local/lib/libgcc -stdlib=libc++ -arch x86_64 -arch arm64 
:info:build ld: warning: option -no_dead_strip_inits_and_terms is obsolete and being ignored
:info:build Undefined symbols for architecture x86_64:
:info:build   "_jump_fcontext", referenced from:
:info:build       boost::fibers::context_initializer::context_initializer() in context.o
:info:build       boost::fibers::dispatcher_context::dispatcher_context(boost::context::preallocated const&, boost::context::basic_fixedsize_stack<boost::context::stack_traits>&&) in context.o
:info:build       void boost::context::detail::fiber_entry<boost::context::detail::fiber_record<boost::context::fiber, boost::context::basic_fixedsize_stack<boost::context::stack_traits>&, std::__1::__bind<boost::context::fiber (boost::fibers::dispatcher_context::*)(boost::context::fiber&&), boost::fibers::dispatcher_context*, std::__1::placeholders::__ph<1> const&> > >(boost::context::detail::transfer_t) in context.o
:info:build       boost::intrusive_ptr<boost::fibers::context>::reset() in fiber.o
:info:build       boost::fibers::scheduler::release_terminated_() in scheduler.o
:info:build       boost::intrusive_ptr<boost::fibers::context>::~intrusive_ptr() in scheduler.o
:info:build   "_make_fcontext", referenced from:
:info:build       boost::fibers::dispatcher_context::dispatcher_context(boost::context::preallocated const&, boost::context::basic_fixedsize_stack<boost::context::stack_traits>&&) in context.o
:info:build   "_ontop_fcontext", referenced from:
:info:build       boost::fibers::context::~context() in context.o
:info:build       boost::context::fiber::~fiber() in context.o
:info:build       boost::fibers::context::resume() in context.o
:info:build       boost::fibers::context::resume(std::__1::unique_lock<boost::fibers::detail::spinlock_ttas>&) in context.o
:info:build       boost::fibers::context::resume(boost::fibers::context*) in context.o
:info:build       boost::fibers::context::suspend_with_cc() in context.o
:info:build       boost::fibers::context_initializer::context_initializer() in context.o
:info:build       ...
:info:build ld: symbol(s) not found for architecture x86_64
:info:build clang: error: linker command failed with exit code 1 (use -v to see invocation)

comment:4 Changed 9 days ago by kencu (Ken)

Summary: boost171 @1.71.0: Build failureboost171 @1.71.0: Build failure universal arm64/x86_64 on M1 Mac

comment:5 Changed 9 days ago by kencu (Ken)

boost does it's own very specific things when building universal, with lots and lots of custom code rather than just follow the build system... so to fix this would take some digging.

might be better to find whatever is calling in boost171 and tell it to use some newer boost that will build universal (assuming there is one)?

comment:6 Changed 9 days ago by kencu (Ken)

apparently those symbols are written in assembly language, and the files have to be specifically added to the build based on the build configuration.

I'm not at the moment certain how this would work -- perhaps if it works in newer boost versions we could see what they did to fix this.

Note: See TracTickets for help on using tickets.