Thanks Rahul.
I had indeed updated the do_configure_preprend() as follows:
do_configure_prepend () {
sed -e
"s#CONFIG_RTE_LIBRTE_POWER=y#CONFIG_RTE_LIBRTE_POWER=${CONFIG_EXAMPLE_VM_POWER_MANAGER}#"
-i ${S}/config/common_linuxapp
echo "CONFIG_RTE_BUILD_SHARED_LIB=y" >> ${S}/config/common_linuxapp
}
I had forgotten I made this change, but I was able to get a successful static
build after removing the shared lib change. I, however, want to build shared
libs.
I made the change you suggested to dpdk-16.04/mk/rte.lib.mk and I see the error
in the install stage:
install: cannot stat
'/home/adalela/poky15/build/tmp/work/mohonpeak64-poky-linux/dpdk/16.04-r0/dpdk-16.04/x86_64-ivshmem-linuxapp-gcc/lib/*.a':
No such file or directory
I will wait for your patch. Thanks for the help.
Ashish
From: Gupta, Rahul KumarXX [mailto:[email protected]]
Sent: Monday, July 18, 2016 3:33 PM
To: Ashish Dalela (adalela) <[email protected]>; [email protected]
Cc: Tan, Raymond <[email protected]>
Subject: RE: Mohonpeak64 DPDK Build Failure
Then when I build dpdk, I get the following error in compile:
x86_64-poky-linux-gcc -m64
-Wl,--version-script=/home/adalela/poky15/build/tmp/work/mohonpeak64-poky-linux/dpdk/16.04-r0/dpdk-16.04/lib/librte_eal/linuxapp/eal/rte_eal_version.map
-L/home/adalela/poky15/build/tmp/sysroots/mohonpeak64/usr/lib -shared eal.o
eal_hugepage_info.o eal_memory.o eal_thread.o eal_log.o eal_pci.o eal_pci_uio.o
eal_pci_vfio.o eal_pci_vfio_mp_sync.o eal_debug.o eal_lcore.o eal_timer.o
eal_interrupts.o eal_alarm.o eal_ivshmem.o eal_common_lcore.o
eal_common_timer.o eal_common_memzone.o eal_common_log.o eal_common_launch.o
eal_common_pci.o eal_common_pci_uio.o eal_common_memory.o eal_common_tailqs.o
eal_common_errno.o eal_common_cpuflags.o eal_common_string_fns.o
eal_common_hexdump.o eal_common_devargs.o eal_common_dev.o eal_common_options.o
eal_common_thread.o eal_common_proc.o rte_malloc.o malloc_elem.o malloc_heap.o
rte_keepalive.o rte_cpuflags.o -ldl -lpthread -lgcc_s -lrt
-Wl,-soname,librte_eal.so.2.1 -o librte_eal.so.2.1
/home/adalela/poky15/build/tmp/sysroots/x86_64-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/5.3.0/ld:
cannot find crti.o: No such file or directory
/home/adalela/poky15/build/tmp/sysroots/x86_64-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/5.3.0/ld:
cannot find crtbeginS.o: No such file or directory
/home/adalela/poky15/build/tmp/sysroots/x86_64-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/5.3.0/ld:
cannot find /lib/libpthread.so.0
/home/adalela/poky15/build/tmp/sysroots/x86_64-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/5.3.0/ld:
cannot find /usr/lib/libpthread_nonshared.a
collect2: error: ld returned 1 exit status
make[6]: *** [librte_eal.so.2.1] Error 1
make[5]: *** [eal] Error 2
make[5]: *** Waiting for unfinished jobs....
It looks that you are building the shared library for lib_rte_eal. It is built
static by default. I can reproduce this problem when building shared
librte_eal.so and will send a patch to fix it soon.
Can you try changing CONFIG_RTE_BUILD_SHARED_LIB to "n" in the dpdk config?
This will ensure that the libs are built statically.
If you want to build shared libs, you may have to pass EXTRA_CFLAGS in rte
Makefile like such:
# Override the definition of LD here, since we're linking with CC
-LD := $(CC) $(CPU_CFLAGS) $(EXTRA_CFLAGS)
+LD := $(CC) $(CPU_CFLAGS)
Thanks,
Rahul Kumar Gupta
--
_______________________________________________
meta-intel mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/meta-intel