Boost logo

Boost :

Subject: Re: [boost] clang-win, (Thin)LTO this time
From: degski (degski_at_[hidden])
Date: 2018-11-06 12:17:27

On Mon, 5 Nov 2018 at 18:46, Peter Dimov via Boost <boost_at_[hidden]>

> I was going to look into this but got sidetracked, sorry.

No worries.

Try the current develop.

 I did, and I've use this project-config:

import option ;
using clang-win : : "C:\\Program Files\\LLVM\\bin\\clang-cl.exe"
-fuse-ld=lld :

Note that -fuse-ld=lld in the above is not quoted, but it comes out like
[as an example]:

"C:\Program Files\LLVM\bin\clang-cl.exe" "-fuse-ld=lld" -m64

So, -fuse-ld=lld is quoted in the command. It appears [looks like]
clang-cl.exe gobbles the quotes, though, i.e. it seems to work.

There are some options that are passed, that are linux, like
template_depth, which is set to 255 [while the default is 1024]. These are
ignored, and in the case of template_depth, that seems better.

Then I notice this:

         "C:\Program Files\LLVM\bin\clang-cl.exe" "-fuse-ld=lld" -m64 /link
/incremental:no /DEBUG /subsystem:console

lld-link: error: undefined symbol: __imp_CoInitializeEx

So it looks like ole32.lib is not linked in, or that lld-link cannot link
it [for whatever reason].

There's probably more small stuff, but in general, it looks pretty good. I
also tried to link to one of the thus compiled static libs (boost_random),
that works.

It would be cool and helpful if the output [of the build-process] be
reduced. I'm on an SSD, my guess is that the bottle-neck in the build
process is the console output [most of the time]. I'm also looking at an
100'000 line log file, mostly "copy x to y" or "mklink x", it's hard to
spot problems.

Thanks, Peter, we're getting oh so close.


*“If something cannot go on forever, it will stop" - Herbert Stein*

Boost list run by bdawes at, gregod at, cpdaniel at, john at