Thread (1 message) 1 message, 1 author, 2014-08-02

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.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help