On Sun, Jun 25, 2017 at 02:38:20PM +0300, Elan Ruusamäe wrote: > yuk. how this should be fixed? > > full build log available here: > http://buildlogs.pld-linux.org//index.php?dist=th&arch=x86_64&ok=0&name=rpm&id=6b359a44-4012-40a8-a9da-199ee4e72696&action=tail > > > libtool: compile: x86_64-pld-linux-g++ -DHAVE_CONFIG_H -I. -I.. -I. > -I.. -I../build -I../lib -I../lib -I../rpmdb -I../rpmio -I../misc > -I../lua/local -I../lua/local -I../lua -I../lua -DRPM_OS_LINUX=040139 > -I/usr/include/db5.2 -I/usr/include/ossp-uuid -I/usr/include/ossp-uuid > -O2 -fwrapv -pipe -Wformat -Werror=format-security -gdwarf-4 > -fno-debug-types-section -fvar-tracking-assignments -g2 > -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector-strong > --param=ssp-buffer-size=4 -fPIC -march=x86-64 -gdwarf-4 > -fno-debug-types-section -fvar-tracking-assignments -g2 -MT rpmjni.lo > -MD -MP -MF .deps/rpmjni.Tpo -c rpmjni.cc -fPIC -DPIC -o .libs/rpmjni.o > In file included from /usr/include/c++/6.3.0/stdlib.h:36:0, > from ../system.h:196, > from rpmjni.cc:1: > /usr/include/c++/6.3.0/cstdlib:143:11: error: ???::getenv??? has not been > declared > using ::getenv; > ^~~~~~ > In file included from ../system.h:196:0, > from rpmjni.cc:1: > /usr/include/c++/6.3.0/stdlib.h:62:12: error: ???std::getenv??? has not > been declared > using std::getenv; > ^~~~~~ > make[2]: *** [Makefile:2146: rpmjni.lo] Error 1
rpm 5.4.15 or 5.4.16 + glibc >= 2.17? Old rpm's system.h defines getenv macro before including <stdlib.h>, this probably breaks getenv() prototypes declared in this header. rpm 5.4.17 includes <stdlib.h> before redefining getenv to secure_getenv. -- Jakub Bogusz http://qboosh.pl/ _______________________________________________ pld-devel-en mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
