Re: Debugging EAL PCI / Driver Init
From: Matthew Hall <hidden>
Date: 2014-08-02 16:46:00
On Sun, Aug 03, 2014 at 01:37:06AM +0900, Masaru Oki wrote:
cc links library funtion from archive only if call from other object. but new dpdk pmd library has constractor section and not call directly. ld always links library funtion with constractor section. use -Xlinker, or use ld instead of cc.
Hello Oki-san, The trick to fix it was this, I finally found it in the example Makefiles with V=1 flag. -Wl,--whole-archive -Wl,--start-group -lintel_dpdk -Wl,--end-group -Wl,--no-whole-archive Thank you for the advice you provided, I couldn't have fixed it without your suggestions... it got me to look more closely at the linking. Importantly, "-Wl,--whole-archive" includes the entire archive whether or not it's called from other objects, so we don't lose the constructors, just like you said. Matthew.