Boost logo

Boost-Build :

From: pbristow_at_[hidden]
Date: 2020-04-16 15:19:19


> -----Original Message-----
> From: Steven Watanabe <watanabesj_at_[hidden]>
> Sent: 16 April 2020 12:04
> To: Edward Diener via Boost-build <boost-build_at_[hidden]>
> Subject: Re: [Boost-build] Meaning of gcc-mingw toolset
>
> AMDG
>
> On 4/15/20 4:45 AM, Edward Diener via Boost-build wrote:
> > In the multiprecision testing jamfile there is a line which has the
> > requirement:
> >
> > <toolset>gcc-mingw:<cxxflags>-Wa,-mbig-obj
> >
> > I do not see a toolset called gcc-mingw nor do I see a subfeature of
> > the gcc toolset called mingw.
>
> The subfeature is called flavor.
>
> > I do realize that the gcc toolset has support for mingw gcc on
> > Windows, which I use myself in my user-config.jam with the plain
> > designation of:
> >
> > using gcc : nnn : etc ;
> >
> > but the nnn is always a version number, like 9.3. The gcc.jam picks up
> > that this is mingw-w64/gcc implementation internally and works fine
> > with it. But whatever '<toolset>gcc-mingw' is supposed to mean it does
> > not applu to my "toolset=gcc-nnn' when I run the test.
>
> What is the path component for the toolset? It should be gcc-mingw-nnn.
> Otherwise the detection for mingw isn't working.
> Also, I recall that there used to be problems if you have both mingw and non-
> mingw versions of gcc. I don't remember whether that was ever fixed.

Sadly I can't get this to work. Perhaps I have misunderstood what you suggested.

      [ run floating_point_examples.cpp no_eh_eg_support : : : <toolset>gcc-mingw-10.0.1:<cxxflags>\"-Wa,-mbig-obj\" ] # See note above.

I:\boost\libs\multiprecision\example>b2 -a -d2 toolset=gcc-mingw-10.0.1 floating_point_examples > .fp_examples_gccmingw10.0.1_16apr2020.log

I:/boost/tools/build/src/tools\gcc.jam:203: in gcc.init from module gcc
error: toolset gcc initialization:
error: version 'mingw-10.0.1' requested but 'g++-mingw-10.0.1' not found and version '9.2.0' of default 'g++' does not match
error: initialized from ...
I:/boost/tools/build/src/build\toolset.jam:44: in toolset.using from module toolset

I have confirmed that GCC 10.0.1 is my 'default' version - 1st in the user-config.jam

gcc.compile.c++ ..\..\..\bin.v2\libs\multiprecision\example\floating_point_examples.test\gcc-10.0.1\debug\threading-multi\visibility-hidden\floating_point_examples.o

    "C:/Program Files/mingw-w64/mingw-w64-x86_64-10.0.1-snapshot20200223-7.0.0-r1/mingw64/bin/g++.exe" -fvisibility-inlines-hidden -m64 -mthreads -O0 -fno-inline -Wall -g -fvisibility=hidden -Wno-missing-braces -DBOOST_ALL_NO_LIB=1 -I"..\..\.." -I"..\include" -c -o "..\..\..\bin.v2\libs\multiprecision\example\floating_point_examples.test\gcc-10.0.1\debug\threading-multi\visibility-hidden\floating_point_examples.o" "floating_point_examples.cpp"

So uses GCC 10.0.1 but does not pass the
  <toolset>gcc-mingw-10.0.1:<cxxflags>\"-Wa,-mbig-obj\"
  and so the assembly fails, as expected when not mingw.

Suggestions?

Thanks, as ever.

Paul


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk