A message for Linux.com registered users: We are in the process of making changes to the Linux forums. Starting Monday, 8/13/18 at 6:00 PM PT, you will be unable to access the forums. They will re-launch as soon as possible on Wednesday, 8/15/18 with new features and improved functionality. Thank you for your patience and stay tuned for the new improved forums.

January 5, 2017

HTTP/2 on cPanel/WHM with EA4

Forums: 

Trying to install, or enable http/2 on WHM but getting stuck. Using below tutorial.

#Prep work
mkdir /root/rpmbuild
cd /root/rpmbuild
yum -y install rpm-build
mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
echo ‘%_topdir %(echo $HOME)/rpmbuild’ > ~/.rpmmacros

#openssl depend
yum -y install perl-WWW-Curl
#apr depend
yum -y install lksctp-tools-devel
#apache depend
yum -y install xmlto lua-devel ea-apr-devel ea-apr-util-devel

yum -y install createrepo
mkdir /root/repo

nano /etc/yum.repos.d/local.repo
[local]
name=CentOS-$releasever – local packages
baseurl=file:///root/repo
enabled=1
gpgcheck=0
protect=1
cost=20
priority=1

#Grab crap
cd /root/rpmbuild
mkdir poop
git clone https://github.com/Cacasapo/ea-apache2-http2.git poop
mv -n poop/SOURCES/find.pl /usr/lib64/perl5
\cp -R poop/SPECS/* SPECS/
\cp -R poop/SOURCES/* SOURCES/
rm -fr poop

#OpenSSL
rpmbuild -ba SPECS/openssl.spec
\cp RPMS/x86_64/openssl-parallel* ../repo
createrepo /root/repo
yum clean expire-cache
yum -y install openssl-parallel

#Do nghttp2
rpmbuild -ba SPECS/nghttp2.spec
\cp RPMS/x86_64/libng* ../repo
\cp RPMS/x86_64/nghttp* ../repo
createrepo /root/repo
yum clean expire-cache
yum -y install libnghttp2-devel

#Do apache
rpmbuild -ba SPECS/ea-apache24.spec
\cp RPMS/x86_64/ea-apache24* ../repo
createrepo /root/repo
yum clean expire-cache
yum -y install ea-apache24

Stuck on this line:
rpmbuild -ba SPECS/nghttp2.spec

/usr/lib64/libssl.so.10: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [libevent-client] Error 1
make[2]: *** Waiting for unfinished jobs....
libtool: link: gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z -Wl,relro -o .libs/client client.o -pthread  ../lib/.libs/libnghttp2.so ../third-party/.libs/libhttp-parser.a -levent_openssl -levent -L/opt/ssl/lib -ldl -pthread
/usr/bin/ld: client.o: undefined reference to symbol 'SSL_get_error@@libssl.so.10'
/usr/lib64/libssl.so.10: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [client] Error 1
libtool: link: gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z -Wl,relro -o .libs/libevent-server libevent-server.o -pthread  ../lib/.libs/libnghttp2.so ../third-party/.libs/libhttp-parser.a -levent_openssl -levent -L/opt/ssl/lib -ldl -pthread
/usr/bin/ld: libevent-server.o: undefined reference to symbol 'SSL_CTX_free@@libssl.so.10'
/usr/lib64/libssl.so.10: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [libevent-server] Error 1
libtool: link: gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z -Wl,relro -o .libs/tiny-nghttpd tiny-nghttpd.o -pthread  ../lib/.libs/libnghttp2.so ../third-party/.libs/libhttp-parser.a -levent_openssl -levent -L/opt/ssl/lib -ldl -pthread
make[2]: Leaving directory `/root/rpmbuild/BUILD/nghttp2-1.17.0/examples'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/rpmbuild/BUILD/nghttp2-1.17.0'
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.TZCKCT (%build)


RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.TZCKCT (%build)

 

Click Here!