]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
notes.texi: Specify -lasan with -fsanitize=address in g++
authorIleana Dumitrescu <ileanadumitrescu95@gmail.com>
Wed, 13 Mar 2024 17:08:54 +0000 (19:08 +0200)
committerIleana Dumitrescu <ileanadumitrescu95@gmail.com>
Wed, 13 Mar 2024 17:08:54 +0000 (19:08 +0200)
When using the flag -fsanitize=address with g++, the user should also
specify -lasan to ensure linking occurs correctly. libtool uses
-nostdlib, and gcc implicitly includes -lasan when -fsanitize=address
is used. However, g++ does not implicitly include -lasan. The
documentation has been updated to reflect this information rather than
adding the -lasan flag to libtool.

* doc/notes.texi: Document that the user should pass -lasan.

doc/notes.texi

index 1fa8a0b912680ff46c52c6ab5196b9672c77011f..a6cd1b9069d54e9a5603f5a211374a5484d5d56d 100644 (file)
@@ -26,6 +26,12 @@ For C++ code with templates, it may be necessary to specify the way the compiler
 will generate the instantiations.  For Portland pgCC version5, use
 @code{CXX='pgCC --one_instantiation_per_object'} and avoid parallel @command{make}.
 
+@item
+For C++ code, it may be neccesary to specify a library if it is a dependency
+of a link/compile flag. For example in GNU G++, if you want to use
+@code{-fsanitize=address} you need to to specify the @code{-lasan} library,
+like so: @code{g++ -o libx.la -fsanitize=address -lasan -rpath [...]}.
+
 @item
 On Darwin, for C++ code with templates you need two level shared libraries.
 Libtool builds these by default if @env{MACOSX_DEPLOYMENT_TARGET} is set to