[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [FTBFS] PolyORB debug under kfreebsd



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Le 25/06/2012 00:32, Nicolas Boulenguez a écrit :
<snip>

> It ignores libraries that do not define at least a symbol needed by
> previous objects. The --as-needed options is intended for that, see
> http://www.gentoo.org/proj/en/qa/asneeded.xml. Two sections deal with
> the kind of problem you are encountering:
>  - Failure in final linking, undefined symbols
>  - Importance of linking order
> 
> I would advice to remove the flag from debian/rules:
> ## (with a trick because the comma also is a Make separator)
> comma := ,
> LDFLAGS := $(filter-out -Wl$(comma)--as-needed,$(LDFLAGS))
> ##
> so that you can activate it again once the problem it reveals is
> solved. If the problem is that
> - dh_shlibdeps warns about polyorb depending on a library and not
>   using any of its symbols, or
> - your package fails to build from scratch with the GNU gold linker,
> you may ignore it happily until the freeze happens.

Thanks, I'll remove it and "see" how the system behave then.

> In the long run, the right patch is to order the -l options during the
> linker invokation. This can be tricky: even a correct gpr file
> mixes -lxxx flags (LDLIBS) and -Wlxxxx flags (LDFLAGS). Replacing
> gnatmake with gprbuild may sometimes solve the problem, as the latter
> generates a different (better?) linker invokation, and understands
> some workarounds as described in

One concern I have is that I'm using po_gnatdist tool to build
distributed application, I'll have to sort out if it rely on gnatmake or
gprbuild (command line shows "gnat compile" and "gnat make")

> ## http://docs.adacore.com/gprbuild-docs/html/gprbuild_ug.html
> Library_Options:
>     This attribute may be used to specify additional switches (last switches) when linking a shared library.
> Leading_Library_Options:
>     This attribute, that is taken into account only by gprbuild, may be used to specified leading options (first switches) when linking a shared library.
> 
> Linker.Linker_Options:
>     This attribute specifies additional switches to be given to the linker when linking an executable. It is ignored when defined in the main project and taken into account in all other projects that are imported directly or indirectly. These switches complement the Linker.Switches defined in the main project. This is useful when a particular subsystem depends on an external library: adding this dependency as a Linker_Options in the project of the subsystem is more convenient than adding it to all the Linker.Switches of the main projects that depend upon this subsystem.
> ##
> 
> PS: This is unrelated, but you should insert $(CPPFLAGS) before
> $(CFLAGS) in the two lines compiling the .c file in debian/rules.
> Else, log checkers will complain that hardening flags like
> "-DFORTIFY…" are missing.

Thanks for the hint, I'll try to implement it.

> 

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQIcBAEBAgAGBQJP6ZgdAAoJEG3iFwasTcfaGUoP/1O1zRf3TxgI2zM6zBQi2Z5N
lsNXZ659hHYnaejfXCQ3SdUSRUOulGKcPPLVyDr5dj25Dwvu3eAlU0nosXxo9CJf
OoHNKg8Okf5Sf/ylPrUYYnxjMq5u3O0/12uWzT64P09nvo+pYUM5BFa+NsVgCtZu
O/K9a9/1bhb8NiNhoL6d9/BC+VKVI+g5KSaGK+vdBoV5ChYZeuHwY3g6oYTi2upu
z98re6xDBFXps/Qn8npNRAU94NjuxNLlPNgC3e0WsVlc4+tArYxb5LBvZZVEs8af
de3hAxe9I438MZdIo5be4G7TvfK+AFDxlqLKtKXYyR0/9hfUV9f1TcMumyKSZCoW
+7yEHwjEM1Io6gWQWfy9+oUaP3YLLWMd35Hdj95ypXYjv8j93xQnXqDlypIiY83S
eDo8vWL0LR6149lzsDJQSGigtOlsYVvZgKaPNLouvX79ukRJM2jh805CpXVVDvaT
8ij8Yb+/GEiSctcedlDG/FS3D28TSl5Az2KHsnlkQeNQKoRfvmFhGyrePGeyF/sG
WcYS8LioyK2tFqrpiDqnAD6MNO6fnpyLg6MUEhpHq7rdJqbagisXBAqRR2R4PFZA
d+F2KAp3aIOB4ME+Pt17nBTO8a7WO97Fx6pX52ZUFNP9aqYUef0jGz5K6nmBcHv8
+nDCq4OQTkeTZykqeEK/
=2yGD
-----END PGP SIGNATURE-----


Reply to: