Page 1 of 1

BZWorkBench Status

Posted: Fri Oct 23, 2009 2:27 am
by blast
Linux (or at least Ubuntu 9.04)

As of SVN revision 20679, BZWorkBench now builds properly on Ubuntu 9.04 (and probably other distros with modifications to what/how packages are installed) using the following commands (or at least something like this):

Code: Select all

sudo aptitude install subversion g++ libopenscenegraph-dev libfltk1.1-dev
svn co https://bzflag.svn.sourceforge.net/svnroot/bzflag/trunk/bzworkbench/ bzworkbench
cd bzworkbench/Debug
make
cd ..
./Debug/bzworkbench
The README file says that it needs OpenSceneGraph 2.8, but Ubuntu 9.04 has 2.4. It seems to work, but I didn't do any extensive testing to see if there was any issues.

There is still some issues preventing it from building on Mac OSX.

Re: BZWorkBench Status

Posted: Sun Jan 10, 2010 1:43 am
by jpenguin
It didn't work on Kubuntu 9.10 x64

Code: Select all

Building file: ../src/windows/ConsoleWindow.cpp
Invoking: GCC C++ Compiler
g++ -I/usr/include/ -I../include/ -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/windows/ConsoleWindow.d" -MT"src/windows/ConsoleWindow.d" -o"src/windows/ConsoleWindow.o" "../src/windows/ConsoleWindow.cpp"
../src/windows/ConsoleWindow.cpp: In static member function ‘static void ConsoleWindow::output(const char*, ...)’:
../src/windows/ConsoleWindow.cpp:48: error: ‘printf’ was not declared in this scope
make[1]: *** [src/windows/ConsoleWindow.o] Error 1
make[1]: Leaving directory `/home/jpenguin/bzworkbench/Debug'
make: *** [all] Error 2

Re: BZWorkBench Status

Posted: Sun Jan 10, 2010 9:02 pm
by blast
A quick google suggests that you might need to add this to any of the files that fail to build with that error:

Code: Select all

#include <cstdio>

Re: BZWorkBench Status

Posted: Sun Jan 10, 2010 10:07 pm
by Bullet Catcher
This bug is fixed in Subversion revision 20729.

Re: BZWorkBench Status

Posted: Sun Mar 21, 2010 9:47 pm
by blast
Win32 build of BZWorkBench from March 21st, 2010.

http://my.bzflag.org/bb/viewtopic.php?f=24&t=16126

Re: BZWorkBench Status

Posted: Wed Nov 24, 2010 6:43 pm
by alezakos

Code: Select all

make  all-recursive
make[1]: Entering directory `/home/kongr45gpen/bzworkbench'
Making all in src
make[2]: Entering directory `/home/kongr45gpen/bzworkbench/src'
g++ -DHAVE_CONFIG_H -I. -I..  -I../include   -g -O2 -MT AdvancedOptionsDialog.o -MD -MP -MF .deps/AdvancedOptionsDialog.Tpo -c -o AdvancedOptionsDialog.o `test -f 'dialogs/AdvancedOptionsDialog.cpp' || echo './'`dialogs/AdvancedOptionsDialog.cpp
dialogs/AdvancedOptionsDialog.cpp: In member function ‘void AdvancedOptionsDialog::AdvancedOptionsPage::removeMaterialCallback_real(Fl_Widget*)’:
dialogs/AdvancedOptionsDialog.cpp:92: error: ‘class Fl_Scroll’ has no member named ‘scroll_to’
dialogs/AdvancedOptionsDialog.cpp: In member function ‘void AdvancedOptionsDialog::AdvancedOptionsPage::addMaterial(MaterialWidget*)’:
dialogs/AdvancedOptionsDialog.cpp:105: error: ‘class Fl_Scroll’ has no member named ‘scroll_to’
dialogs/AdvancedOptionsDialog.cpp:107: error: ‘class Fl_Scroll’ has no member named ‘scroll_to’
dialogs/AdvancedOptionsDialog.cpp: In constructor ‘AdvancedOptionsDialog::AdvancedOptionsPage::AdvancedOptionsPage(int, int, std::string, std::vector<material*, std::allocator<material*> >, physics*, bool)’:
dialogs/AdvancedOptionsDialog.cpp:186: error: ‘class Fl_Scroll’ has no member named ‘scroll_to’
make[2]: *** [AdvancedOptionsDialog.o] Error 1
make[2]: Leaving directory `/home/kongr45gpen/bzworkbench/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/kongr45gpen/bzworkbench'
make: *** [all] Error 2

Re: BZWorkBench Status

Posted: Thu Nov 25, 2010 2:44 am
by blast
Which version of FLTK did you install? I think it needs FLTK1.3 now (which isn't released, so you'll have to compile/install FLTK1.3 yourself, uninstalling FLTK1.1 first)
http://www.fltk.org/

Re: BZWorkBench Status

Posted: Fri Nov 26, 2010 8:27 pm
by alezakos

Code: Select all

g++ -DHAVE_CONFIG_H -I. -I..  -I../include   -g -O2 -MT selectHandler.o -MD -MP -MF .deps/selectHandler.Tpo -c -o selectHandler.o `test -f 'windows/eventHandlers/selectHandler.cpp' || echo './'`windows/eventHandlers/selectHandler.cpp
windows/eventHandlers/selectHandler.cpp: In member function ‘virtual bool selectHandler::handle(const osgGA::GUIEventAdapter&, osgGA::GUIActionAdapter&)’:
windows/eventHandlers/selectHandler.cpp:76: error: jump to case label
windows/eventHandlers/selectHandler.cpp:40: error:   crosses initialization of ‘Renderable* lsobj’
windows/eventHandlers/selectHandler.cpp:83: error: jump to case label
windows/eventHandlers/selectHandler.cpp:40: error:   crosses initialization of ‘Renderable* lsobj’
windows/eventHandlers/selectHandler.cpp:110: error: jump to case label
windows/eventHandlers/selectHandler.cpp:40: error:   crosses initialization of ‘Renderable* lsobj’
make[2]: *** [selectHandler.o] Error 1
make[2]: Leaving directory `/home/kongr45gpen/bzworkbench/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/kongr45gpen/bzworkbench'
make: *** [all] Error 2

Re: BZWorkBench Status

Posted: Sat Nov 27, 2010 9:36 am
by macsforme
Try this patch (untested):

Code: Select all

Index: src/windows/eventHandlers/selectHandler.cpp
===================================================================
--- src/windows/eventHandlers/selectHandler.cpp	(revision 21341)
+++ src/windows/eventHandlers/selectHandler.cpp	(working copy)
@@ -34,7 +34,7 @@
     {
 
     	// catch drag events
-    	case osgGA::GUIEventAdapter::DRAG :
+    	case osgGA::GUIEventAdapter::DRAG : {
 
     		viewer = dynamic_cast<View*>(&aa);
 			Renderable* lsobj = (Renderable*)lastSelected;
@@ -72,12 +72,14 @@
 
     		}
     		return false;
+	}
 
-		case osgGA::GUIEventAdapter::RELEASE:
-			translateSnap = osg::Vec3( 0, 0, 0 );
-			scaleSnap = osg::Vec3( 0, 0, 0 );
-			rotateSnap = 0;
-			return true;
+	case osgGA::GUIEventAdapter::RELEASE: {
+		translateSnap = osg::Vec3( 0, 0, 0 );
+		scaleSnap = osg::Vec3( 0, 0, 0 );
+		rotateSnap = 0;
+		return true;
+	}
 
     	// catch single-click events (see if we picked the selector or an object)
        	case osgGA::GUIEventAdapter::PUSH : {
@@ -107,9 +109,10 @@
        		return false;
        	}
 
-        default:
+        default: {
         	// assume we handled everything
             return true;
+	}
     }
 }
 

Re: BZWorkBench Status

Posted: Sat Nov 27, 2010 1:32 pm
by alezakos

Code: Select all


//usr/local/lib/libfltk_images.a(Fl_PNG_Image.o): In function `Fl_PNG_Image::Fl_PNG_Image(char const*)':
Fl_PNG_Image.cxx:(.text+0x84): undefined reference to `png_create_read_struct'
Fl_PNG_Image.cxx:(.text+0x8f): undefined reference to `png_create_info_struct'
Fl_PNG_Image.cxx:(.text+0xc4): undefined reference to `png_init_io'
Fl_PNG_Image.cxx:(.text+0xd1): undefined reference to `png_read_info'
Fl_PNG_Image.cxx:(.text+0xde): undefined reference to `png_get_color_type'
Fl_PNG_Image.cxx:(.text+0xf0): undefined reference to `png_set_expand'
Fl_PNG_Image.cxx:(.text+0x100): undefined reference to `png_get_color_type'
Fl_PNG_Image.cxx:(.text+0x12d): undefined reference to `png_get_tRNS'
Fl_PNG_Image.cxx:(.text+0x13b): undefined reference to `png_get_color_type'
Fl_PNG_Image.cxx:(.text+0x156): undefined reference to `png_get_image_width'
Fl_PNG_Image.cxx:(.text+0x169): undefined reference to `png_get_image_height'
Fl_PNG_Image.cxx:(.text+0x17f): undefined reference to `png_get_bit_depth'
Fl_PNG_Image.cxx:(.text+0x191): undefined reference to `png_set_packing'
Fl_PNG_Image.cxx:(.text+0x19a): undefined reference to `png_set_expand'
Fl_PNG_Image.cxx:(.text+0x1a9): undefined reference to `png_get_bit_depth'
Fl_PNG_Image.cxx:(.text+0x1bb): undefined reference to `png_set_strip_16'
Fl_PNG_Image.cxx:(.text+0x1cc): undefined reference to `png_get_valid'
Fl_PNG_Image.cxx:(.text+0x1de): undefined reference to `png_set_tRNS_to_alpha'
Fl_PNG_Image.cxx:(.text+0x245): undefined reference to `png_set_interlace_handling'
Fl_PNG_Image.cxx:(.text+0x25b): undefined reference to `png_read_rows'
Fl_PNG_Image.cxx:(.text+0x27f): undefined reference to `png_read_end'
Fl_PNG_Image.cxx:(.text+0x291): undefined reference to `png_destroy_read_struct'
//usr/local/lib/libfltk_images.a(Fl_PNG_Image.o): In function `Fl_PNG_Image::Fl_PNG_Image(char const*)':
Fl_PNG_Image.cxx:(.text+0x32e): undefined reference to `png_create_read_struct'
Fl_PNG_Image.cxx:(.text+0x339): undefined reference to `png_create_info_struct'
Fl_PNG_Image.cxx:(.text+0x36e): undefined reference to `png_init_io'
Fl_PNG_Image.cxx:(.text+0x37b): undefined reference to `png_read_info'
Fl_PNG_Image.cxx:(.text+0x388): undefined reference to `png_get_color_type'
Fl_PNG_Image.cxx:(.text+0x39a): undefined reference to `png_set_expand'
Fl_PNG_Image.cxx:(.text+0x3aa): undefined reference to `png_get_color_type'
Fl_PNG_Image.cxx:(.text+0x3d7): undefined reference to `png_get_tRNS'
Fl_PNG_Image.cxx:(.text+0x3e5): undefined reference to `png_get_color_type'
Fl_PNG_Image.cxx:(.text+0x400): undefined reference to `png_get_image_width'
Fl_PNG_Image.cxx:(.text+0x413): undefined reference to `png_get_image_height'
Fl_PNG_Image.cxx:(.text+0x429): undefined reference to `png_get_bit_depth'
Fl_PNG_Image.cxx:(.text+0x43b): undefined reference to `png_set_packing'
Fl_PNG_Image.cxx:(.text+0x444): undefined reference to `png_set_expand'
Fl_PNG_Image.cxx:(.text+0x453): undefined reference to `png_get_bit_depth'
Fl_PNG_Image.cxx:(.text+0x465): undefined reference to `png_set_strip_16'
Fl_PNG_Image.cxx:(.text+0x476): undefined reference to `png_get_valid'
Fl_PNG_Image.cxx:(.text+0x488): undefined reference to `png_set_tRNS_to_alpha'
Fl_PNG_Image.cxx:(.text+0x4ef): undefined reference to `png_set_interlace_handling'
Fl_PNG_Image.cxx:(.text+0x505): undefined reference to `png_read_rows'
Fl_PNG_Image.cxx:(.text+0x529): undefined reference to `png_read_end'
Fl_PNG_Image.cxx:(.text+0x53b): undefined reference to `png_destroy_read_struct'
//usr/local/lib/libfltk.a(fl_font.o): In function `fl_destroy_xft_draw(unsigned long)':
fl_font.cxx:(.text+0x14f): undefined reference to `XftDrawChange'
//usr/local/lib/libfltk.a(fl_font.o): In function `Fl_Graphics_Driver::draw(char const*, int, int, int)':
fl_font.cxx:(.text+0x1a8): undefined reference to `XftDrawCreate'
fl_font.cxx:(.text+0x1bd): undefined reference to `XftDrawChange'
fl_font.cxx:(.text+0x1ed): undefined reference to `XftDrawSetClip'
fl_font.cxx:(.text+0x266): undefined reference to `XftDrawStringUtf8'
//usr/local/lib/libfltk.a(fl_font.o): In function `fl_text_extents(char const*, int, int&, int&, int&, int&)':
fl_font.cxx:(.text+0x5da): undefined reference to `XftTextExtentsUtf8'
//usr/local/lib/libfltk.a(fl_font.o): In function `fl_width(char const*, int)':
fl_font.cxx:(.text+0x693): undefined reference to `XftTextExtentsUtf8'
//usr/local/lib/libfltk.a(fl_font.o): In function `fl_width(unsigned int*, int)':
fl_font.cxx:(.text+0x714): undefined reference to `XftTextExtents32'
//usr/local/lib/libfltk.a(fl_font.o): In function `Fl_Graphics_Driver::rtl_draw(char const*, int, int, int)':
fl_font.cxx:(.text+0x74b): undefined reference to `FcUtf8Len'
fl_font.cxx:(.text+0x790): undefined reference to `FcUtf8ToUcs4'
fl_font.cxx:(.text+0x7e8): undefined reference to `XftDrawCreate'
fl_font.cxx:(.text+0x7fd): undefined reference to `XftDrawChange'
fl_font.cxx:(.text+0x842): undefined reference to `XftDrawSetClip'
fl_font.cxx:(.text+0x8d7): undefined reference to `XftDrawString32'
//usr/local/lib/libfltk.a(fl_font.o): In function `T.198':
fl_font.cxx:(.text+0x95b): undefined reference to `FcPatternCreate'
fl_font.cxx:(.text+0x9ec): undefined reference to `FcPatternAddString'
fl_font.cxx:(.text+0xa2b): undefined reference to `FcPatternAddString'
fl_font.cxx:(.text+0xa3a): undefined reference to `FcPatternAddInteger'
fl_font.cxx:(.text+0xa4b): undefined reference to `FcPatternAddInteger'
fl_font.cxx:(.text+0xa61): undefined reference to `FcPatternAddDouble'
fl_font.cxx:(.text+0xa75): undefined reference to `FcPatternAddString'
fl_font.cxx:(.text+0xaf4): undefined reference to `FcMatrixRotate'
fl_font.cxx:(.text+0xb03): undefined reference to `FcPatternAddMatrix'
fl_font.cxx:(.text+0xb1c): undefined reference to `XftFontMatch'
fl_font.cxx:(.text+0xb56): undefined reference to `XftFontOpen'
fl_font.cxx:(.text+0xb62): undefined reference to `FcPatternDestroy'
fl_font.cxx:(.text+0xb94): undefined reference to `XftFontOpenPattern'
fl_font.cxx:(.text+0xb9f): undefined reference to `FcPatternDestroy'
fl_font.cxx:(.text+0xbd8): undefined reference to `XftFontOpenXlfd'
//usr/local/lib/libfltk.a(screen_xywh.o): In function `screen_init()':
screen_xywh.cxx:(.text+0x1e): undefined reference to `XineramaIsActive'
screen_xywh.cxx:(.text+0x37): undefined reference to `XineramaQueryScreens'
collect2: ld returned 1 exit status
make[2]: *** [bzworkbench] Error 1
make[2]: Leaving directory `/home/kongr45gpen/bzworkbench/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/kongr45gpen/bzworkbench'
make: *** [all] Error 2

Re: BZWorkBench Status

Posted: Sat Nov 27, 2010 3:12 pm
by macsforme
Is libpng installed?

Re: BZWorkBench Status

Posted: Sat Nov 27, 2010 3:18 pm
by blast
(the development package too, I would imagine)

Re: BZWorkBench Status

Posted: Sat Nov 27, 2010 3:36 pm
by alezakos
Well, yes, it is. Do I need a specific version?

Re: BZWorkBench Status

Posted: Sat Nov 27, 2010 4:32 pm
by Bullet Catcher
Adding -lpng to the end of the LIBS = line in src/Makefile should make it actually use your installed png library.

Re: BZWorkBench Status

Posted: Mon Dec 06, 2010 10:25 pm
by Runic
blast wrote:Which version of FLTK did you install? I think it needs FLTK1.3 now (which isn't released, so you'll have to compile/install FLTK1.3 yourself, uninstalling FLTK1.1 first)
http://www.fltk.org/

Blast is correct fltk 1.3 is what I was using last time I worked on this program.

However you could manually remove the Fl_Scroll "scroll_to" commands (it only used a few places)
if you want to use an older version such as fltk 1.1.9 or 1.1.7

Re: BZWorkBench Status

Posted: Mon Dec 06, 2010 10:27 pm
by Runic
Bullet Catcher wrote:Adding -lpng to the end of the LIBS = line in src/Makefile should make it actually use your installed png library.

This should work but you could also just build fltk with it's built in png support

Re: BZWorkBench Status

Posted: Sun Dec 12, 2010 5:00 am
by Bullet Catcher
In Subversion revision 21343 I added a test for the presence of the scroll_to() method, and added #ifdef blocks to call it only when it exists. This allows the use of FLTK 1.1.9. I don't have FLTK 1.3 to test this change with, but I think I got it right.