From: William Tu <u9012063@gmail.com>
To: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
Cc: dpdk-dev <dev@dpdk.org>, Sergey Madaminov <sergey.madaminov@gmail.com>
Subject: Re: [dpdk-dev] Linker error on rte_dump_stack() on Windows
Date: Sun, 8 Aug 2021 19:30:21 -0700 [thread overview]
Message-ID: <CALDO+SYA97tVXdquwogDO0G=s=kU7jAzmC=NaqXj++uZHACNqQ@mail.gmail.com> (raw)
In-Reply-To: <20210808225203.56fce7c7@sovereign>
On Sun, Aug 8, 2021 at 12:52 PM Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> wrote:
>
> 2021-08-08 10:45 (UTC-0700), William Tu:
> > Hi,
> >
> > While linking OVS to Windows DPDK library, static link to
> > librte_eal.a, we hit some error about rte_dump_stack().
> > I don't know why other symbols work, but only a couple symbols showed
> > errors here.
> > Any suggestions about how to debug/fix this? Thank you!
> >
> > [5/15] Linking target utilities/ovs-vsctl.exeFAILED:
> > utilities/ovs-vsctl.exe"clang" -Wl,/MACHINE:X64
> > -Wl,/OUT:utilities/ovs-vsctl.exe
> > utilities/ovs-vsctl.exe.p/ovs-vsctl.c.obj "-Wl,/nologo" "-Wl,/release"
> > "-Wl,/nologo" "-Wl,/OPT:REF" "lib\libopenvswitch.a"
> > "-Wl,--no-undefined" "C:/dpdk/install/lib/librte_eal.a"
> > "C:/dpdk/install/lib/librte_ethdev.a"
> > "C:/dpdk/install/lib/librte_mempool.a"
> > "C:/dpdk/install/lib/librte_mbuf.a"
> > "C:/dpdk/install/lib/librte_meter.a""C:/dpdk/install/lib/librte_telemetry.a"
> > "C:/dpdk/install/lib/librte_kvargs.a"
> > "C:/PTHREADS-BUILT/lib/libpthreadVC3.lib" "-lWs2_32" "-lWbemUuid"
> > "-lShlwapi" "-lIphlpapi" "-Wl,/SUBSYSTEM:CONSOLE" "-lkernel32"
> > "-luser32" "-lgdi32" "-lwinspool" "-lshell32" "-lole32" "-loleaut32"
> > "-luuid" "-lcomdlg32" "-ladvapi32"
> > LINK : warning LNK4044: unrecognized option '/-no-undefined'; ignored
> > librte_eal.a(eal_windows_eal_debug.c.obj) : error LNK2019: unresolved
> > external symbol __imp_SymInitialize referenced in function
> > rte_dump_stack
>
> Hi William,
>
> `rte_dump_stack()` implementation requires linking DbgHelp system library.
> There are other required libraries, see `add_project_link_arguments()` in
> `config/meson.build`.
Thanks, pass linking stage now.
>
> I also noticed that these libraries are not added to pkg-config
> `Libs.private`. We must use `ext_deps` and `cc.find_library()`
> instead of `add_project_link_arguments('-l...')`. IIRC you don't use
> pkg-config, but still.
Thanks, and yes, the pkg-config on my system still doesn't work.
Regards,
William
prev parent reply other threads:[~2021-08-09 2:30 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-08 17:45 William Tu
2021-08-08 19:52 ` Dmitry Kozlyuk
2021-08-09 2:30 ` William Tu [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CALDO+SYA97tVXdquwogDO0G=s=kU7jAzmC=NaqXj++uZHACNqQ@mail.gmail.com' \
--to=u9012063@gmail.com \
--cc=dev@dpdk.org \
--cc=dmitry.kozliuk@gmail.com \
--cc=sergey.madaminov@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).