[Bro] RPM package creation results in unlinked libraries when installed

bkeep bkeep at alias454studios.com
Thu Jul 12 04:25:52 PDT 2018


Hi, I am trying to create an rpm package to easily distribute a package 
to other sensors but seem to be doing something wrong when building the 
package. The package builds okay but when installed, I end up with an 
error, which is "bro: error while loading shared libraries: 
libbroker.so.0: cannot open shared object file: No such file or directory."

Running ldd, shows "not found" but on a working instance, the path is 
populated (/opt/bro/lib/libbroker.so.0). I also double checked that the 
file exists on the file system and it's there.

I can launch broctl and run a few commands but when I do "deploy," I get 
the above error.

On the build system, I have installed the prerequisite software using yum.
yum install cmake make gcc gcc-c++ flex bison libpcap-devel 
openssl-devel python-devel swig zlib-devel rpm-build
Also installed pf_ring from an rpm using the ntop.org repo.

The process I followed for building the package was:
git clone --recursive https://github.com/bro/bro.git
cd bro
LDFLAGS="-lpfring -lpcap" ./configure --prefix=/opt/bro 
--with-pcap=/usr/local/ --pkg-name-prefix=Bro --binary-package
cd build
make package
scp the file to the intended sensor
yum localinstall Bro-2.5-725-Linux-x86_64.rpm

The [root at bro00 ~]# ldd /opt/bro/bin/bro |grep libbroker
     libbroker.so.0 => not found

Both the build machine and the intended install target are setup the 
same. They are Centos 7.5.1804 (Core) VM's running on VMware 6.5 with 
kernel 3.10.0-862.6.3.el7.x86_64.

Compiling BRO from source but leaving off the --binary-package flags 
resulted in a working install on the build machine as well using make && 
make install. I am not sure what piece I am missing here so any advice 
would be appreciated.

Regards,
Brandon


More information about the Bro mailing list