Question: How To Build Bambus Scaffolder On Ubuntu 10.04?
3
gravatar for Michael Barton
9.1 years ago by
Michael Barton1.8k
Akron, Ohio, United States
Michael Barton1.8k wrote:

I've been trying to assemble 454 bacterial scaffolds into a draft assembly using Bambus and a reference genome. I can't however get bambus to compile on my ubuntu machine. According to this guide (PDF) you need to update the header file to include additional references which I have done. However I am still unable to get the grommit binary to compile. The error messages produced by make are shown below. Can anyone offer any suggestions?

for i in src doc ;do cd $i ; make all; cd .. ; done
make[1]: Entering directory `/tmp/bambus-2.33/src'
for i in IO DotLib TIGR_Foundation_CC grommit ;do cd $i ; make all; cd .. ; done
make[2]: Entering directory `/tmp/bambus-2.33/src/IO'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/tmp/bambus-2.33/src/IO'
make[2]: Entering directory `/tmp/bambus-2.33/src/DotLib'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/tmp/bambus-2.33/src/DotLib'
make[2]: Entering directory `/tmp/bambus-2.33/src/TIGR_Foundation_CC'
g++  -D_HAS_GETOPT  -c -o FileSystem.o FileSystem.cc
FileSystem.cc: In static member function ‘static bool         
FileSystem::isCreatableFile(const char*)’:
FileSystem.cc:58: error: invalid conversion from ‘const char*’ to ‘char*’
make[2]: *** [FileSystem.o] Error 1
make[2]: Leaving directory `/tmp/bambus-2.33/src/TIGR_Foundation_CC'
make[2]: Entering directory `/tmp/bambus-2.33/src/grommit'
g++ -Wl  -L../TIGR_Foundation_CC/ -o grommit grommit.o -L. -lgraph -lTigrFoundation
/usr/bin/ld: cannot find -lTigrFoundation
collect2: ld returned 1 exit status
make[2]: *** [grommit] Error 1
make[2]: Leaving directory `/tmp/bambus-2.33/src/grommit'
make[1]: Leaving directory `/tmp/bambus-2.33/src'
make[1]: Entering directory `/tmp/bambus-2.33/doc'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/bambus-2.33/doc'
scaffolding assembly genome • 2.9k views
ADD COMMENTlink modified 10 months ago by RamRS22k • written 9.1 years ago by Michael Barton1.8k
2
gravatar for Darked89
9.1 years ago by
Darked894.2k
Barcelona, Spain
Darked894.2k wrote:

Edited just these four files

nano ./src/TIGR_Foundation_CC/ConfigFile.hh 
nano ./src/TIGR_Foundation_CC/Logger.hh
nano ./src/TIGR_Foundation_CC/OptionResult.hh 
nano ./src/TIGR_Foundation_CC/Options.hh

plus BASEDIR in Makefile. No errors while compiling bambus_2.33 on Debian 5.04 inside VirtualBox. gcc 4.3.2.

In your case I would:

  • check the edits after good night sleep on a fresh source
  • wait a day for some C guru before going some heroic route of switching systems

If you are in a hurry then setting up VirtualBox + Debian takes few hours max, but I am not sure how much load (genome size etc) this can take.

EDIT: format

ADD COMMENTlink modified 10 months ago by RamRS22k • written 9.1 years ago by Darked894.2k

I picked yours as the answer. I didn't work for me but may be useful to others doing something similar.

ADD REPLYlink written 8.3 years ago by Michael Barton1.8k
2
gravatar for Neilfws
9.1 years ago by
Neilfws48k
Sydney, Australia
Neilfws48k wrote:

Just at a first glance, the key error line is:

/usr/bin/ld: cannot find -lTigrFoundation

This tells you that the linker (ld) is looking for a library file named TigrFoundation and cannot find it. That may be because it does not exist - do you need to install something else before BAMBUS? - or because it is in a non-standard location. if the latter, you can try something like (in bash):

export LD_LIBRARY_PATH=/path/to/directory_containing_TigrFoundation/:$LD_LIBRARY_PATH
make clean
make
ADD COMMENTlink modified 10 months ago by RamRS22k • written 9.1 years ago by Neilfws48k

or just run the line and replace -lTigrFoundation with -l/path/to/TigrFoundation libraries ...

ADD REPLYlink modified 10 months ago by RamRS22k • written 9.1 years ago by Paulo Nuin3.7k

I can't find find any files called TigrFoundation. There are however .cc and .hh files called TIGR_Foundation. I've tried updating the makefile so that it's -lTIGR_Foundation how I still get the same error. Specifically what file type is the linker looking for?

ADD REPLYlink modified 10 months ago by RamRS22k • written 9.1 years ago by Michael Barton1.8k

Probably the linker is looking for compiled libraries. Is there a way for you to compile the TIGR_Foundation?

ADD REPLYlink written 9.1 years ago by Paulo Nuin3.7k
1
gravatar for Shefali
9.1 years ago by
Shefali20
Shefali20 wrote:

I am also getting this same error.If you find some solution please let me know and definitively if I find a solution...I will post it here.

ADD COMMENTlink written 9.1 years ago by Shefali20
0
gravatar for User 3725
8.5 years ago by
User 37250
User 37250 wrote:

I was able to compile succesfully with the PDF guide. Under the following ubuntu distro:

2.6.32-27-generic #49-Ubuntu SMP Thu Dec 2 00:51:09 UTC 2010 x86_64 GNU/Linux | gcc version 4.4.3

But first compiling & installing the Tigr_Foundation libraries the trick is adding this header to the Options.hh ($/bambus-2.33/src/TIGR_Foundation_CC/Options.hh)

"#include <cstdio>"

Then you compile & install bambus 2.3

*if you got some previous issues with the gcc substitute the syntaxis following the next help:

An example.

const char* str1;
char* str2 = strchr(str1, 'a');

Gives the following compiler error:

error: invalid conversion from ‘const char*’ to ‘char*’

Fixing this is easy, as demonstrated below.

const char* str1;
const char* str2 = strchr(str1, 'a');
ADD COMMENTlink modified 10 months ago by RamRS22k • written 8.5 years ago by User 37250
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 1577 users visited in the last hour