I run a 64-bit host building for 32-bit DPDK, which fails with: dpdk/i686-default-linuxapp-gcc$ make == Build scripts == Build scripts/testhost == Build lib == Build lib/librte_eal == Build lib/librte_eal/common == Build lib/librte_eal/linuxapp == Build lib/librte_eal/linuxapp/igb_uio Building modules, stage 2. MODPOST 1 modules == Build lib/librte_eal/linuxapp/eal CC eal.o In file included from /home/lwrt/build/dpdk/lib/librte_eal/linuxapp/eal/eal.c:55:0: /home/lwrt/build/dpdk/lib/librte_eal/linuxapp/eal/eal.c: In function ?eal_parse_base_virtaddr?: /home/lwrt/build/dpdk/i686-default-linuxapp-gcc/include/rte_common.h:133:22: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] RTE_PTR_ALIGN_FLOOR((typeof(ptr))RTE_PTR_ADD(ptr, (align) - 1), align) ^ /home/lwrt/build/dpdk/i686-default-linuxapp-gcc/include/rte_common.h:115:10: note: in definition of macro ?RTE_PTR_ALIGN_FLOOR? (typeof(ptr))rte_align_floor_int((uintptr_t)ptr, align) ^ /home/lwrt/build/dpdk/lib/librte_eal/linuxapp/eal/eal.c:566:9: note: in expansion of macro ?RTE_PTR_ALIGN_CEIL? addr = RTE_PTR_ALIGN_CEIL(addr, RTE_PGSIZE_2M); ^ /home/lwrt/build/dpdk/i686-default-linuxapp-gcc/include/rte_common.h:133:22: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] RTE_PTR_ALIGN_FLOOR((typeof(ptr))RTE_PTR_ADD(ptr, (align) - 1), align) ^ /home/lwrt/build/dpdk/i686-default-linuxapp-gcc/include/rte_common.h:115:46: note: in definition of macro ?RTE_PTR_ALIGN_FLOOR? (typeof(ptr))rte_align_floor_int((uintptr_t)ptr, align) ^ /home/lwrt/build/dpdk/lib/librte_eal/linuxapp/eal/eal.c:566:9: note: in expansion of macro ?RTE_PTR_ALIGN_CEIL? addr = RTE_PTR_ALIGN_CEIL(addr, RTE_PGSIZE_2M); ^ cc1: all warnings being treated as errors make[6]: *** [eal.o] Error 1 make[5]: *** [eal] Error 2 make[4]: *** [linuxapp] Error 2 make[3]: *** [librte_eal] Error 2 make[2]: *** [lib] Error 2 make[1]: *** [all] Error 2 make: *** [all] Error 2
Is this a known problem? Best regards Mats Liljegren