compile error

Bug #240219 reported by theJagger
2
Affects Status Importance Assigned to Milestone
noiz2sa (Ubuntu)
New
Undecided
Unassigned

Bug Description

Binary package hint: noiz2sa

This might be my first bug report ever, so if this is really dumb, I apologize in advance.

I was trying to compile the source package of noiz2sa .. the version for hardy noiz2sa_0.51a-7 and the one for intrepid -8 and basically I get a compile error (same one for both packages).

this is the error:
/home/jonny/Desktop/niz2sa8/extracted/src/barragemanager.cc:61: undefined reference to `BulletMLParserTinyXML::BulletMLParserTinyXML(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'

this is the version of ubuntu I'm running:
jonny@garfield:~/Desktop/niz2sa8/extracted$ lsb_release -rd
Description: Ubuntu 8.04
Release: 8.04

this is my g++/cc version:
jonny@garfield:~/Desktop/niz2sa8/extracted$ g++ -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.2 --program-suffix=-4.2 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --enable-targets=all --enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu
Thread model: posix
gcc version 4.2.3 (Ubuntu 4.2.3-2ubuntu7)

this is what happens when I try to build:
jonny@garfield:~/Desktop/niz2sa8/extracted$ dpkg-buildpackage -rfakeroot -uc -b
dpkg-buildpackage: set CPPFLAGS to default value:
dpkg-buildpackage: set CFLAGS to default value: -g -O2
dpkg-buildpackage: set CXXFLAGS to default value: -g -O2
dpkg-buildpackage: set FFLAGS to default value: -g -O2
dpkg-buildpackage: set LDFLAGS to default value: -Wl,-Bsymbolic-functions
dpkg-buildpackage: source package noiz2sa
dpkg-buildpackage: source version 0.51a-8
dpkg-buildpackage: source changed by Robert Lemmen <email address hidden>
dpkg-buildpackage: host architecture i386
 fakeroot debian/rules clean
dh_testdir
dh_testroot
rm -f build-stamp configure-stamp
cd src/bulletml && /usr/bin/make clean
make[1]: Entering directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml'
rm -f *.o *.a
/usr/bin/make -C tinyxml clean
make[2]: Entering directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml/tinyxml'
rm -f core tinyxml.o tinyxmlparser.o xmltest.o tinyxmlerror.o xmltest
make[2]: Leaving directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml/tinyxml'
make[1]: Leaving directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml'
cd src/bulletml/tinyxml && /usr/bin/make clean
make[1]: Entering directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml/tinyxml'
rm -f core tinyxml.o tinyxmlparser.o xmltest.o tinyxmlerror.o xmltest
make[1]: Leaving directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml/tinyxml'
cd src && /usr/bin/make clean
make[1]: Entering directory `/home/jonny/Desktop/niz2sa8/extracted/src'
rm -f noiz2sa *.o
make[1]: Leaving directory `/home/jonny/Desktop/niz2sa8/extracted/src'
dh_clean
 debian/rules build
dh_testdir
touch configure-stamp
dh_testdir
RELEASE_CFLAGS="-Wall -g -O2" /usr/bin/make -C src/bulletml/tinyxml
make[1]: Entering directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml/tinyxml'
g++ -c -g -O2 -Wall -g -O2 tinyxml.cpp -o tinyxml.o
g++ -c -g -O2 -Wall -g -O2 tinyxmlparser.cpp -o tinyxmlparser.o
g++ -c -g -O2 -Wall -g -O2 xmltest.cpp -o xmltest.o
g++ -c -g -O2 -Wall -g -O2 tinyxmlerror.cpp -o tinyxmlerror.o
g++ -o xmltest -Wl,-Bsymbolic-functions tinyxml.o tinyxmlparser.o xmltest.o tinyxmlerror.o
make[1]: Leaving directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml/tinyxml'
CXXFLAGS="-Wall -g -O2" /usr/bin/make -C src/bulletml
make[1]: Entering directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml'
g++ -c -Wall -g -O2 -I/usr/include bulletmlparser-tinyxml.cpp
g++ -c -Wall -g -O2 -I/usr/include bulletmlparser.cpp
g++ -c -Wall -g -O2 -I/usr/include bulletmltree.cpp
g++ -c -Wall -g -O2 -I/usr/include calc.cpp
y.tab.c: In function ‘int yyparse()’:
y.tab.c:1509: warning: deprecated conversion from string constant to ‘char*’
y.tab.c:1627: warning: deprecated conversion from string constant to ‘char*’
formula-variables.h: In member function ‘Val_ Param<Val_>::value() const [with Val_ = double]’:
calc.yy:161: instantiated from here
formula-variables.h:38: warning: comparison between signed and unsigned integer expressions
g++ -c -Wall -g -O2 -I/usr/include formula-variables.cpp
g++ -c -Wall -g -O2 -I/usr/include bulletmlrunner.cpp
g++ -c -Wall -g -O2 -I/usr/include bulletmlrunnerimpl.cpp
/usr/bin/make -C tinyxml
make[2]: Entering directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml/tinyxml'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml/tinyxml'
ar -r libbulletml.a *.o tinyxml/tiny*.o
ar: creating libbulletml.a
make[1]: Leaving directory `/home/jonny/Desktop/niz2sa8/extracted/src/bulletml'
MORE_CFLAGS="-Wall -g -O2" /usr/bin/make -C src
make[1]: Entering directory `/home/jonny/Desktop/niz2sa8/extracted/src'
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o noiz2sa.o noiz2sa.c
noiz2sa.c: In function ‘main’:
noiz2sa.c:266: warning: unused variable ‘btn’
noiz2sa.c:321: warning: control reaches end of non-void function
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o ship.o ship.c
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o shot.o shot.c
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o frag.o frag.c
frag.c: In function ‘addShotFrag’:
frag.c:67: warning: suggest parentheses around + or - inside shift
frag.c:68: warning: suggest parentheses around + or - inside shift
frag.c: In function ‘addShipFrag’:
frag.c:95: warning: unused variable ‘cmy’
frag.c:95: warning: unused variable ‘cmx’
frag.c: In function ‘drawFrags’:
frag.c:140: warning: unused variable ‘y’
frag.c:140: warning: unused variable ‘x’
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o bonus.o bonus.c
g++ -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o foe.o foe.cc
foe.cc: In function ‘void initFoes()’:
foe.cc:60: warning: unused variable ‘j’
foe.cc: In function ‘void closeFoes()’:
foe.cc:71: warning: unused variable ‘j’
foe.cc: In function ‘Foe* addFoe(int, int, double, int, int, int, int, BulletMLParser*)’:
foe.cc:91: warning: unused variable ‘i’
foe.cc: In function ‘void drawFoes()’:
foe.cc:335: warning: unused variable ‘px’
foe.cc:335: warning: unused variable ‘py’
g++ -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o foecommand.o foecommand.cc
g++ -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o barragemanager.o barragemanager.cc
barragemanager.cc: In function ‘void setBarrages(float, int, int)’:
barragemanager.cc:166: warning: unused variable ‘i’
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o attractmanager.o attractmanager.c
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o background.o background.c
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o letterrender.o letterrender.c
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o screen.o screen.c
screen.c: In function ‘drawThickLine’:
screen.c:327: warning: unused variable ‘width2’
screen.c: In function ‘drawBox’:
screen.c:421: warning: unused variable ‘cl’
screen.c:420: warning: unused variable ‘j’
screen.c: In function ‘drawBoxPanel’:
screen.c:457: warning: unused variable ‘cl’
screen.c:456: warning: unused variable ‘j’
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o clrtbl.o clrtbl.c
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o vector.o vector.c
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o degutil.o degutil.c
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o rand.o rand.c
gcc `sdl-config --cflags` -Wall -g -O2 `sdl-config --cflags` -Wall -g -O2 -I/usr/include -c -o soundmanager.o soundmanager.c
soundmanager.c: In function ‘initSound’:
soundmanager.c:93: warning: unused variable ‘interactive’
gcc `sdl-config --cflags` -Wall -g -O2 -o noiz2sa noiz2sa.o ship.o shot.o frag.o bonus.o foe.o foecommand.o barragemanager.o attractmanager.o background.o letterrender.o screen.o clrtbl.o vector.o degutil.o rand.o soundmanager.o `sdl-config --libs` -lSDL_mixer -Lbulletml -lbulletml -lstdc++
barragemanager.o: In function `readBulletMLFiles':
/home/jonny/Desktop/niz2sa8/extracted/src/barragemanager.cc:61: undefined reference to `BulletMLParserTinyXML::BulletMLParserTinyXML(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
collect2: ld returned 1 exit status
make[1]: *** [noiz2sa] Error 1
make[1]: Leaving directory `/home/jonny/Desktop/niz2sa8/extracted/src'
make: *** [build-stamp] Error 2
dpkg-buildpackage: failure: debian/rules build gave error exit status 2

Revision history for this message
Jonas Kölker (jonaskoelker) wrote :

Note that in the source package of libbulletml-dev, the patches in ./debian/patches appear to fix this---at least they mention a symbol of that name.

I _think_ (and I'm trying to prove this by example) that the trick is to build your own libbulletml from source, then compile and link against that instead of the one that's installed.

(I'm doing this with noiz2sa version 0.51a-8 and libbulletml-dev 0.0.6-3ubuntu1)

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.