-   Linux - Newbie (
-   -   I can't install the BALL (Biochemical Algorithms Library) on Ubuntu (

nicegiving 03-08-2009 09:28 PM

I can't install the BALL (Biochemical Algorithms Library) on Ubuntu
I can't install the BALL(Biochemical Algorithms Library) on Ubuntu system, my system version is 8.10.

I got the BALL from its web site, and when I use the "./configure" command, I got many problems.

The first problem I got is "can't find the OpenGL headers", and then I installed the "libglu-dev", but it does not work.

Bellow is some of the ./configure output:

checking for flex... flex
checking for yywrap in -lfl... yes
checking lex output file root... lex.yy
checking whether yytext is a pointer... no
checking for bison... bison -y
checking for X... no
checking for OpenGL includes... (/usr/include)
checking for OpenGL library... (/usr/lib)
checking for GLEW library... (/usr/lib)
checking for GLEW headers... (not found!)

Configure failed. If you cannot solve your problem with the aid
of the above error message, please contact the BALL mailing list
or the BALL developers. Please enclose the file 'conf.diag.tar'
which has been created in source. It contains the relevant
files from this configure run. In most cases, the information
is necessary to diagnose what went wrong. This file contains
information about your system setup and versions of compilers
and other tools installed in your system.

I am the new of ubuntu and linux world, please help me!
Thanks very much!

Best wishes!

weibullguy 03-08-2009 10:19 PM


checking for GLEW headers... (not found!)
How about installing libglew1.5-dev?

nicegiving 03-08-2009 11:38 PM

Thank you weibullguy, besides this error, I also have many other errors in configuration step, but now I have successfully configured BALL library, but I got so many errors in the MAKE step, below is my steps:

Install BALL on Ubuntu 8.10

1. Downloading BALL Library from BALL website
2. 解压 BALL
# tar zxvf BALL-version.tar.gz
3. # cd /path-to-ball/source
4. # ./confiure
I got many problems in this step:
1) "can't find the OpenGL headers ..."
Command: # apt-get install mesa-common-dev mesademos libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev
# apt-get install libsdl-image1.2-dev
# apt-get install libsdl1.2-dev
# apt-get install libgl1-mesa-swx11-dev
2) "GLEW not find" (thanks to weibullguy)
# apt-get install glew-utils
# apt-get install libglew1.5
# apt-get install libglew1.5-dev
3) "QT headers... (not found!)"
4) "libQtCore... (not found!)"
# apt-get install libQtCore4 (But it can work!!!)
# ./configure --with-qt-libs=DIR

Then, I have successfully configured BALL ! My makefile has been created!
5. # make
note: I got many errors in this step, below is the make output:

logStream.C: In member function ‘virtual int BALL::LogStreamBuf::sync()’:
logStream.C:76: 警告: 建议在‘for’空语句体的‘;’前添加一个空格或者在其周围显式地加上花括号
logStream.C:83: 错误: ‘strncpy’在此作用域中尚未声明
logStream.C:92: 错误: ‘memcpy’在此作用域中尚未声明
make[2]: *** [logStream.o] 错误 1
make[1]: *** [subdirs] 错误 1
make: *** [dirs] 错误 2

I do not know what's wrong, anybody who can help me??

6. # make install (Till now, I never execute this step.)

I can not make BALL, please help me! thank you very much!

best wishes! -nicegiving

knudfl 03-10-2009 04:34 AM

BALL-1.2 ... Ubuntu 8.10

The "configure" line is important :

./configure --with-qt-libs=/usr/lib --with-moc=moc-qt4 --with-uic=uic-qt4 CXX=g++-4.1
> > 'uic-qt4' will generate 38 headers in include/BALL/VIEW/UIC/,
needed for compiling.

( 'g++-4.1' should be installed, before running './configure ...' )

'g++-4.3' or 'g++-3.3' will not work with BALL on Ubuntu 8.10

'make test' will probably fail.
Be aware that 'make install' just will mv the files,
into BALL-1.2/lib/Linux-i386-g++_4.1.3/

nicegiving 03-11-2009 12:59 AM

Hi knudfl:

thank you for your reply, but do you mean the errors occured because of my wrong version of gcc/g++ on my system?
I will do as your suggest and try again, thank you very much!

Best wishes! -nicegiving

knudfl 03-11-2009 05:46 AM

Yes, the BALL software was written year 2004-2007
and cannot be compiled with the g++-4.3 compiler.

'gcc / g++-3.3', 'gcc / g++-4.1', 'gcc / g++-4.3
are different, and it is an advantage to have them
all, just to be called with the CC= , CXX= options.

( I have 4 or 5 different compilers on some systems,
e.g. gcc-2.95, 3.3, 3.4, 4.1, 4.2, 4.3 .)

nicegiving 03-11-2009 06:38 AM

Hello knudfl, I re-installed BALL as you suggest just now, and the 'configure', 'make' and 'make install' run successfully, but I am fail when running 'make test', I do not know why, bellow is the my steps:

1) Changing my complier from version 4.3 to 4.1

sudo apt-get install gcc-4.1
sudo apt-get install g++-4.1
sudo rm /usr/bin/gcc
sudo rm /usr/bin/g++
sudo ln -s /usr/bin/gcc-4.1 /usr/bin/gcc
sudo ln -s /usr/bin/g++-4.1 /usr/bin/g++

(note: I didn't unintall gcc/g++ 4.3 from my system, I just installed gcc/g++ 4.1 and changed the soft linking, then when I run gcc/g++ command, the newly installed compiler version will work.)

2) Installing "contrib"

When I finished the first step above, I can't install "contrib" successfully, I got the message[make:cc:Command not found], then I re-installed gcc/g++ from Ubuntu 8.10 DVD, both of the version of them is 4.3.2, but this time I can install "contrib" successfully. Bellow is the command I used:
cd /home/zzm/Programs/contrib
sudo ./build_contrib

3) Then I have to change the complier from version 4.3 to 4.1 as the discription in the first step.

4)Runing ./configure

cd /BALL-1.2/source
sudo ./configure --with-qt-libs=/home/zzm/Programs/contrib/lib --with-moc=moc-qt4 --with-uic=uic-qt4 CXX=g++-4.1

5)Running make

sudo make

It took tens of minutes, but finally successed, just so many warnnings. Bellow is the seccuss report:
You may now install the libraries with the command

make install

If you do not trust this Makefile, try

make -n install

first to check where the libraries would be installed.

After you ran make install, please verify the validity
of the installed library by executing
make test

This will compile and run an extensive test suite.

If you use the shared libraries, don't forget to add
the path

6)Running make install

sudo make install

Bellow is the output of the command:
Installing shared libraries under /home/zzm/Programs/BALL-1.2/lib/Linux-i386-g++_4.1.3...

And the files and are in the directory above now.

7)Running make test

sudo make test

and I got the error report:
The following subtests failed:
- ClassTest_test
- Debug_test
- RegularExpression_test
- GlobalTypes_test
- Limits_test
- VersionInfo_test
- RTTI_test

Please mail the output of this run to one of the developers
and include a detailed description of the system you use.
It is also neccessary to include the files ../config.mak ../config.h

make[1]: *** [basic_test] 错误 1
make[1]:正在离开目录 `/home/zzm/Programs/BALL-1.2/source/TEST'
make: *** [test] 错误 2

You said that 'make test' will probably fail, and I failed now, is this normal? And if so, why the 'make test' will fail? Is this mean I have installed BALL successfully?

best wishes to you, and thank you very much!! --nicegiving

knudfl 03-11-2009 03:15 PM

The 'make test' result is the same as my result.
( Probably expected. You can send a report, as asked for.)

Using the installed result will clarify, if the files have
the functions, you require.

About PATH : I would just copy the two libs to
/usr/local/lib , then they are "in a known path"
( If that is a convenient location.)

No need to change the "linking" in /usr/bin of compilers.
Hence the options available .... examples :
'./configure CXX=g++-...'
and ... 'make CC=gcc-.. CXX=g++-..'

I never installed the 'compat' package. Not at all required
when you have all the dependencies.

nicegiving 03-11-2009 11:14 PM

Hi knudfl, I've installed BALL successfully and it is just in use now, as you suggested. thank you very much, really!

All times are GMT -5. The time now is 02:09 PM.