Boost logo

Boost :

From: Sal Pamukcu (salimp2009_at_[hidden])
Date: 2022-03-20 16:40:51


On Fri, Mar 18, 2022 at 1:53 AM Andrey Semashev via Boost <
boost_at_[hidden]> wrote:

> On 3/18/22 00:26, Sal Pamukcu via Boost wrote:
> > On Thu, Mar 17, 2022 at 11:24 PM Andrey Semashev via Boost <
> > boost_at_[hidden]> wrote:
> >
> >> On 3/17/22 22:31, Sal Pamukcu via Boost wrote:
> >>> - Compiled on Win 11 MSVC 2002 x64 toolchain with c++20 using
> >>> b2 cxxstd=20 --build-type=complete stage
> >>>
> >>> failed 5 target ; (mostly related to python)
> >>> The full built message are on gist ;
> >>> boost179b1_MSVC (github.com)
> >>> <https://gist.github.com/salimp2009/074cf168b4dd1231aa92fcc3845e2df7>
> >>>
> >>> I will do another build on windows with gcc-11.2 with MSys;
> >>>
> >>> ```
> >>> ...failed updating 5 targets...
> >>> ...skipped 9 targets...
> >>> ...updated 8376 targets...
> >>> ```
> >>>
> >>> Failures are like this ;
> >>> `...failed msvc.link.dll
> >>>
> >>
> bin.v2\libs\python\build\msvc-14.3\debug\address-model-32\cxxstd-20-iso\python-3.10\threading-multi\boost_python310-vc143-mt-gd-x32-1_79.dll
> >>>
> >>
> bin.v2\libs\python\build\msvc-14.3\debug\address-model-32\cxxstd-20-iso\python-3.10\threading-multi\boost_python310-vc143-mt-gd-x32-1_79.lib
> >>>
> >>
> bin.v2\libs\python\build\msvc-14.3\debug\address-model-32\cxxstd-20-iso\python-3.10\threading-multi\boost_python310-vc143-mt-gd-x32-1_79.pdb...`
> >>
> >> Looks like the problem is that you're building 32-bit Boost.Python and
> >> linking with 64-bit Python libraries. I'm not sure if Boost.Python is
> >> supposed to find the correct libraries or this is just a user
> >> configuration error.
> >
> > Do you mean my configuration mistake;
> > i installed python 3.10 64 bit
> > and checked from MSVC VS 2022 64 bit command line using this ;
> > It looks like my Python is 64 bit;
> >
> > C:\Program Files\Microsoft Visual Studio\2022\Community>
> > C:\Program Files\Microsoft Visual Studio\2022\Community>python
> > Python 3.10.0 (tags/v3.10.0:b494f59, Oct 4 2021, 19:00:18) [MSC v.1929
> 64
> > bit (AMD64)] on win32
> > Type "help", "copyright", "credits" or "license" for more information.
> >>>> import struct
> >>>> version = struct.calcsize("P")*8
> >>>> print(version)
> > 64
> >>>>
> >
> > is there a way to configure when building with b2
> > I used this ; b2 cxxstd=20 --build-type=complete stage
>
> By default both 32 and 64-bit Boost binaries are built. To build only
> 64-bit binaries you can add address-model=64 to the b2 command line. If
> you want to build 32-bit libraries, use address-model=32 and also make
> sure 32-bit Python libraries are found by the build process.
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
>

I did another build on Windows 11 ; this time using gcc-11.2 (via MSys2
MinGW), c++20
I did 2 runs one on command line and one on x64 Native Tool MSCV 2022
Also used address-model=64 to avoid Python 32-bit
No errors but compiled way less files this time ; typically it was around
~8000+
this time "...updated 3693 targets.."
command line i used ;
b2 cxxstd=20 address-model=64 toolset=gcc --build-type=complete stage

as usual got warning for auto_ptr and this one ;

C:/msys64/mingw64/include/c++/11.2.0/ext/new_allocator.h:145:26: warning:
'void operator delete(void*, std::size_t)' called on unallocated object
'boost::wave::util::SimpleStringStorage<char, std::allocator<char>
>::emptyString_' [-Wfree-nonheap-object]
  145 | ::operator delete(__p
      | ~~~~~~~~~~~~~~~~~^~~~
  146 | #if __cpp_sized_deallocation
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  147 | , __t * sizeof(_Tp)
      | ~~~~~~~~~~~~~~~~~~~
  148 | #endif
      | ~~~~~~
  149 | );

If needed I can put the whole build outputs on gist.

Only one question is it normal to use address-model=64 or should this be
detected thru b2 or CMake and if it causes any other needed
libraries skipped because there was quite a bit of difference in the
updated amount

Salim Pamukcu


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk