sonic-sairedis icon indicating copy to clipboard operation
sonic-sairedis copied to clipboard

compile syncd-vs failed

Open lguohan opened this issue 4 years ago • 6 comments

log here.

https://dev.azure.com/mssonic/be1b070f-be15-4154-aade-b1d3bfb17054/_apis/build/builds/2123/logs/29

lguohan avatar Jan 28 '21 03:01 lguohan

where this failure occurs ?

kcudnik avatar Jan 28 '21 13:01 kcudnik

2021-01-28T03:30:48.3383073Z checking how to hardcode library paths into programs... immediate 2021-01-28T03:30:48.3383762Z checking for ANSI C header files... (cached) yes 2021-01-28T03:30:48.3384728Z checking for main in -lsai... no 2021-01-28T03:30:48.3385412Z configure: error: libsai is required for syncd 2021-01-28T03:30:48.3386372Z Makefile:370: recipe for target 'config.status' failed

lguohan avatar Jan 29 '21 18:01 lguohan

but it is using --with-sai=vs

lguohan avatar Jan 29 '21 18:01 lguohan

this produces libsaivs.so not libsai.so

kcudnik avatar Jan 29 '21 18:01 kcudnik

Hi I am observing SYNCD compilation issue for Marvel arm64..

Steps : sudo modprobe overlay make init make configure PLATFORM=marvell-arm64 PLATFORM_ARCH=arm64 make all

Byte-compiling python modules (optimized versions) ... pysairedis.py__init__.py make[5]: Leaving directory '/sonic/src/sonic-sairedis/pyext/py3' make[4]: Leaving directory '/sonic/src/sonic-sairedis/pyext/py3' make[4]: Entering directory '/sonic/src/sonic-sairedis/pyext' make[5]: Entering directory '/sonic/src/sonic-sairedis/pyext' make[5]: Nothing to be done for 'install-exec-am'. make[5]: Nothing to be done for 'install-data-am'. make[5]: Leaving directory '/sonic/src/sonic-sairedis/pyext' make[4]: Leaving directory '/sonic/src/sonic-sairedis/pyext' make[3]: Leaving directory '/sonic/src/sonic-sairedis/pyext' Making install in syncd make[3]: Entering directory '/sonic/src/sonic-sairedis/syncd' /bin/bash ../libtool --tag=CXX --mode=link g++ -g -O2 -fdebug-prefix-map=/sonic/src/sonic-sairedis=. -fstack-protector-strong -Wforma t -Werror=format-security -Wl,-z,relro -o syncd syncd-main.o libSyncd.a ../lib/src/libSaiRedis.a -L../meta/.libs -lsaimetadata -lsaimeta -ldl -lhiredis -lswsscommon -lsai -lpthread -lzmq libtool: link: g++ -g -O2 -fdebug-prefix-map=/sonic/src/sonic-sairedis=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z -Wl,relro -o .libs/syncd syncd-main.o libSyncd.a ../lib/src/libSaiRedis.a -L../meta/.libs /sonic/src/sonic-sairedis/meta/.libs/libsaime tadata.so /sonic/src/sonic-sairedis/meta/.libs/libsaimeta.so -ldl -lhiredis -lswsscommon -lsai -lpthread -lzmq libSyncd.a(libSyncd_a-VendorSai.o): In function syncd::VendorSai::queryAttributeCapability(unsigned long, _sai_object_type_t, unsigned int, _sai_attr_capability_t*)': ****./syncd/VendorSai.cpp:1110: undefined reference to sai_query_attribute_capability'** collect2: error: ld returned 1 exit status Makefile:589: recipe for target 'syncd' failed** make[3]: *** [syncd] Error 1 make[3]: Leaving directory '/sonic/src/sonic-sairedis/syncd' Makefile:433: recipe for target 'install-recursive' failed make[2]: *** [install-recursive] Error 1 make[2]: Leaving directory '/sonic/src/sonic-sairedis' dh_auto_install: make -j1 install DESTDIR=/sonic/src/sonic-sairedis/debian/tmp AM_UPDATE_INFO_DIR=no returned exit code 2 debian/rules:47: recipe for target 'binary-syncd' failed make[1]: *** [binary-syncd] Error 2 make[1]: Leaving directory '/sonic/src/sonic-sairedis' dpkg-buildpackage: error: fakeroot debian/rules binary-syncd gave error exit status 2 [ FAIL LOG END ] [ target/debs/stretch/syncd_1.0.0_arm64.deb ] slave.mk:457: recipe for target 'target/debs/stretch/syncd_1.0.0_arm64.deb' failed make: *** [target/debs/stretch/syncd_1.0.0_arm64.deb] Error 1 make[1]: *** [Makefile.work:285: stretch] Error 2

PRAVEEN-BABY avatar May 24 '21 09:05 PRAVEEN-BABY

error says "sai_query_attribute_capability" method is missing from libsai.so, seems like this method is not exposed by vendor

kcudnik avatar May 24 '21 12:05 kcudnik