From mboxrd@z Thu Jan 1 00:00:00 1970 From: Qiaobing Xie Subject: 1.7.0 release failed to compile on linux Date: Thu, 14 Aug 2014 16:44:31 -0500 Message-ID: <53ED2DBF.4070003@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: quoted-printable To: dev-VfR2kkLFssw@public.gmane.org Return-path: List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" Hi, I got the following error when I tried to compile 1.7.0 release tarball=20 on a Linux box (Ubuntu 12.04/kernel=3D3.13.0-32-generic, gcc=3D4.6.3): =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D In file included from=20 /home/qxie/dpdk-1.7.0/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep= .h:41:0, from=20 /home/qxie/dpdk-1.7.0/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h:= 31, from=20 /home/qxie/dpdk-1.7.0/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h= :31, from=20 /home/qxie/dpdk-1.7.0/build/build/lib/librte_eal/linuxapp/kni/e1000_82575= .c:38: /home/qxie/dpdk-1.7.0/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h:3= 853:1:=20 error: conflicting types for =91skb_set_hash=92 /usr/src/linux-headers-3.13.0-32-generic/include/linux/skbuff.h:740:1:=20 note: previous definition of =91skb_set_hash=92 was here make[8]: ***=20 [/home/qxie/dpdk-1.7.0/build/build/lib/librte_eal/linuxapp/kni/e1000_8257= 5.o]=20 Error 1 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Apparently the version check around 'skb_set_hash' in kcompat.h failed=20 for some reason. To work around it, I temporarily commented out that=20 'skb_set_hash' definition code and rte_kni complied fine. But it failed=20 again in librte_pmd_ixgbe: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D In file included from=20 /home/qxie/dpdk-1.7.0/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:41:0: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/nmmintrin.h:31:3: error:=20 #error "SSE4.2 instruction set not enabled" /home/qxie/dpdk-1.7.0/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c: In function=20 =91ixgbe_recv_pkts_vec=92: /home/qxie/dpdk-1.7.0/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:297:3:=20 error: implicit declaration of function =91_mm_shuffle_epi8=92=20 [-Werror=3Dimplicit-function-declaration] /home/qxie/dpdk-1.7.0/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:297:3:=20 error: nested extern declaration of =91_mm_shuffle_epi8=92=20 [-Werror=3Dnested-externs] /home/qxie/dpdk-1.7.0/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:297:11:=20 error: incompatible types when assigning to type =91__m128i=92 from type = =91int=92 /home/qxie/dpdk-1.7.0/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:298:11:=20 error: incompatible types when assigning to type =91__m128i=92 from type = =91int=92 /home/qxie/dpdk-1.7.0/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:313:11:=20 error: incompatible types when assigning to type =91__m128i=92 from type = =91int=92 /home/qxie/dpdk-1.7.0/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:314:11:=20 error: incompatible types when assigning to type =91__m128i=92 from type = =91int=92 /home/qxie/dpdk-1.7.0/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:341:3:=20 error: implicit declaration of function =91_mm_popcnt_u64=92=20 [-Werror=3Dimplicit-function-declaration] /home/qxie/dpdk-1.7.0/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:341:3:=20 error: nested extern declaration of =91_mm_popcnt_u64=92=20 [-Werror=3Dnested-externs] cc1: all warnings being treated as errors make[3]: *** [ixgbe_rxtx_vec.o] Error 1 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D My CPU is the older Intel C2D E6550 which does not have sse4.2/sse4.1=20 support. Is there a way to work around this? -Q