Hi Zhangfei,
Hi, Akhil
On 2022/10/11 下午5:22, Akhil Goyal wrote:
gakhil@cavium-SR1-T640:/home/gakhil/up/uadk$ make make all-recursive make[1]: Entering directory '/home/gakhil/up/uadk' Making all in . make[2]: Entering directory '/home/gakhil/up/uadk' depbase=`echo wd.lo | sed 's|[^/]*$|.deps/&|;s|.lo$||'`;\ /bin/bash ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I.
Wall -Werror -fno-strict-aliasing -I./include - DUADK_VERSION_NUMBER=""UADK version: 2.3.37"" - DUADK_RELEASED_TIME=""Released Jun 11, 2022"" -g -O2 -MT wd.lo -
MD -
MP -MF $depbase.Tpo -c -o wd.lo wd.c &&\
mv -f $depbase.Tpo $depbase.Plo libtool: compile: gcc -DHAVE_CONFIG_H -I. -Wall -Werror -fno-strict-
aliasing -
I./include "-DUADK_VERSION_NUMBER="UADK version: 2.3.37"" "- DUADK_RELEASED_TIME="Released Jun 11, 2022"" -g -O2 -MT wd.lo -MD
MP
-MF .deps/wd.Tpo -c wd.c -fPIC -DPIC -o .libs/wd.o
depbase=`echo wd_mempool.lo | sed 's|[^/]*$|.deps/&|;s|.lo$||'`;\ /bin/bash ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I.
Wall -Werror -fno-strict-aliasing -I./include - DUADK_VERSION_NUMBER=""UADK version: 2.3.37"" - DUADK_RELEASED_TIME=""Released Jun 11, 2022"" -g -O2 -MT wd_mempool.lo -MD -MP -MF $depbase.Tpo -c -o wd_mempool.lo wd_mempool.c &&\
mv -f $depbase.Tpo $depbase.Plo libtool: compile: gcc -DHAVE_CONFIG_H -I. -Wall -Werror -fno-strict-
aliasing -
I./include "-DUADK_VERSION_NUMBER="UADK version: 2.3.37"" "- DUADK_RELEASED_TIME="Released Jun 11, 2022"" -g -O2 -MT wd_mempool.lo -MD -MP -MF .deps/wd_mempool.Tpo -c wd_mempool.c -
fPIC
-DPIC -o .libs/wd_mempool.o
depbase=`echo v1/wd.lo | sed 's|[^/]*$|.deps/&|;s|.lo$||'`;\ /bin/bash ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I.
Wall -Werror -fno-strict-aliasing -I./include - DUADK_VERSION_NUMBER=""UADK version: 2.3.37"" - DUADK_RELEASED_TIME=""Released Jun 11, 2022"" -g -O2 -MT v1/wd.lo
MD
-MP -MF $depbase.Tpo -c -o v1/wd.lo v1/wd.c &&\
mv -f $depbase.Tpo $depbase.Plo libtool: compile: gcc -DHAVE_CONFIG_H -I. -Wall -Werror -fno-strict-
aliasing -
I./include "-DUADK_VERSION_NUMBER="UADK version: 2.3.37"" "- DUADK_RELEASED_TIME="Released Jun 11, 2022"" -g -O2 -MT v1/wd.lo -
MD -
MP -MF v1/.deps/wd.Tpo -c v1/wd.c -fPIC -DPIC -o v1/.libs/wd.o
In file included from v1/wd.c:30: ./v1/wd_util.h:354:2: error: #error "no platform mb, define one before
compiling"
354 | #error "no platform mb, define one before compiling" | ^~~~~
make[2]: *** [Makefile:788: v1/wd.lo] Error 1 make[2]: Leaving directory '/home/gakhil/up/uadk' make[1]: *** [Makefile:859: all-recursive] Error 1 make[1]: Leaving directory '/home/gakhil/up/uadk' make: *** [Makefile:565: all] Error 2
By the way, what platform are you using. I can not reproduce this error.
I am compiling on Intel XEON server with ubuntu 18.04
Any update??
The uadk lib needs cross-compile on x86. Toolchain: https://urldefense.proofpoint.com/v2/url?u=https- 3A__releases.linaro.org_components_toolchain_binaries_latest-2D7_aarch64- 2Dlinux- 2Dgnu_&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=DnL7Si2wl_PRwpZ9TWey 3eu68gBzn7DkPwuqhd6WNyo&m=91MX2Cs8jDO3kZ8m02cjnNdNxbSoW7V9DE o6KPhTRzdWILxa_DQzYPoa5c5Lq9Q8&s=2- jhckUNn9LCXbLaFaAEdl_5seC82SCXxvkVQEPnNz0&e= Details are documented in https://urldefense.proofpoint.com/v2/url?u=https- 3A__github.com_Linaro_uadk_blob_master_INSTALL&d=DwIDaQ&c=nKjWec2b 6R0mOyPaz7xtfQ&r=DnL7Si2wl_PRwpZ9TWey3eu68gBzn7DkPwuqhd6WNyo&m =91MX2Cs8jDO3kZ8m02cjnNdNxbSoW7V9DEo6KPhTRzdWILxa_DQzYPoa5c5Lq9 Q8&s=pyjDRDPApEQXxPjZ4q0QlXT5DgmAAYdZtNscFbRp8lk&e=
Considering the confusion caused by simple build info in README, We are planning to remove the simple build step in README, only keeps INSTALL. https://urldefense.proofpoint.com/v2/url?u=https- 3A__github.com_Linaro_uadk_pull_510&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7x tfQ&r=DnL7Si2wl_PRwpZ9TWey3eu68gBzn7DkPwuqhd6WNyo&m=91MX2Cs8jD O3kZ8m02cjnNdNxbSoW7V9DEo6KPhTRzdWILxa_DQzYPoa5c5Lq9Q8&s=m6I26 VelKVBjODnByclMKGtmaSEN2kv8ACeZsWbPTg4&e=
Since there are some dependent libraries (libz & openssl) causes cross-compile complicated. We are planning to omit build tests if not found these libs https://urldefense.proofpoint.com/v2/url?u=https- 3A__github.com_Linaro_uadk_pull_508&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7x tfQ&r=DnL7Si2wl_PRwpZ9TWey3eu68gBzn7DkPwuqhd6WNyo&m=91MX2Cs8jD O3kZ8m02cjnNdNxbSoW7V9DEo6KPhTRzdWILxa_DQzYPoa5c5Lq9Q8&s=tcbWSI hyL8b2mX4-Ta54bR4kH2fNkezlmVD24I09mTc&e=
Only libnuma is must required for lib. Fortunately the numa cross compile is simple
https://urldefense.proofpoint.com/v2/url?u=https- 3A__github.com_Linaro_uadk_blob_master_INSTALL&d=DwIDaQ&c=nKjWec2b 6R0mOyPaz7xtfQ&r=DnL7Si2wl_PRwpZ9TWey3eu68gBzn7DkPwuqhd6WNyo&m =91MX2Cs8jDO3kZ8m02cjnNdNxbSoW7V9DEo6KPhTRzdWILxa_DQzYPoa5c5Lq9 Q8&s=pyjDRDPApEQXxPjZ4q0QlXT5DgmAAYdZtNscFbRp8lk&e= $git clone https://urldefense.proofpoint.com/v2/url?u=https- 3A__github.com_numactl_numactl.git&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xt fQ&r=DnL7Si2wl_PRwpZ9TWey3eu68gBzn7DkPwuqhd6WNyo&m=91MX2Cs8jD O3kZ8m02cjnNdNxbSoW7V9DEo6KPhTRzdWILxa_DQzYPoa5c5Lq9Q8&s=hZdhP WLMGMgV9tP7nEQY1G_iWnODYJMCfR41whWchSU&e= $cd numactl $./autogen.sh $autoconf -i $CC=aarch64-linux-gnu-gcc ./configure --host=i386-linux-gnu --target=aarch64-linux-gnu --prefix=${LIBROOT}/usr/local $make $make install
Do you think we still need paste uadk build steps (and cross-compile steps) on dpdk doc/guides/cryptodevs/uadk.rst
Is it not possible to use pkg-config?
Also while building on DPDK which config file is needed? Do you need that also to be cross compiled?