On Fri, 2017-04-14 at 11:19 +0000, Damjan Marion (damarion) wrote: > Marco, > > If you want to do downstream packaging and link against shared dpdk, you can > do it by compiling directly from autotools project. Basically: > > cd src/ > autoreconf -fis > export CFLAGS=…. > ./configure —flags > make > make install > > Please note that we are intentionally linking against static DPDK libs as want > to have flexibility > of adding additional patches to dpdk build. Currently we have bunch of patcher > related to Mellanox ConnectX-5 > which are not available in latest dpdk release. I understand why you use the internal DPDK version. However, I am hopeful (for the future) that cross-collaboration with the DPDK project can avoid the need of keep doing this (for all the good reason of having a common up-stream project with all the goodies in it rather than some sort of "fork" in a consumer project).
> > May I ask what are your distro guidance when it comes to optimization of the > code for specific > microarchitectures? Do you need to support all x86_64 systems or just few > latest generations? We support DPDK since version 2.2 (roughly mid-2015) so I would say any processor which is not older than 2 years... > > How do you compile DPDK? I think the easiest for me here is to post here the link to our .spec file used to generate the package we ship... https://build.opensuse.org/package/view_file/network/dpdk/dpdk.spec?expand=1 You should be able to access it; in case you can't, please, let me know so I can send it to you... I'm going to try your suggested steps and will let you know how it goes. > > Thanks, > > Damjan Thanks, Marco > > > > > > On 12 Apr 2017, at 11:33, Marco Varlese <marco.varl...@suse.com> wrote: > > > > BTW, in case you're wondering which commands I am using to build: > > > > > > > > make bootstrap > > > make build (using build-release produces the same issue) > > > > > > Regards, > > Marco > > > > On Tue, 2017-04-11 at 09:27 +0200, Marco Varlese wrote: > > > > > > Hi, > > > > > > I am facing a build issue with the latest VPP and not sure if others have > > > seen > > > the same? (I'm copying/pasting the errors below) > > > > > > It appears to be broken for both "shared dpdk" and using the "in-repo" > > > dpdk > > > source code. Both compilation mode worked just fine for me using VPP 17.01 > > > so > > > not sure if I have to change anything in the .mk files or build the code > > > differently... > > > > > > I have to say that since I am very interested in consuming the VPP code > > > downstream the "shared mode" compilation option is much more valuable to > > > me... > > > > > > Any help would be much appreciated. > > > > > > > > > When building in shared mode for dpdk I get the following error: > > > > > > t -f 'vpp/app/version.c' || echo '/home/abuild/rpmbuild/BUILD/vpp/build- > > > data/../src/'`vpp/app/version.c > > > [ 415s] /home/abuild/rpmbuild/BUILD/vpp/build- > > > data/../src/vpp/vnet/main.c:21:29: fatal error: vpp/app/version.h: No such > > > file > > > or directory > > > [ 415s] #include <vpp/app/version.h> > > > [ 415s] ^ > > > [ 415s] compilation terminated. > > > [ 415s] make[4]: *** [Makefile:5872: vpp/vnet/bin_vpp-main.o] Error 1 > > > [ 415s] make[4]: *** Waiting for unfinished jobs.... > > > [ 415s] /home/abuild/rpmbuild/BUILD/vpp/build- > > > data/../src/vpp/app/version.c:17:29: fatal error: vpp/app/version.h: No > > > such > > > file or directory > > > [ 415s] #include <vpp/app/version.h> > > > [ 415s] ^ > > > [ 415s] compilation terminated. > > > [ 415s] make[4]: *** [Makefile:5900: vpp/app/bin_vpp-version.o] Error 1 > > > [ 415s] mv -f vpp/app/.deps/bin_vpp-vpe_cli.Tpo vpp/app/.deps/bin_vpp- > > > vpe_cli.Po > > > [ 416s] mv -f vpp-api/pneum/.deps/libpneum_la-pneum.Tpo vpp- > > > api/pneum/.deps/libpneum_la-pneum.Plo > > > [ 425s] make[4]: Leaving directory > > > '/home/abuild/rpmbuild/BUILD/vpp/build- > > > root/build-vpp-native/vpp' > > > [ 425s] make[3]: *** [Makefile:6764: all-recursive] Error 1 > > > [ 425s] make[3]: Leaving directory > > > '/home/abuild/rpmbuild/BUILD/vpp/build- > > > root/build-vpp-native/vpp' > > > [ 425s] make[2]: *** [Makefile:3426: all] Error 2 > > > [ 425s] make[2]: Leaving directory > > > '/home/abuild/rpmbuild/BUILD/vpp/build- > > > root/build-vpp-native/vpp' > > > [ 425s] make[1]: *** [Makefile:699: vpp-build] Error 2 > > > [ 425s] make[1]: Leaving directory > > > '/home/abuild/rpmbuild/BUILD/vpp/build- > > > root' > > > [ 425s] make: *** [Makefile:213: build-release] Error 2 > > > [ 425s] error: Bad exit status from /var/tmp/rpm-tmp.t3xVux (%build) > > > [ 425s] > > > [ 425s] > > > [ 425s] RPM build errors: > > > [ 425s] Bad exit status from /var/tmp/rpm-tmp.t3xVux (%build) > > > [ 425s] > > > [ 425s] linux-yk3w.suse failed "build vpp.spec" at Tue Apr 11 07:19:21 > > > UTC > > > 2017. > > > [ 425s] > > > > > > > > > On the other hand, when building the code using the in-repo dpdk source > > > code I > > > get the following one: > > > > > > CC test.o > > > /usr/lib64/gcc/x86_64-suse-linux/6/../../../../x86_64-suse-linux/bin/ld: > > > /usr/lib64/libmvec_nonshared.a(svml_finite_alias.oS): relocation > > > R_X86_64_PC32 > > > against undefined symbol `_ZGVbN2v_log@@GLIBC_2.22' can not be used when > > > making > > > a shared object; recompile with -fPIC > > > /usr/lib64/gcc/x86_64-suse-linux/6/../../../../x86_64-suse-linux/bin/ld: > > > final > > > link failed: Bad value > > > collect2: error: ld returned 1 exit status > > > /home/mvarlese/repos/vpp/build-root/build-vpp-native/dpdk/dpdk- > > > 17.02/mk/rte.app.mk:235: recipe for target 'cmdline_test' failed > > > make[9]: *** [cmdline_test] Error 1 > > > /home/mvarlese/repos/vpp/build-root/build-vpp-native/dpdk/dpdk- > > > 17.02/mk/rte.subdir.mk:61: recipe for target 'cmdline_test' failed > > > make[8]: *** [cmdline_test] Error 2 > > > make[8]: *** Waiting for unfinished jobs.... > > > CC resource.o > > > > > > > > > Thanks and regards, > > > Marco > > > > > > _______________________________________________ > > > vpp-dev mailing list > > > vpp-dev@lists.fd.io > > > https://lists.fd.io/mailman/listinfo/vpp-dev > > _______________________________________________ > > vpp-dev mailing list > > vpp-dev@lists.fd.io > > https://lists.fd.io/mailman/listinfo/vpp-dev > _______________________________________________ vpp-dev mailing list vpp-dev@lists.fd.io https://lists.fd.io/mailman/listinfo/vpp-dev