From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergio Gonzalez Monroy Subject: Re: [PATCH v2 4/4] Link apps/DSOs against EXECENV_LDLIBS with --as-needed Date: Thu, 9 Oct 2014 10:23:21 +0100 Message-ID: <20141009092321.GA23978@sivswdev02.ir.intel.com> References: <1412265386-26291-1-git-send-email-sergio.gonzalez.monroy@intel.com> <1412592755-3370-1-git-send-email-sergio.gonzalez.monroy@intel.com> <1412592755-3370-5-git-send-email-sergio.gonzalez.monroy@intel.com> <1449590.uzPBnEWXQD@xps13> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: dev-VfR2kkLFssw@public.gmane.org To: Thomas Monjalon Return-path: Content-Disposition: inline In-Reply-To: <1449590.uzPBnEWXQD@xps13> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" On Wed, Oct 08, 2014 at 05:38:52PM +0200, Thomas Monjalon wrote: > Please could you explain why patch is needed? > Hi Thomas, Basically this patch just adds missing dependencies to DPDK DSOs. so the DL knows about them. As an example, if we were to build an application against DPDK without adding the libs defined in EXECENV_LDLIBS: -- pre-patch: LD test test_red.o: In function `ovfl_test1': test_red.c:(.text+0x1ac6): undefined reference to `log' test_red.c:(.text+0x1ad3): undefined reference to `ceil' test_red.o: In function `perf2_test': test_red.c:(.text+0x2314): undefined reference to `pow' test_red.o: In function `func_test3': test_red.c:(.text+0x28d7): undefined reference to `pow' test_red.o: In function `func_test6': test_red.c:(.text+0x324c): undefined reference to `pow' dpdk/x86_64-native-linuxapp-gcc/lib/libintel_dpdk.so: undefined reference to `dlopen' dpdk/x86_64-native-linuxapp-gcc/lib/libintel_dpdk.so: undefined reference to `log2' dpdk/x86_64-native-linuxapp-gcc/lib/libintel_dpdk.so: undefined reference to `dlerror' dpdk/x86_64-native-linuxapp-gcc/lib/libintel_dpdk.so: undefined reference to `round' -- post-patch: LD test /usr/bin/ld: test_red.o: undefined reference to symbol 'log@@GLIBC_2.2.5' /usr/bin/ld: note: 'log@@GLIBC_2.2.5' is defined in DSO /lib64/libm.so.6 so try adding it to the linker command line /lib64/libm.so.6: could not read symbols: Invalid operation Thanks, Sergio > -- > Thomas