* [PATCH] config: set pkgconfig for ppc64le @ 2022-07-07 11:41 Ali Alnubani 2022-07-11 20:10 ` Thomas Monjalon 2022-08-30 17:36 ` David Christensen 0 siblings, 2 replies; 15+ messages in thread From: Ali Alnubani @ 2022-07-07 11:41 UTC (permalink / raw) To: dev Meson fails to detect the dependencies that are included in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig is not set in the ppc64le cross-file for Ubuntu. This fixes the issue by setting binaries.pkgconfig to the binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. Signed-off-by: Ali Alnubani <alialnu@nvidia.com> --- config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + 1 file changed, 1 insertion(+) diff --git a/config/ppc/ppc64le-power8-linux-gcc-ubuntu b/config/ppc/ppc64le-power8-linux-gcc-ubuntu index 3027d66f8d..c2d5b1dc6a 100644 --- a/config/ppc/ppc64le-power8-linux-gcc-ubuntu +++ b/config/ppc/ppc64le-power8-linux-gcc-ubuntu @@ -3,6 +3,7 @@ c = ['ccache', 'powerpc64le-linux-gnu-gcc'] cpp = ['ccache', 'powerpc64le-linux-gnu-g++'] ar = 'powerpc64le-linux-gnu-ar' strip = 'powerpc64le-linux-gnu-strip' +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' [host_machine] system = 'linux' -- 2.25.1 ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] config: set pkgconfig for ppc64le 2022-07-07 11:41 [PATCH] config: set pkgconfig for ppc64le Ali Alnubani @ 2022-07-11 20:10 ` Thomas Monjalon 2022-07-13 7:39 ` Ali Alnubani 2022-08-30 17:36 ` David Christensen 1 sibling, 1 reply; 15+ messages in thread From: Thomas Monjalon @ 2022-07-11 20:10 UTC (permalink / raw) To: Ali Alnubani; +Cc: dev, David Christensen + PPC maintainer 07/07/2022 13:41, Ali Alnubani: > Meson fails to detect the dependencies that are included > in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig > is not set in the ppc64le cross-file for Ubuntu. > > This fixes the issue by setting binaries.pkgconfig to the > binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. > > Signed-off-by: Ali Alnubani <alialnu@nvidia.com> > --- > config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + Why not adding the same for ppc64le-power8-linux-gcc? > +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' ^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: [PATCH] config: set pkgconfig for ppc64le 2022-07-11 20:10 ` Thomas Monjalon @ 2022-07-13 7:39 ` Ali Alnubani 2022-07-13 9:12 ` Thomas Monjalon 2022-07-13 19:49 ` Thinh Tran 0 siblings, 2 replies; 15+ messages in thread From: Ali Alnubani @ 2022-07-13 7:39 UTC (permalink / raw) To: NBU-Contact-Thomas Monjalon (EXTERNAL); +Cc: dev, David Christensen > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Monday, July 11, 2022 11:11 PM > To: Ali Alnubani <alialnu@nvidia.com> > Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > Subject: Re: [PATCH] config: set pkgconfig for ppc64le > > + PPC maintainer > > 07/07/2022 13:41, Ali Alnubani: > > Meson fails to detect the dependencies that are included > > in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig > > is not set in the ppc64le cross-file for Ubuntu. > > > > This fixes the issue by setting binaries.pkgconfig to the > > binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. > > > > Signed-off-by: Ali Alnubani <alialnu@nvidia.com> > > --- > > config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + > > Why not adding the same for ppc64le-power8-linux-gcc? > > > +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' I didn't find any operating systems that distribute the powerpc64le cross-compiler with the binary names found in config/ppc/ppc64le-power8-linux-gcc. Both Ubuntu and Fedora use the -gnu suffix. Fedora doesn't seem to have a pkg-config binary for powerpc64le though. ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] config: set pkgconfig for ppc64le 2022-07-13 7:39 ` Ali Alnubani @ 2022-07-13 9:12 ` Thomas Monjalon 2022-07-13 10:14 ` Ali Alnubani 2022-07-13 19:49 ` Thinh Tran 1 sibling, 1 reply; 15+ messages in thread From: Thomas Monjalon @ 2022-07-13 9:12 UTC (permalink / raw) To: Ali Alnubani; +Cc: dev, David Christensen 13/07/2022 09:39, Ali Alnubani: > > -----Original Message----- > > From: Thomas Monjalon <thomas@monjalon.net> > > Sent: Monday, July 11, 2022 11:11 PM > > To: Ali Alnubani <alialnu@nvidia.com> > > Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > > Subject: Re: [PATCH] config: set pkgconfig for ppc64le > > > > + PPC maintainer > > > > 07/07/2022 13:41, Ali Alnubani: > > > Meson fails to detect the dependencies that are included > > > in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig > > > is not set in the ppc64le cross-file for Ubuntu. > > > > > > This fixes the issue by setting binaries.pkgconfig to the > > > binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. > > > > > > Signed-off-by: Ali Alnubani <alialnu@nvidia.com> > > > --- > > > config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + > > > > Why not adding the same for ppc64le-power8-linux-gcc? > > > > > +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' > > I didn't find any operating systems that distribute the powerpc64le cross-compiler with the binary names found in config/ppc/ppc64le-power8-linux-gcc. > Both Ubuntu and Fedora use the -gnu suffix. Fedora doesn't seem to have a pkg-config binary for powerpc64le though. So how does it work on Fedora? ^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: [PATCH] config: set pkgconfig for ppc64le 2022-07-13 9:12 ` Thomas Monjalon @ 2022-07-13 10:14 ` Ali Alnubani 2022-07-13 10:51 ` Ali Alnubani 0 siblings, 1 reply; 15+ messages in thread From: Ali Alnubani @ 2022-07-13 10:14 UTC (permalink / raw) To: NBU-Contact-Thomas Monjalon (EXTERNAL); +Cc: dev, David Christensen > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Wednesday, July 13, 2022 12:12 PM > To: Ali Alnubani <alialnu@nvidia.com> > Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > Subject: Re: [PATCH] config: set pkgconfig for ppc64le > > 13/07/2022 09:39, Ali Alnubani: > > > -----Original Message----- > > > From: Thomas Monjalon <thomas@monjalon.net> > > > Sent: Monday, July 11, 2022 11:11 PM > > > To: Ali Alnubani <alialnu@nvidia.com> > > > Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > > > Subject: Re: [PATCH] config: set pkgconfig for ppc64le > > > > > > + PPC maintainer > > > > > > 07/07/2022 13:41, Ali Alnubani: > > > > Meson fails to detect the dependencies that are included > > > > in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig > > > > is not set in the ppc64le cross-file for Ubuntu. > > > > > > > > This fixes the issue by setting binaries.pkgconfig to the > > > > binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. > > > > > > > > Signed-off-by: Ali Alnubani <alialnu@nvidia.com> > > > > --- > > > > config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + > > > > > > Why not adding the same for ppc64le-power8-linux-gcc? > > > > > > > +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' > > > > I didn't find any operating systems that distribute the powerpc64le cross- > compiler with the binary names found in config/ppc/ppc64le-power8-linux- > gcc. > > Both Ubuntu and Fedora use the -gnu suffix. Fedora doesn't seem to have > a pkg-config binary for powerpc64le though. > > So how does it work on Fedora? > On Fedora, the pcc64 cross-compiler is provided by package 'gcc-powerpc64le-linux-gnu' with binary names /usr/bin/powerpc64le-linux-gnu-*, same as in Ubuntu. The cross-file config/ppc/ppc64le-power8-linux-gcc doesn't work with Fedora since the binary names in the file don't have the -gnu suffix, so I'm not sure where this cross-file is being used. Another issue I found is that when I set the correct binary names in config/ppc/ppc64le-power8-linux-gcc or use config/ppc/ppc64le-power8-linux-gcc-ubuntu, I get the following error on Fedora: config/ppc/meson.build:6:4: ERROR: Problem encountered: Only 64-bit compiles are supported for this platform type It happens because cc.sizeof('void *') in https://git.dpdk.org/dpdk/tree/config/meson.build#n144 returns '-1'. I'm on Fedora 35. Is anyone able to cross-build for ppc64le in Fedora? ^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: [PATCH] config: set pkgconfig for ppc64le 2022-07-13 10:14 ` Ali Alnubani @ 2022-07-13 10:51 ` Ali Alnubani 0 siblings, 0 replies; 15+ messages in thread From: Ali Alnubani @ 2022-07-13 10:51 UTC (permalink / raw) To: NBU-Contact-Thomas Monjalon (EXTERNAL); +Cc: dev, David Christensen > -----Original Message----- > From: Ali Alnubani > Sent: Wednesday, July 13, 2022 1:14 PM > To: Thomas Monjalon <thomas@monjalon.net> > Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > Subject: RE: [PATCH] config: set pkgconfig for ppc64le > > > -----Original Message----- > > From: Thomas Monjalon <thomas@monjalon.net> > > Sent: Wednesday, July 13, 2022 12:12 PM > > To: Ali Alnubani <alialnu@nvidia.com> > > Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > > Subject: Re: [PATCH] config: set pkgconfig for ppc64le > > > > 13/07/2022 09:39, Ali Alnubani: > > > > -----Original Message----- > > > > From: Thomas Monjalon <thomas@monjalon.net> > > > > Sent: Monday, July 11, 2022 11:11 PM > > > > To: Ali Alnubani <alialnu@nvidia.com> > > > > Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > > > > Subject: Re: [PATCH] config: set pkgconfig for ppc64le > > > > > > > > + PPC maintainer > > > > > > > > 07/07/2022 13:41, Ali Alnubani: > > > > > Meson fails to detect the dependencies that are included > > > > > in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig > > > > > is not set in the ppc64le cross-file for Ubuntu. > > > > > > > > > > This fixes the issue by setting binaries.pkgconfig to the > > > > > binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. > > > > > > > > > > Signed-off-by: Ali Alnubani <alialnu@nvidia.com> > > > > > --- > > > > > config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + > > > > > > > > Why not adding the same for ppc64le-power8-linux-gcc? > > > > > > > > > +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' > > > > > > I didn't find any operating systems that distribute the powerpc64le cross- > > compiler with the binary names found in config/ppc/ppc64le-power8-linux- > > gcc. > > > Both Ubuntu and Fedora use the -gnu suffix. Fedora doesn't seem to > have > > a pkg-config binary for powerpc64le though. > > > > So how does it work on Fedora? > > > > On Fedora, the pcc64 cross-compiler is provided by package 'gcc- > powerpc64le-linux-gnu' with binary names /usr/bin/powerpc64le-linux-gnu- > *, same as in Ubuntu. > The cross-file config/ppc/ppc64le-power8-linux-gcc doesn't work with > Fedora since the binary names in the file don't have the -gnu suffix, so I'm > not sure where this cross-file is being used. > > Another issue I found is that when I set the correct binary names in > config/ppc/ppc64le-power8-linux-gcc or use config/ppc/ppc64le-power8- > linux-gcc-ubuntu, I get the following error on Fedora: > config/ppc/meson.build:6:4: ERROR: Problem encountered: Only 64-bit > compiles are supported for this platform type > It happens because cc.sizeof('void *') in > https://git.dpdk.org/dpdk/tree/config/meson.build#n144 returns '-1'. I'm on > Fedora 35. I believe that's because the Fedora package doesn't provide stdio.h for ppc64le. > > Is anyone able to cross-build for ppc64le in Fedora? ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] config: set pkgconfig for ppc64le 2022-07-13 7:39 ` Ali Alnubani 2022-07-13 9:12 ` Thomas Monjalon @ 2022-07-13 19:49 ` Thinh Tran 2022-07-14 6:58 ` Ali Alnubani 1 sibling, 1 reply; 15+ messages in thread From: Thinh Tran @ 2022-07-13 19:49 UTC (permalink / raw) To: Ali Alnubani, NBU-Contact-Thomas Monjalon (EXTERNAL) Cc: dev, David Christensen Hi, On 7/13/2022 2:39 AM, Ali Alnubani wrote: >> -----Original Message----- >> From: Thomas Monjalon <thomas@monjalon.net> >> Sent: Monday, July 11, 2022 11:11 PM >> To: Ali Alnubani <alialnu@nvidia.com> >> Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> >> Subject: Re: [PATCH] config: set pkgconfig for ppc64le >> >> + PPC maintainer >> >> 07/07/2022 13:41, Ali Alnubani: >>> Meson fails to detect the dependencies that are included >>> in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig >>> is not set in the ppc64le cross-file for Ubuntu. >>> >>> This fixes the issue by setting binaries.pkgconfig to the >>> binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. >>> >>> Signed-off-by: Ali Alnubani <alialnu@nvidia.com> >>> --- >>> config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + >> >> Why not adding the same for ppc64le-power8-linux-gcc? >> >>> +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' > > I didn't find any operating systems that distribute the powerpc64le cross-compiler with the binary names found in config/ppc/ppc64le-power8-linux-gcc. > Both Ubuntu and Fedora use the -gnu suffix. Fedora doesn't seem to have a pkg-config binary for powerpc64le though. I am able to cross-compile dpdk on Ubuntu with the default config file My system info: # uname -rvm 5.4.0-113-generic #127-Ubuntu SMP Wed May 18 14:30:56 UTC 2022 x86_64 # apt list gcc-10-powerpc64le-linux-gnu | grep installed gcc-10-powerpc64le-linux-gnu/focal-updates,focal-security,now 10.3.0-1ubuntu1~20.04cross1 amd64 [installed] # which powerpc64le-linux-gnu-gcc /usr/bin/powerpc64le-linux-gnu-gcc # ls -l /usr/bin/powerpc64le-linux-gnu-gcc lrwxrwxrwx 1 root root 37 Jul 13 11:56 /usr/bin/powerpc64le-linux-gnu-gcc -> /usr/bin/powerpc64le-linux-gnu-gcc-10 # apt list pkg-config | grep installed pkg-config/focal,now 0.29.1-0ubuntu4 amd64 [installed] # meson cross-build_p8 --cross-file config/ppc/ppc64le-power8-linux-gcc-ubuntu The Meson build system Version: 0.56.2 Source dir: /root/dpdk Build dir: /root/dpdk/cross-build_p8 Build type: cross build Program cat found: YES (/bin/cat) Project name: DPDK Project version: 22.07.0-rc4 C compiler for the host machine: powerpc64le-linux-gnu-gcc (gcc 10.3.0 "powerpc64le-linux-gnu-gcc (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0") C linker for the host machine: powerpc64le-linux-gnu-gcc ld.bfd 2.34 C compiler for the build machine: cc (gcc 9.4.0 "cc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0") C linker for the build machine: cc ld.bfd 2.34 Build machine cpu family: x86_64 Build machine cpu: x86_64 Host machine cpu family: x86_64 Host machine cpu: x86_64 Target machine cpu family: ppc64 Target machine cpu: power8 Program pkg-config found: YES (/usr/bin/pkg-config) Program check-symbols.sh found: YES (/root/dpdk/buildtools/check-symbols.sh) Program options-ibverbs-static.sh found: YES (/root/dpdk/buildtools/options-ibverbs-static.sh) Program objdump found: YES (/usr/bin/objdump) Program python3 found: YES (/usr/bin/python3) Program cat found: YES (/bin/cat) Program ../buildtools/symlink-drivers-solibs.sh found: YES (/bin/sh /root/dpdk/config/../buildtools/symlink-drivers-solibs.sh) Checking for size of "void *" : 8 Checking for size of "void *" : 8 ...... Build targets in project: 851 Found ninja-1.10.0 at /usr/bin/ninja # ninja -C cross-build_p8 ninja: Entering directory `cross-build_p8' [2933/2933] Linking target app/test/dpdk-test similar to it, I'm able to build for power9 Regards, Thinh Tran ^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: [PATCH] config: set pkgconfig for ppc64le 2022-07-13 19:49 ` Thinh Tran @ 2022-07-14 6:58 ` Ali Alnubani 2022-07-18 20:16 ` Thinh Tran 0 siblings, 1 reply; 15+ messages in thread From: Ali Alnubani @ 2022-07-14 6:58 UTC (permalink / raw) To: Thinh Tran, NBU-Contact-Thomas Monjalon (EXTERNAL); +Cc: dev, David Christensen > -----Original Message----- > From: Thinh Tran <thinhtr@linux.vnet.ibm.com> > Sent: Wednesday, July 13, 2022 10:50 PM > To: Ali Alnubani <alialnu@nvidia.com>; NBU-Contact-Thomas Monjalon > (EXTERNAL) <thomas@monjalon.net> > Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > Subject: Re: [PATCH] config: set pkgconfig for ppc64le > > Hi, > > On 7/13/2022 2:39 AM, Ali Alnubani wrote: > >> -----Original Message----- > >> From: Thomas Monjalon <thomas@monjalon.net> > >> Sent: Monday, July 11, 2022 11:11 PM > >> To: Ali Alnubani <alialnu@nvidia.com> > >> Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > >> Subject: Re: [PATCH] config: set pkgconfig for ppc64le > >> > >> + PPC maintainer > >> > >> 07/07/2022 13:41, Ali Alnubani: > >>> Meson fails to detect the dependencies that are included > >>> in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig > >>> is not set in the ppc64le cross-file for Ubuntu. > >>> > >>> This fixes the issue by setting binaries.pkgconfig to the > >>> binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. > >>> > >>> Signed-off-by: Ali Alnubani <alialnu@nvidia.com> > >>> --- > >>> config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + > >> > >> Why not adding the same for ppc64le-power8-linux-gcc? > >> > >>> +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' > > > > I didn't find any operating systems that distribute the powerpc64le cross- > compiler with the binary names found in config/ppc/ppc64le-power8-linux- > gcc. > > Both Ubuntu and Fedora use the -gnu suffix. Fedora doesn't seem to have > a pkg-config binary for powerpc64le though. > > I am able to cross-compile dpdk on Ubuntu with the default config file > My system info: > # uname -rvm > 5.4.0-113-generic #127-Ubuntu SMP Wed May 18 14:30:56 UTC 2022 x86_64 > > # apt list gcc-10-powerpc64le-linux-gnu | grep installed > gcc-10-powerpc64le-linux-gnu/focal-updates,focal-security,now > 10.3.0-1ubuntu1~20.04cross1 amd64 [installed] > # which powerpc64le-linux-gnu-gcc > /usr/bin/powerpc64le-linux-gnu-gcc > # ls -l /usr/bin/powerpc64le-linux-gnu-gcc > lrwxrwxrwx 1 root root 37 Jul 13 11:56 > /usr/bin/powerpc64le-linux-gnu-gcc -> /usr/bin/powerpc64le-linux-gnu-gcc- > 10 > > # apt list pkg-config | grep installed > pkg-config/focal,now 0.29.1-0ubuntu4 amd64 [installed] > > # meson cross-build_p8 --cross-file > config/ppc/ppc64le-power8-linux-gcc-ubuntu > The Meson build system > Version: 0.56.2 > Source dir: /root/dpdk > Build dir: /root/dpdk/cross-build_p8 > Build type: cross build > Program cat found: YES (/bin/cat) > Project name: DPDK > Project version: 22.07.0-rc4 > C compiler for the host machine: powerpc64le-linux-gnu-gcc (gcc 10.3.0 > "powerpc64le-linux-gnu-gcc (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0") > C linker for the host machine: powerpc64le-linux-gnu-gcc ld.bfd 2.34 > C compiler for the build machine: cc (gcc 9.4.0 "cc (Ubuntu > 9.4.0-1ubuntu1~20.04.1) 9.4.0") > C linker for the build machine: cc ld.bfd 2.34 > Build machine cpu family: x86_64 > Build machine cpu: x86_64 > Host machine cpu family: x86_64 > Host machine cpu: x86_64 > Target machine cpu family: ppc64 > Target machine cpu: power8 > Program pkg-config found: YES (/usr/bin/pkg-config) > Program check-symbols.sh found: YES (/root/dpdk/buildtools/check- > symbols.sh) > Program options-ibverbs-static.sh found: YES > (/root/dpdk/buildtools/options-ibverbs-static.sh) > Program objdump found: YES (/usr/bin/objdump) > Program python3 found: YES (/usr/bin/python3) > Program cat found: YES (/bin/cat) > Program ../buildtools/symlink-drivers-solibs.sh found: YES (/bin/sh > /root/dpdk/config/../buildtools/symlink-drivers-solibs.sh) > Checking for size of "void *" : 8 > Checking for size of "void *" : 8 > ...... > Build targets in project: 851 > > Found ninja-1.10.0 at /usr/bin/ninja > # ninja -C cross-build_p8 > ninja: Entering directory `cross-build_p8' > [2933/2933] Linking target app/test/dpdk-test > > similar to it, I'm able to build for power9 > Hi Thinh, I'm also able to cross-build for ppc64 on Ubuntu, but without setting binaries.pkgconfig, meson will skip some build targets, even if PKG_CONFIG_PATH points to their dependencies. Have you tried on Fedora? ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] config: set pkgconfig for ppc64le 2022-07-14 6:58 ` Ali Alnubani @ 2022-07-18 20:16 ` Thinh Tran 2022-07-19 23:02 ` David Christensen 0 siblings, 1 reply; 15+ messages in thread From: Thinh Tran @ 2022-07-18 20:16 UTC (permalink / raw) To: Ali Alnubani, NBU-Contact-Thomas Monjalon (EXTERNAL) Cc: dev, David Christensen On 7/14/2022 1:58 AM, Ali Alnubani wrote: >> -----Original Message----- >> From: Thinh Tran <thinhtr@linux.vnet.ibm.com> >> Sent: Wednesday, July 13, 2022 10:50 PM >> To: Ali Alnubani <alialnu@nvidia.com>; NBU-Contact-Thomas Monjalon >> (EXTERNAL) <thomas@monjalon.net> >> Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> >> Subject: Re: [PATCH] config: set pkgconfig for ppc64le >> >> Hi, >> >> On 7/13/2022 2:39 AM, Ali Alnubani wrote: >>>> -----Original Message----- >>>> From: Thomas Monjalon <thomas@monjalon.net> >>>> Sent: Monday, July 11, 2022 11:11 PM >>>> To: Ali Alnubani <alialnu@nvidia.com> >>>> Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> >>>> Subject: Re: [PATCH] config: set pkgconfig for ppc64le >>>> >>>> + PPC maintainer >>>> >>>> 07/07/2022 13:41, Ali Alnubani: >>>>> Meson fails to detect the dependencies that are included >>>>> in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig >>>>> is not set in the ppc64le cross-file for Ubuntu. >>>>> >>>>> This fixes the issue by setting binaries.pkgconfig to the >>>>> binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. >>>>> >>>>> Signed-off-by: Ali Alnubani <alialnu@nvidia.com> >>>>> --- >>>>> config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + >>>> >>>> Why not adding the same for ppc64le-power8-linux-gcc? >>>> >>>>> +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' >>> >>> I didn't find any operating systems that distribute the powerpc64le cross- >> compiler with the binary names found in config/ppc/ppc64le-power8-linux- >> gcc. >>> Both Ubuntu and Fedora use the -gnu suffix. Fedora doesn't seem to have >> a pkg-config binary for powerpc64le though. >> >> I am able to cross-compile dpdk on Ubuntu with the default config file >> My system info: >> # uname -rvm >> 5.4.0-113-generic #127-Ubuntu SMP Wed May 18 14:30:56 UTC 2022 x86_64 >> >> # apt list gcc-10-powerpc64le-linux-gnu | grep installed >> gcc-10-powerpc64le-linux-gnu/focal-updates,focal-security,now >> 10.3.0-1ubuntu1~20.04cross1 amd64 [installed] >> # which powerpc64le-linux-gnu-gcc >> /usr/bin/powerpc64le-linux-gnu-gcc >> # ls -l /usr/bin/powerpc64le-linux-gnu-gcc >> lrwxrwxrwx 1 root root 37 Jul 13 11:56 >> /usr/bin/powerpc64le-linux-gnu-gcc -> /usr/bin/powerpc64le-linux-gnu-gcc- >> 10 >> >> # apt list pkg-config | grep installed >> pkg-config/focal,now 0.29.1-0ubuntu4 amd64 [installed] >> >> # meson cross-build_p8 --cross-file >> config/ppc/ppc64le-power8-linux-gcc-ubuntu >> The Meson build system >> Version: 0.56.2 >> Source dir: /root/dpdk >> Build dir: /root/dpdk/cross-build_p8 >> Build type: cross build >> Program cat found: YES (/bin/cat) >> Project name: DPDK >> Project version: 22.07.0-rc4 >> C compiler for the host machine: powerpc64le-linux-gnu-gcc (gcc 10.3.0 >> "powerpc64le-linux-gnu-gcc (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0") >> C linker for the host machine: powerpc64le-linux-gnu-gcc ld.bfd 2.34 >> C compiler for the build machine: cc (gcc 9.4.0 "cc (Ubuntu >> 9.4.0-1ubuntu1~20.04.1) 9.4.0") >> C linker for the build machine: cc ld.bfd 2.34 >> Build machine cpu family: x86_64 >> Build machine cpu: x86_64 >> Host machine cpu family: x86_64 >> Host machine cpu: x86_64 >> Target machine cpu family: ppc64 >> Target machine cpu: power8 >> Program pkg-config found: YES (/usr/bin/pkg-config) >> Program check-symbols.sh found: YES (/root/dpdk/buildtools/check- >> symbols.sh) >> Program options-ibverbs-static.sh found: YES >> (/root/dpdk/buildtools/options-ibverbs-static.sh) >> Program objdump found: YES (/usr/bin/objdump) >> Program python3 found: YES (/usr/bin/python3) >> Program cat found: YES (/bin/cat) >> Program ../buildtools/symlink-drivers-solibs.sh found: YES (/bin/sh >> /root/dpdk/config/../buildtools/symlink-drivers-solibs.sh) >> Checking for size of "void *" : 8 >> Checking for size of "void *" : 8 >> ...... >> Build targets in project: 851 >> >> Found ninja-1.10.0 at /usr/bin/ninja >> # ninja -C cross-build_p8 >> ninja: Entering directory `cross-build_p8' >> [2933/2933] Linking target app/test/dpdk-test >> >> similar to it, I'm able to build for power9 >> > > Hi Thinh, > > I'm also able to cross-build for ppc64 on Ubuntu, but without setting binaries.pkgconfig, meson will skip some build targets, even if PKG_CONFIG_PATH points to their dependencies. > Have you tried on Fedora? Hi Ali, Sorry for the delay. Cross-build failed - missing the stdio.h same as yours on Fedora 30 and 35. checking gcc-powerpc64-linux-gnu.x86_64 and gcc-powerpc64le-linux-gnu.x86_64 packages, both do not ship stdio.h and other header files: pthread.h, inttypes.h, etc... We are investing this issue. Regards, Thinh Tran ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] config: set pkgconfig for ppc64le 2022-07-18 20:16 ` Thinh Tran @ 2022-07-19 23:02 ` David Christensen 2022-08-29 10:30 ` Thomas Monjalon 0 siblings, 1 reply; 15+ messages in thread From: David Christensen @ 2022-07-19 23:02 UTC (permalink / raw) To: Thinh Tran, Ali Alnubani, NBU-Contact-Thomas Monjalon (EXTERNAL); +Cc: dev On 7/18/22 1:16 PM, Thinh Tran wrote: > > > On 7/14/2022 1:58 AM, Ali Alnubani wrote: >>> -----Original Message----- >>> From: Thinh Tran <thinhtr@linux.vnet.ibm.com> >>> Sent: Wednesday, July 13, 2022 10:50 PM >>> To: Ali Alnubani <alialnu@nvidia.com>; NBU-Contact-Thomas Monjalon >>> (EXTERNAL) <thomas@monjalon.net> >>> Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> >>> Subject: Re: [PATCH] config: set pkgconfig for ppc64le >>> >>> Hi, >>> >>> On 7/13/2022 2:39 AM, Ali Alnubani wrote: >>>>> -----Original Message----- >>>>> From: Thomas Monjalon <thomas@monjalon.net> >>>>> Sent: Monday, July 11, 2022 11:11 PM >>>>> To: Ali Alnubani <alialnu@nvidia.com> >>>>> Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> >>>>> Subject: Re: [PATCH] config: set pkgconfig for ppc64le >>>>> >>>>> + PPC maintainer >>>>> >>>>> 07/07/2022 13:41, Ali Alnubani: >>>>>> Meson fails to detect the dependencies that are included >>>>>> in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig >>>>>> is not set in the ppc64le cross-file for Ubuntu. >>>>>> >>>>>> This fixes the issue by setting binaries.pkgconfig to the >>>>>> binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. >>>>>> >>>>>> Signed-off-by: Ali Alnubani <alialnu@nvidia.com> >>>>>> --- >>>>>> config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + >>>>> >>>>> Why not adding the same for ppc64le-power8-linux-gcc? >>>>> >>>>>> +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' >>>> >>>> I didn't find any operating systems that distribute the powerpc64le >>>> cross- >>> compiler with the binary names found in config/ppc/ppc64le-power8-linux- >>> gcc. >>>> Both Ubuntu and Fedora use the -gnu suffix. Fedora doesn't seem to have >>> a pkg-config binary for powerpc64le though. >>> >>> I am able to cross-compile dpdk on Ubuntu with the default config file >>> My system info: >>> # uname -rvm >>> 5.4.0-113-generic #127-Ubuntu SMP Wed May 18 14:30:56 UTC 2022 x86_64 >>> >>> # apt list gcc-10-powerpc64le-linux-gnu | grep installed >>> gcc-10-powerpc64le-linux-gnu/focal-updates,focal-security,now >>> 10.3.0-1ubuntu1~20.04cross1 amd64 [installed] >>> # which powerpc64le-linux-gnu-gcc >>> /usr/bin/powerpc64le-linux-gnu-gcc >>> # ls -l /usr/bin/powerpc64le-linux-gnu-gcc >>> lrwxrwxrwx 1 root root 37 Jul 13 11:56 >>> /usr/bin/powerpc64le-linux-gnu-gcc -> >>> /usr/bin/powerpc64le-linux-gnu-gcc- >>> 10 >>> >>> # apt list pkg-config | grep installed >>> pkg-config/focal,now 0.29.1-0ubuntu4 amd64 [installed] >>> >>> # meson cross-build_p8 --cross-file >>> config/ppc/ppc64le-power8-linux-gcc-ubuntu >>> The Meson build system >>> Version: 0.56.2 >>> Source dir: /root/dpdk >>> Build dir: /root/dpdk/cross-build_p8 >>> Build type: cross build >>> Program cat found: YES (/bin/cat) >>> Project name: DPDK >>> Project version: 22.07.0-rc4 >>> C compiler for the host machine: powerpc64le-linux-gnu-gcc (gcc 10.3.0 >>> "powerpc64le-linux-gnu-gcc (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0") >>> C linker for the host machine: powerpc64le-linux-gnu-gcc ld.bfd 2.34 >>> C compiler for the build machine: cc (gcc 9.4.0 "cc (Ubuntu >>> 9.4.0-1ubuntu1~20.04.1) 9.4.0") >>> C linker for the build machine: cc ld.bfd 2.34 >>> Build machine cpu family: x86_64 >>> Build machine cpu: x86_64 >>> Host machine cpu family: x86_64 >>> Host machine cpu: x86_64 >>> Target machine cpu family: ppc64 >>> Target machine cpu: power8 >>> Program pkg-config found: YES (/usr/bin/pkg-config) >>> Program check-symbols.sh found: YES (/root/dpdk/buildtools/check- >>> symbols.sh) >>> Program options-ibverbs-static.sh found: YES >>> (/root/dpdk/buildtools/options-ibverbs-static.sh) >>> Program objdump found: YES (/usr/bin/objdump) >>> Program python3 found: YES (/usr/bin/python3) >>> Program cat found: YES (/bin/cat) >>> Program ../buildtools/symlink-drivers-solibs.sh found: YES (/bin/sh >>> /root/dpdk/config/../buildtools/symlink-drivers-solibs.sh) >>> Checking for size of "void *" : 8 >>> Checking for size of "void *" : 8 >>> ...... >>> Build targets in project: 851 >>> >>> Found ninja-1.10.0 at /usr/bin/ninja >>> # ninja -C cross-build_p8 >>> ninja: Entering directory `cross-build_p8' >>> [2933/2933] Linking target app/test/dpdk-test >>> >>> similar to it, I'm able to build for power9 >>> >> >> Hi Thinh, >> >> I'm also able to cross-build for ppc64 on Ubuntu, but without setting >> binaries.pkgconfig, meson will skip some build targets, even if >> PKG_CONFIG_PATH points to their dependencies. >> Have you tried on Fedora? As Thinh points out, you can't cross-compile for ppc64le on Fedora with distro supplied packages. Ran across this question about the issue relative to ARM on the Fedora Project website: https://ask.fedoraproject.org/t/cross-compiling-to-arm/17864/12 And also confirmed internally with our toolchain developers that you'd need glibc support which isn't provided in the existing Fedora packages. Consensus seems to be that Fedora cross-compile is for kernels/bootloaders only, though I'd love to hear from someone at Red Hat if I'm mistaken. Ubuntu/Debian do support the functionality, so you could try those environments (as used by Github Actions for DPDK commits), use a third party toolchain such as those found on: https://toolchains.bootlin.com/releases_powerpc64le-power8.html Or you could use the IBM Advanced Toolchain for POWER: https://www.ibm.com/support/pages/advtool-cross-compilers Dave ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] config: set pkgconfig for ppc64le 2022-07-19 23:02 ` David Christensen @ 2022-08-29 10:30 ` Thomas Monjalon 2022-08-30 17:39 ` David Christensen 0 siblings, 1 reply; 15+ messages in thread From: Thomas Monjalon @ 2022-08-29 10:30 UTC (permalink / raw) To: Thinh Tran, David Christensen; +Cc: Ali Alnubani, dev What is the conclusion on this patch? It is good to go? Acked? 20/07/2022 01:02, David Christensen: > > On 7/18/22 1:16 PM, Thinh Tran wrote: > > > > > > On 7/14/2022 1:58 AM, Ali Alnubani wrote: > >>> -----Original Message----- > >>> From: Thinh Tran <thinhtr@linux.vnet.ibm.com> > >>> Sent: Wednesday, July 13, 2022 10:50 PM > >>> To: Ali Alnubani <alialnu@nvidia.com>; NBU-Contact-Thomas Monjalon > >>> (EXTERNAL) <thomas@monjalon.net> > >>> Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > >>> Subject: Re: [PATCH] config: set pkgconfig for ppc64le > >>> > >>> Hi, > >>> > >>> On 7/13/2022 2:39 AM, Ali Alnubani wrote: > >>>>> -----Original Message----- > >>>>> From: Thomas Monjalon <thomas@monjalon.net> > >>>>> Sent: Monday, July 11, 2022 11:11 PM > >>>>> To: Ali Alnubani <alialnu@nvidia.com> > >>>>> Cc: dev@dpdk.org; David Christensen <drc@linux.vnet.ibm.com> > >>>>> Subject: Re: [PATCH] config: set pkgconfig for ppc64le > >>>>> > >>>>> + PPC maintainer > >>>>> > >>>>> 07/07/2022 13:41, Ali Alnubani: > >>>>>> Meson fails to detect the dependencies that are included > >>>>>> in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig > >>>>>> is not set in the ppc64le cross-file for Ubuntu. > >>>>>> > >>>>>> This fixes the issue by setting binaries.pkgconfig to the > >>>>>> binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. > >>>>>> > >>>>>> Signed-off-by: Ali Alnubani <alialnu@nvidia.com> > >>>>>> --- > >>>>>> config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + > >>>>> > >>>>> Why not adding the same for ppc64le-power8-linux-gcc? > >>>>> > >>>>>> +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' > >>>> > >>>> I didn't find any operating systems that distribute the powerpc64le > >>>> cross- > >>> compiler with the binary names found in config/ppc/ppc64le-power8-linux- > >>> gcc. > >>>> Both Ubuntu and Fedora use the -gnu suffix. Fedora doesn't seem to have > >>> a pkg-config binary for powerpc64le though. > >>> > >>> I am able to cross-compile dpdk on Ubuntu with the default config file > >>> My system info: > >>> # uname -rvm > >>> 5.4.0-113-generic #127-Ubuntu SMP Wed May 18 14:30:56 UTC 2022 x86_64 > >>> > >>> # apt list gcc-10-powerpc64le-linux-gnu | grep installed > >>> gcc-10-powerpc64le-linux-gnu/focal-updates,focal-security,now > >>> 10.3.0-1ubuntu1~20.04cross1 amd64 [installed] > >>> # which powerpc64le-linux-gnu-gcc > >>> /usr/bin/powerpc64le-linux-gnu-gcc > >>> # ls -l /usr/bin/powerpc64le-linux-gnu-gcc > >>> lrwxrwxrwx 1 root root 37 Jul 13 11:56 > >>> /usr/bin/powerpc64le-linux-gnu-gcc -> > >>> /usr/bin/powerpc64le-linux-gnu-gcc- > >>> 10 > >>> > >>> # apt list pkg-config | grep installed > >>> pkg-config/focal,now 0.29.1-0ubuntu4 amd64 [installed] > >>> > >>> # meson cross-build_p8 --cross-file > >>> config/ppc/ppc64le-power8-linux-gcc-ubuntu > >>> The Meson build system > >>> Version: 0.56.2 > >>> Source dir: /root/dpdk > >>> Build dir: /root/dpdk/cross-build_p8 > >>> Build type: cross build > >>> Program cat found: YES (/bin/cat) > >>> Project name: DPDK > >>> Project version: 22.07.0-rc4 > >>> C compiler for the host machine: powerpc64le-linux-gnu-gcc (gcc 10.3.0 > >>> "powerpc64le-linux-gnu-gcc (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0") > >>> C linker for the host machine: powerpc64le-linux-gnu-gcc ld.bfd 2.34 > >>> C compiler for the build machine: cc (gcc 9.4.0 "cc (Ubuntu > >>> 9.4.0-1ubuntu1~20.04.1) 9.4.0") > >>> C linker for the build machine: cc ld.bfd 2.34 > >>> Build machine cpu family: x86_64 > >>> Build machine cpu: x86_64 > >>> Host machine cpu family: x86_64 > >>> Host machine cpu: x86_64 > >>> Target machine cpu family: ppc64 > >>> Target machine cpu: power8 > >>> Program pkg-config found: YES (/usr/bin/pkg-config) > >>> Program check-symbols.sh found: YES (/root/dpdk/buildtools/check- > >>> symbols.sh) > >>> Program options-ibverbs-static.sh found: YES > >>> (/root/dpdk/buildtools/options-ibverbs-static.sh) > >>> Program objdump found: YES (/usr/bin/objdump) > >>> Program python3 found: YES (/usr/bin/python3) > >>> Program cat found: YES (/bin/cat) > >>> Program ../buildtools/symlink-drivers-solibs.sh found: YES (/bin/sh > >>> /root/dpdk/config/../buildtools/symlink-drivers-solibs.sh) > >>> Checking for size of "void *" : 8 > >>> Checking for size of "void *" : 8 > >>> ...... > >>> Build targets in project: 851 > >>> > >>> Found ninja-1.10.0 at /usr/bin/ninja > >>> # ninja -C cross-build_p8 > >>> ninja: Entering directory `cross-build_p8' > >>> [2933/2933] Linking target app/test/dpdk-test > >>> > >>> similar to it, I'm able to build for power9 > >>> > >> > >> Hi Thinh, > >> > >> I'm also able to cross-build for ppc64 on Ubuntu, but without setting > >> binaries.pkgconfig, meson will skip some build targets, even if > >> PKG_CONFIG_PATH points to their dependencies. > >> Have you tried on Fedora? > > As Thinh points out, you can't cross-compile for ppc64le on Fedora with > distro supplied packages. Ran across this question about the issue > relative to ARM on the Fedora Project website: > > https://ask.fedoraproject.org/t/cross-compiling-to-arm/17864/12 > > And also confirmed internally with our toolchain developers that you'd > need glibc support which isn't provided in the existing Fedora packages. > Consensus seems to be that Fedora cross-compile is for > kernels/bootloaders only, though I'd love to hear from someone at Red > Hat if I'm mistaken. > > Ubuntu/Debian do support the functionality, so you could try those > environments (as used by Github Actions for DPDK commits), use a third > party toolchain such as those found on: > > https://toolchains.bootlin.com/releases_powerpc64le-power8.html > > Or you could use the IBM Advanced Toolchain for POWER: > > https://www.ibm.com/support/pages/advtool-cross-compilers > > Dave > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] config: set pkgconfig for ppc64le 2022-08-29 10:30 ` Thomas Monjalon @ 2022-08-30 17:39 ` David Christensen 2022-08-30 18:36 ` Ali Alnubani 0 siblings, 1 reply; 15+ messages in thread From: David Christensen @ 2022-08-30 17:39 UTC (permalink / raw) To: Thomas Monjalon, Thinh Tran; +Cc: Ali Alnubani, dev On 8/29/22 3:30 AM, Thomas Monjalon wrote: > What is the conclusion on this patch? > It is good to go? Acked? Not from me yet. Just asked about the test environment so I can duplicate the issue. My understanding is that Ubuntu cross-compiles for CI/CD are still working so I'd like to understand the test case the drives this need. Dave ^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: [PATCH] config: set pkgconfig for ppc64le 2022-08-30 17:39 ` David Christensen @ 2022-08-30 18:36 ` Ali Alnubani 2022-10-26 16:21 ` Ali Alnubani 0 siblings, 1 reply; 15+ messages in thread From: Ali Alnubani @ 2022-08-30 18:36 UTC (permalink / raw) To: David Christensen; +Cc: dev, Thinh Tran, NBU-Contact-Thomas Monjalon (EXTERNAL) > On 8/29/22 3:30 AM, Thomas Monjalon wrote: > > What is the conclusion on this patch? > > It is good to go? Acked? > > Not from me yet. > > Just asked about the test environment so I can duplicate the issue. My > understanding is that Ubuntu cross-compiles for CI/CD are still working > so I'd like to understand the test case the drives this need. > > Dave Trying to enable the mlx drivers when cross-building for ppc64le, I added the directory containing the .pc files from an rdma-core (https://github.com/linux-rdma/rdma-core) ppc64le cross build, but Meson didn't detect the dependencies without installing pkg-config-powerpc64le-linux-gnu and setting binaries.pkgconfig as powerpc64le-linux-gnu-pkg-config. I just tried to reproduce the issue with a cross build of numactl, but Meson will not detect it, even with my change. Seems that PKG_CONFIG_PATH=:/path/to/numactl/build/lib/pkgconfig gets ignored. - Ali ^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: [PATCH] config: set pkgconfig for ppc64le 2022-08-30 18:36 ` Ali Alnubani @ 2022-10-26 16:21 ` Ali Alnubani 0 siblings, 0 replies; 15+ messages in thread From: Ali Alnubani @ 2022-10-26 16:21 UTC (permalink / raw) To: David Christensen; +Cc: dev, Thinh Tran, NBU-Contact-Thomas Monjalon (EXTERNAL) > -----Original Message----- > From: Ali Alnubani <alialnu@nvidia.com> > Sent: Tuesday, August 30, 2022 9:36 PM > To: David Christensen <drc@linux.vnet.ibm.com> > Cc: dev@dpdk.org; Thinh Tran <thinhtr@linux.vnet.ibm.com>; NBU-Contact- > Thomas Monjalon (EXTERNAL) <thomas@monjalon.net> > Subject: RE: [PATCH] config: set pkgconfig for ppc64le > > > On 8/29/22 3:30 AM, Thomas Monjalon wrote: > > > What is the conclusion on this patch? > > > It is good to go? Acked? > > > > Not from me yet. > > > > Just asked about the test environment so I can duplicate the issue. My > > understanding is that Ubuntu cross-compiles for CI/CD are still working > > so I'd like to understand the test case the drives this need. > > > > Dave > > Trying to enable the mlx drivers when cross-building for ppc64le, I added the > directory containing > the .pc files from an rdma-core (https://github.com/linux-rdma/rdma-core) > ppc64le cross build, but Meson > didn't detect the dependencies without installing pkg-config-powerpc64le- > linux-gnu and setting > binaries.pkgconfig as powerpc64le-linux-gnu-pkg-config. > > I just tried to reproduce the issue with a cross build of numactl, but Meson > will not > detect it, even with my change. Seems that > PKG_CONFIG_PATH=:/path/to/numactl/build/lib/pkgconfig > gets ignored. > Hello David, Do you still have any concerns about this change? Do you have any similar use-cases that you can test? (i.e., check if pkg-config can detect a cross-built dependency for ppc64le). By the way, we do a similar change for arm cross builds: https://git.dpdk.org/dpdk/commit/config/arm/arm64_armv8_linux_gcc?id=f31d17807236094268ccd1bead5d740a10fec513 Thanks, Ali ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] config: set pkgconfig for ppc64le 2022-07-07 11:41 [PATCH] config: set pkgconfig for ppc64le Ali Alnubani 2022-07-11 20:10 ` Thomas Monjalon @ 2022-08-30 17:36 ` David Christensen 1 sibling, 0 replies; 15+ messages in thread From: David Christensen @ 2022-08-30 17:36 UTC (permalink / raw) To: dev On 7/7/22 4:41 AM, Ali Alnubani wrote: > Meson fails to detect the dependencies that are included > in PKG_CONFIG_PATH and built for ppc64le if binaries.pkgconfig > is not set in the ppc64le cross-file for Ubuntu. > > This fixes the issue by setting binaries.pkgconfig to the > binary provided by the package 'pkg-config-powerpc64le-linux-gnu'. > > Signed-off-by: Ali Alnubani <alialnu@nvidia.com> > --- > config/ppc/ppc64le-power8-linux-gcc-ubuntu | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/config/ppc/ppc64le-power8-linux-gcc-ubuntu b/config/ppc/ppc64le-power8-linux-gcc-ubuntu > index 3027d66f8d..c2d5b1dc6a 100644 > --- a/config/ppc/ppc64le-power8-linux-gcc-ubuntu > +++ b/config/ppc/ppc64le-power8-linux-gcc-ubuntu > @@ -3,6 +3,7 @@ c = ['ccache', 'powerpc64le-linux-gnu-gcc'] > cpp = ['ccache', 'powerpc64le-linux-gnu-g++'] > ar = 'powerpc64le-linux-gnu-ar' > strip = 'powerpc64le-linux-gnu-strip' > +pkgconfig = 'powerpc64le-linux-gnu-pkg-config' > > [host_machine] > system = 'linux' What's the test environment that prompted this patch? I'd like to try replicating before approving. Dave ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2022-10-26 16:21 UTC | newest] Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2022-07-07 11:41 [PATCH] config: set pkgconfig for ppc64le Ali Alnubani 2022-07-11 20:10 ` Thomas Monjalon 2022-07-13 7:39 ` Ali Alnubani 2022-07-13 9:12 ` Thomas Monjalon 2022-07-13 10:14 ` Ali Alnubani 2022-07-13 10:51 ` Ali Alnubani 2022-07-13 19:49 ` Thinh Tran 2022-07-14 6:58 ` Ali Alnubani 2022-07-18 20:16 ` Thinh Tran 2022-07-19 23:02 ` David Christensen 2022-08-29 10:30 ` Thomas Monjalon 2022-08-30 17:39 ` David Christensen 2022-08-30 18:36 ` Ali Alnubani 2022-10-26 16:21 ` Ali Alnubani 2022-08-30 17:36 ` David Christensen
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).