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.

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?

How do you compile DPDK?

Thanks,

Damjan


> 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

Reply via email to