DPDK patches and discussions
 help / color / mirror / Atom feed
* static link + pkg-config assistance
@ 2022-05-21  2:35 Ben Magistro
  2022-05-23  8:19 ` Bruce Richardson
  0 siblings, 1 reply; 3+ messages in thread
From: Ben Magistro @ 2022-05-21  2:35 UTC (permalink / raw)
  To: dev

[-- Attachment #1: Type: text/plain, Size: 3100 bytes --]

I've been working through some updates to the build system for TLDK and
have been working through the different variants (system vs fallback +
shared vs static).  I've been able to successfully build and run the unit
test app for most of these combinations however, I haven't been able to get
the system static combination to work successfully yet,

OS: CentOS 7.9 + devtoolset-9 (gcc 9.3.1)
DPDK: 21.11

I built DPDK using `meson build` + `ninja -C build` using default options
and installed using `ninja -C build install`.

When configuring TLDK, I get an error indicating the static libraries
cannot be found.  I'm still investigating this, but could use some
assistance.  I wouldn't rule out an issue in the meson files for TLDK.

[bmagistro@lvdi-01 tldk-system-static]$ meson build
-Dpkg_config_path=/usr/local/lib64/pkgconfig
The Meson build system
Version: 0.55.1
Source dir: /home/bmagistro/github/tldk-system-static
Build dir: /home/bmagistro/github/tldk-system-static/build
Build type: native build
Program cat found: YES
Project name: TLDK
Project version: 21.11.0
C compiler for the host machine: cc (gcc 9.3.1 "cc (GCC) 9.3.1 20200408
(Red Hat 9.3.1-2)")
C linker for the host machine: cc ld.bfd 2.32-16
C++ compiler for the host machine: c++ (gcc 9.3.1 "c++ (GCC) 9.3.1 20200408
(Red Hat 9.3.1-2)")
C++ linker for the host machine: c++ ld.bfd 2.32-16
Host machine cpu family: x86_64
Host machine cpu: x86_64
Message: ## Building in Developer Mode ##
Found pkg-config: /usr/bin/pkg-config (0.27.1)
WARNING: Static library ':librte_common_cpt.a' not found for dependency
'libdpdk', may not be statically linked
WARNING: Static library ':librte_common_dpaax.a' not found for dependency
'libdpdk', may not be statically linked
WARNING: Static library ':librte_common_iavf.a' not found for dependency
'libdpdk', may not be statically linked
WARNING: Static library ':librte_common_octeontx.a' not found for
dependency 'libdpdk', may not be statically linked
WARNING: Static library ':librte_common_octeontx2.a' not found for
dependency 'libdpdk', may not be statically linked
WARNING: Static library ':librte_bus_auxiliary.a' not found for dependency
'libdpdk', may not be statically linked
WARNING: Static library ':librte_bus_dpaa.a' not found for dependency
'libdpdk', may not be statically linked
WARNING: Static library ':librte_bus_fslmc.a' not found for dependency
'libdpdk', may not be statically linked
....
WARNING: Static library ':librte_telemetry.a' not found for dependency
'libdpdk', may not be statically linked
WARNING: Static library ':librte_kvargs.a' not found for dependency
'libdpdk', may not be statically linked
WARNING: Static library 'elf' not found for dependency 'libdpdk', may not
be statically linked
WARNING: Static library 'pcap' not found for dependency 'libdpdk', may not
be statically linked
WARNING: Static library 'z' not found for dependency 'libdpdk', may not be
statically linked
Run-time dependency libdpdk found: YES 21.11.0
Run-time dependency GTest found: NO (tried pkgconfig and system)
Looking for a fallback subproject for the dependency gtest

[-- Attachment #2: Type: text/html, Size: 3611 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: static link + pkg-config assistance
  2022-05-21  2:35 static link + pkg-config assistance Ben Magistro
@ 2022-05-23  8:19 ` Bruce Richardson
  2022-05-23 15:03   ` Ben Magistro
  0 siblings, 1 reply; 3+ messages in thread
From: Bruce Richardson @ 2022-05-23  8:19 UTC (permalink / raw)
  To: Ben Magistro; +Cc: dev

On Fri, May 20, 2022 at 10:35:07PM -0400, Ben Magistro wrote:
>    I've been working through some updates to the build system for TLDK and
>    have been working through the different variants (system vs fallback +
>    shared vs static).  I've been able to successfully build and run the
>    unit test app for most of these combinations however, I haven't been
>    able to get the system static combination to work successfully yet,
>    OS: CentOS 7.9 + devtoolset-9 (gcc 9.3.1)
>    DPDK: 21.11
>    I built DPDK using `meson build` + `ninja -C build` using default
>    options and installed using `ninja -C build install`.
>    When configuring TLDK, I get an error indicating the static libraries
>    cannot be found.  I'm still investigating this, but could use some
>    assistance.  I wouldn't rule out an issue in the meson files for TLDK.
>    [bmagistro@lvdi-01 tldk-system-static]$ meson build
>    -Dpkg_config_path=/usr/local/lib64/pkgconfig
>    The Meson build system
>    Version: 0.55.1
>    Source dir: /home/bmagistro/github/tldk-system-static
>    Build dir: /home/bmagistro/github/tldk-system-static/build
>    Build type: native build
>    Program cat found: YES
>    Project name: TLDK
>    Project version: 21.11.0
>    C compiler for the host machine: cc (gcc 9.3.1 "cc (GCC) 9.3.1 20200408
>    (Red Hat 9.3.1-2)")
>    C linker for the host machine: cc ld.bfd 2.32-16
>    C++ compiler for the host machine: c++ (gcc 9.3.1 "c++ (GCC) 9.3.1
>    20200408 (Red Hat 9.3.1-2)")
>    C++ linker for the host machine: c++ ld.bfd 2.32-16
>    Host machine cpu family: x86_64
>    Host machine cpu: x86_64
>    Message: ## Building in Developer Mode ##
>    Found pkg-config: /usr/bin/pkg-config (0.27.1)

Can you try installing a newer version of pkg-config or pkgconf. We have
previously encountered issues with the version of pkg-config installed on
RHEL 7 and Centos 7. It does some reordering of arguments and flags
that can break things under certain circumstances. See:

https://doc.dpdk.org/guides-21.11/linux_gsg/sys_reqs.html#building-dpdk-applications

/Bruce

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: static link + pkg-config assistance
  2022-05-23  8:19 ` Bruce Richardson
@ 2022-05-23 15:03   ` Ben Magistro
  0 siblings, 0 replies; 3+ messages in thread
From: Ben Magistro @ 2022-05-23 15:03 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev

[-- Attachment #1: Type: text/plain, Size: 2590 bytes --]

I completely missed that so thanks for pointing it out.

On the CentOS environment I don't have an easy way to update it right now
so I switched over to another host and am seeing similar behavior.  The
major deltas are listed below.

OS: Ubuntu 21.10
meson: 0.56.2
pkg-config: 0.29.2 (+ 1.7.3 via pkgconf)
gcc: 11.2.0

On Mon, May 23, 2022 at 4:20 AM Bruce Richardson <bruce.richardson@intel.com>
wrote:

> On Fri, May 20, 2022 at 10:35:07PM -0400, Ben Magistro wrote:
> >    I've been working through some updates to the build system for TLDK
> and
> >    have been working through the different variants (system vs fallback +
> >    shared vs static).  I've been able to successfully build and run the
> >    unit test app for most of these combinations however, I haven't been
> >    able to get the system static combination to work successfully yet,
> >    OS: CentOS 7.9 + devtoolset-9 (gcc 9.3.1)
> >    DPDK: 21.11
> >    I built DPDK using `meson build` + `ninja -C build` using default
> >    options and installed using `ninja -C build install`.
> >    When configuring TLDK, I get an error indicating the static libraries
> >    cannot be found.  I'm still investigating this, but could use some
> >    assistance.  I wouldn't rule out an issue in the meson files for TLDK.
> >    [bmagistro@lvdi-01 tldk-system-static]$ meson build
> >    -Dpkg_config_path=/usr/local/lib64/pkgconfig
> >    The Meson build system
> >    Version: 0.55.1
> >    Source dir: /home/bmagistro/github/tldk-system-static
> >    Build dir: /home/bmagistro/github/tldk-system-static/build
> >    Build type: native build
> >    Program cat found: YES
> >    Project name: TLDK
> >    Project version: 21.11.0
> >    C compiler for the host machine: cc (gcc 9.3.1 "cc (GCC) 9.3.1
> 20200408
> >    (Red Hat 9.3.1-2)")
> >    C linker for the host machine: cc ld.bfd 2.32-16
> >    C++ compiler for the host machine: c++ (gcc 9.3.1 "c++ (GCC) 9.3.1
> >    20200408 (Red Hat 9.3.1-2)")
> >    C++ linker for the host machine: c++ ld.bfd 2.32-16
> >    Host machine cpu family: x86_64
> >    Host machine cpu: x86_64
> >    Message: ## Building in Developer Mode ##
> >    Found pkg-config: /usr/bin/pkg-config (0.27.1)
>
> Can you try installing a newer version of pkg-config or pkgconf. We have
> previously encountered issues with the version of pkg-config installed on
> RHEL 7 and Centos 7. It does some reordering of arguments and flags
> that can break things under certain circumstances. See:
>
>
> https://doc.dpdk.org/guides-21.11/linux_gsg/sys_reqs.html#building-dpdk-applications
>
> /Bruce
>

[-- Attachment #2: Type: text/html, Size: 3415 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-05-23 15:03 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-21  2:35 static link + pkg-config assistance Ben Magistro
2022-05-23  8:19 ` Bruce Richardson
2022-05-23 15:03   ` Ben Magistro

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).