getting bro 2.5.5 source

Hello community. I have been building Bro from source, but I realized that I don’t want to be downloading the tip source but rather the 2.5.5 source. I tried grabbing the source from GitHub at https://github.com/bro/bro/archive/v2.5.5.tar.gz, but when I do a configure inside this directory, it fails because the cmake directory inside is empty.

I was doing a recursive clone of the git repo:

$ git clone --recursive https://github.com/bro/bro.git

I noticed that there is a 2.5 release branch, so I checkout that:

$ git checkout release/2.5

But then when I try to run things, it breaks when I run check on the scripts (it’s like the Bro interpreter is 2.5 but the scripts are 2.6?). I even tried doing this, without the recursive clone, but it still didn’t work:

$ git clone https://github.com/bro/bro.git
$ git checkout release/2.5
$ git submodule init
$ git submodule update
$ ./configure

Unfortunately, our proxy doesn’t let us get to bro.org currently, so I’m trying to make this work from the github repo. Any ideas?

Hello community. I have been building Bro from source, but I realized that I don't want to be downloading the tip source but rather the 2.5.5 source. I tried grabbing the source from GitHub at https://github.com/bro/bro/archive/v2.5.5.tar.gz, but when I do a configure inside this directory, it fails because the cmake directory inside is empty.

The file you are probably looking for is https://www.bro.org/downloads/bro-2.5.5.tar.gz

The auto archives from github unfortunately don't include the submodules.

I was doing a recursive clone of the git repo:

$ git clone --recursive https://github.com/bro/bro.git

I noticed that there is a 2.5 release branch, so I checkout that:

$ git checkout release/2.5

But then when I try to run things, it breaks when I run check on the scripts (it's like the Bro interpreter is 2.5 but the scripts are 2.6?). I even tried doing this, without the recursive clone, but it still didn't work:

$ git clone https://github.com/bro/bro.git
$ git checkout release/2.5
$ git submodule init
$ git submodule update
$ ./configure <fails>

Unfortunately, our proxy doesn't let us get to bro.org currently, so I'm trying to make this work from the github repo. Any ideas?

I worked this out a while ago, I think your problem is that updating the submodules only updates the top level, but bro has submodules inside of submodules and you need to do it recursively.

These are the commands I used to use when building an arbitrary bro commit:

    git checkout -f $VERSION
    git submodule foreach --recursive git submodule init
    git submodule update --recursive -f || git submodule update --recursive

Also, I believe that if you did

    git clone --branch v2.5.5 --recursive https://github.com/bro/bro.git

you would end up with the correct checkout as well.

thank you. that helps a lot! :slight_smile: