Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Spot
Spot
Commits
050ea69f
Commit
050ea69f
authored
Apr 03, 2011
by
Alexandre Duret-Lutz
Browse files
* HACKING (command): Some notes about link-time optimizations.
parent
30f00584
Changes
2
Hide whitespace changes
Inline
Side-by-side
ChangeLog
View file @
050ea69f
2011-04-03 Alexandre Duret-Lutz <adl@lrde.epita.fr>
* HACKING (command): Some notes about link-time optimizations.
2011-04-03 Alexandre Duret-Lutz <adl@lrde.epita.fr>
* configure.ac: Pass CXXFLAGS/CFLAGS/CPPFLAGS debug/optimization
...
...
HACKING
View file @
050ea69f
...
...
@@ -114,6 +114,34 @@ Finally generate a coverage report in HTML:
This should create the directory html/.
Link-time optimizations
-----------------------
This is currently (April 2011) tricky to setup, because the
toolchain is not mature enough.
You need:
1) a version of GCC with gold and pluing linker enabled.
2) a version of Libtool that knows how to deal with
-flto flags (Libtool 2.4 will not work -- currently only
the development version does.)
3) use static libraries instead of shared libraries.
Here are example options to pass to configure:
./configure CC=gcc-4.6 CXX=g++-4.6 \
--disable-devel --disable-debug \
CFLAGS='-flto' CXXFLAGS='-flto' LDFLAGS='-fuse-linker-plugin' \
--disable-shared --enable-static
Using --disable-debug prevents the '-g' flag to be passed to the
compiler, which seems to help avoiding some internal compiler errors.
Some binaries (like ltl2tgba) currently fail to compile (internal
compiler error), while most others (like randtgba, dve2check, randltl,
...) do fine.
Coding conventions:
===================
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment