memtier_benchmark
memtier_benchmark copied to clipboard
when install the memtier, I got the error "./configure: line 5167: syntax error near unexpected token `LIBEVENT_OPENSSL,'"
when install the memtier, I got the error
./configure: line 5167: syntax error near unexpected token `LIBEVENT_OPENSSL,'
./configure: line 5167: ` PKG_CHECK_MODULES(LIBEVENT_OPENSSL,'
OS : Centos libevent-2.0.22-stable has been installed
My install step is:
1: install libevent,
wget https://github.com/libevent/libevent/releases/download/release-2.0.22-stable/libevent-2.0.22-stable.tar.gz
tar xvzf libevent-2.0.22-stable.tar.gz
cd libevent-2.0.22-stable
./configure
make && make install
2: config the libevent
echo "export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:\${PKG_CONFIG_PATH}" >> /etc/profile
source /etc/profile
ldconfig /usr/local/lib
3: install memtier_benchmark-1.3.0
autoreconf -ivf
./configure --prefix=/usr/local/memtier
now , got the error above
@gxkevin Looks like an autoconf issue, make sure you have pkg-config installed before running autoreconf.
@gxkevin Looks like an
autoconfissue, make sure you havepkg-configinstalled before runningautoreconf.
yes,I have already install the pkg-config @yossigo
[]# which pkg-config
/usr/bin/pkg-config
pkg-config -version
1.4.2
@gxkevin But also please confirm that you've executed autoreconf after the package was installed. Otherwise the generated configure script would not work.
I am having same problem. what would be right way to fix if package was installed after executing autoreconf ?
@tgupta-adc autoreconf -ivf should be able to set up the build tree properly. If that's not working, please provide information about your OS / Linux Distro / Version.
@yossigo Probably I have different issue. I am seeing this error . I am using CentOS Linux release 7.8.2003
shard_connection.cpp:198:79: error: ‘bufferevent_openssl_socket_new’ was not declared in this scope sockfd, ctx, BUFFEREVENT_SSL_CONNECTING, BEV_OPT_CLOSE_ON_FREE); ^ shard_connection.cpp: In member function ‘void shard_connection::handle_event(short int)’: shard_connection.cpp:518:61: error: ‘bufferevent_get_openssl_error’ was not declared in this scope while ((sslerr = bufferevent_get_openssl_error(m_bev))) { ^ make[1]: *** [memtier_benchmark-shard_connection.o] Error 1
@tgupta-adc Did you run ./configure successfully before attempting to build?
yes. Adding last couple of lines of output
checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking pcre.h usability... yes checking pcre.h presence... yes checking for pcre.h... yes checking zlib.h usability... yes checking zlib.h presence... yes checking for zlib.h... yes checking event2/event.h usability... yes checking event2/event.h presence... yes checking for event2/event.h... yes checking whether stat file-mode macros are broken... no checking for size_t... yes checking for stdlib.h... (cached) yes checking for GNU libc compatible malloc... yes checking for working memcmp... yes checking for gettimeofday... yes checking for memchr... yes checking for memset... yes checking for socket... yes checking for strerror... yes checking for random_r... yes checking for drand48... yes checking for pkg-config... /bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for LIBEVENT_OPENSSL... yes checking for LIBSSL... yes checking for LIBCRYPTO... yes checking for library containing clock_gettime... none required checking for pcre_compile in -lpcre... yes checking for deflateInit_ in -lz... yes checking for pthread_create in -lpthread... yes checking for gai_strerror in -lsocket... no checking for LIBEVENT... yes checking for BASH_COMPLETION... no checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating config.h config.status: config.h is unchanged config.status: executing depfiles commands config.status: executing libtool commands
I was able to get is working on Ubuntu20.04 VM, Centos is still a problem, but not a blocker for me
@tgupta-adc Strange, because the configure script should confirm libevent_openssl is available before enabling it. I also don't see this reproducing on a vanilla CentOS environment, so it might be something special in your setup.
@yossigo Hello! I'm totally follow the steps on the README.md, but also meet this problem .
./configure: line 5665: syntax error near unexpected token LIBEVENT_OPENSSL,
./configure: line 5665: PKG_CHECK_MODULES(LIBEVENT_OPENSSL,
My OS information as follows:
Operating System: CentOS Linux 7 (Core)
Kernel: Linux 3.10.0-1127.el7.x86_64
And my libevent version is libevent-2.0.22-stable.
But I execute ./configure successfully on another machine with Ubuntu 22.04.3 LTS and 5.15.0-88-generic kernel.
@Jude-Lu Make sure you have pkgconfig installed, and run autoreconf -ivf prior to executing ./configure to refresh the script.
@yossigo I have fixed the bug using four steps :)
- upgraded the pkg-config from 0.27 version to 0.29. But it still reports an error:
cannot find libssl; - located the direction of
libsslusing 'ldconfig -p | grep libssl'; - found the
libssl.pcusingfind /lib64/ -name libssl.pc 2>/dev/null. The/lib64is the output of step 2 on my machine; - exportd the output of step 3,
/lib64/pkgconfig/, to the enviroment variablePKG_CONFIG_PATH.
@yossigo Hello! I'm totally follow the steps on the README.md, but also meet this problem .
./configure: line 5665: syntax error near unexpected token LIBEVENT_OPENSSL,./configure: line 5665: PKG_CHECK_MODULES(LIBEVENT_OPENSSL,My OS information as follows:
Operating System: CentOS Linux 7 (Core)Kernel: Linux 3.10.0-1127.el7.x86_64And my libevent version is libevent-2.0.22-stable.
But I execute
./configuresuccessfully on another machine with Ubuntu 22.04.3 LTS and 5.15.0-88-generic kernel.