Date: prev next · Thread: first prev next last
2016 Archives by date, by thread · List index


Hi,
I'm experimenting a bit with LTO using clang and lld (the new LLVM linker).
I'm able to build a decent fraction of libreoffice if I invoke
autogen.sh like this:

./autogen.sh CC=~/work/llvm/build-release/bin/clang
CXX=~/work/llvm/build-release/bin/clang++
AR=~/work/llvm/build-release/bin/llvm-ar RANLIB=/usr/bin/true
LDFLAGS="-fuse-ld=lld" CFLAGS="-flto" CXXFLAGS="-flto" --without-java
--without-help --without-myspell-dicts --disable-liblangtag
--with-system-curl --with-system-lcms2

(please note that as long as I'm using the LLVM tools I don't need
plugin(s) as binutils does).

I set up my PATH so that ld symlinks to lld.

$ ld --version
LLD 3.9 (https://llvm.org/svn/llvm-project/lld/trunk 273771)

After some librabries/executables are built/linked successfully I hit
the following:

[build DEP] LNK:Library/libbiblo.so
[build LNK] Library/libbiblo.so
/home/davide/lto_experiments/libreoffice/external/coinmp/ExternalPackage_coinmp.mk:31:
*** file 
/home/davide/lto_experiments/libreoffice/workdir/UnpackedTarball/coinmp/Cbc/src/.libs/libCbc.so.3.8.8
does not exist in the tarball.  Stop.
make[1]: *** Waiting for unfinished jobs....
Makefile:254: recipe for target 'build' failed
make: *** [build] Error 2
```

$ find . -name "libCbc.so*"
$

So I decided to build libCbc by myself going in the correct directory
and invoking make:

$ cd ./workdir/UnpackedTarball/coinmp/Cbc/ && ./configure && make
[...]

but still the build fails with the same error.
Any ideas why the library is not built? Is this a bug in LLVM or in
the build system?

As a side note, I'm able to finish successfully a non-LTO build with clang+lld.

Thanks!

--
Davide

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.