|
Boost : |
From: Jeff Trull (linmodemstudent_at_[hidden])
Date: 2022-03-20 17:21:18
On Sun, Mar 20, 2022 at 9:41 AM Sal Pamukcu via Boost <boost_at_[hidden]>
wrote:
> 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.
>
This looks like the same issue as
https://github.com/boostorg/wave/issues/159.
I think it's a new analysis in gcc 11 that we haven't seen before (and
therefore not
a regression).
>
> 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
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
>
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk