[dpdk-dev] Can't build DPDK-16.04 on CentOS 6.8

Martinx - ジェームズ thiagocmartinsc at gmail.com
Fri Jun 3 17:17:21 CEST 2016


On 3 June 2016 at 06:45, Ferruh Yigit <ferruh.yigit at intel.com> wrote:

> On 6/1/2016 9:07 PM, Martinx - ジェームズ wrote:
> > Guys,
> >
> >  I'm trying to build DPDK-16.04 on CentOS 6.8, but it is failing, here is
> > the error:
> >
> > ---
> > ...
> > == Build lib/librte_eal/linuxapp
> > == Build lib/librte_eal/linuxapp/eal
> > == Build lib/librte_eal/linuxapp/igb_uio
> >   CC eal.o
> >   CC eal_hugepage_info.o
> >   CC eal_memory.o
> >   LD
> >
> /root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/igb_uio/built-in.o
> >   CC [M]
> >
> /root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.o
> >   CC eal_thread.o
> >
> /root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.c:
> > In function 'igbuio_msix_mask_irq':
> >
> /root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.c:157:
> > error: 'PCI_MSIX_ENTRY_CTRL_MASKBIT' undeclared (first use in this
> function)
> >
> /root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.c:157:
> > error: (Each undeclared identifier is reported only once
> >
> /root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.c:157:
> > error: for each function it appears in.)
> > make[8]: ***
> >
> [/root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.o]
> > Error 1
> > make[7]: ***
> >
> [_module_/root/rpmbuild/BUILD/dpdk-16.04/x86_64-default-linuxapp-gcc/build/lib/librte_eal/linuxapp/igb_uio]
> > Error 2
> > make[6]: *** [sub-make] Error 2
> > make[5]: *** [igb_uio.ko] Error 2
> > make[4]: *** [igb_uio] Error 2
> > make[4]: *** Waiting for unfinished jobs....
> >   CC eal_log.o
> >   CC eal_pci.o
> >   CC eal_pci_uio.o
> >   CC eal_pci_vfio.o
> >   CC eal_pci_vfio_mp_sync.o
> > ...
> > ---
> >
> >  Any clue?
> >
> >  I'm trying to build it by running:
> >
> > --
> > rpmbuild --ba /root/rpmbuild/SPECS/dpdk.spec
> > --
> >
> >  I removed the "doc" and the need for Xen out of it... I can take this
> spec
> > and the dpdk-16.04.tar.gz and build it on CentOS 7.
> >
> > Thanks!
> > Thiago
> >
>
> Hi Thiago,
>
> As a reference, I tested spec file on Fedora 23, compilation worked fine.
> Only I found you need to set RTE_TARGET=x86_64-default-linuxapp-gcc
> before building, to be able to package all files.
>
> meanwhile PCI_MSIX_ENTRY_CTRL_MASKBIT is defined for kernels >= 2.6.38,
> BUT it already defined in igb_uio/compat.h for the case kernel headers
> don't have it, so it is not related to the kernel versions, not sure
> about source of the error.
>
> Thanks,
> ferruh
>

Hello Ferruh,

 The dpdk.spec file already tries to compile it by using
"RTE_TARGET=x86_64-default-linuxapp-gcc", look:

---
# rpmbuild --ba /root/rpmbuild/SPECS/dpdk.spec
.........
+ unset DISPLAY
+ make O=x86_64-default-linuxapp-gcc T=x86_64-native-linuxapp-gcc config
Configuration done
.........
---

 Am I right?

 But it fails... I'll need to stick with DPDK-1.8 for CentOS 6 for now,
since I can compile it without problems...

 Thanks anyway man!

Best,
Thiago


More information about the dev mailing list