Complie error on lunar linux, boostlib 1.45.0


#1

CPU: Xeon E5504
kernel: 2.6.35.7-x86-64

Dependencies:
OpenGL: NVIDIA
Glew: 1.5.7
SDL: 1.2.14
SDL_ttf: 2.0.10
SDL_mixer: 1.2.11
SDL_image: 1.2.10
boost: 1.45.0
libpng: 1.2.44

error log is:
g++ -g -O2 -fno-inline-functions -L. -L/sw/lib -L/usr/X11R6/lib -L. -lX11 -D_GNU_SOURCE=1 -D_REENTRANT -Wnon-virtual-dtor -Wreturn-type -L/usr/lib sdl-config --libs -lSDLmain -lSDL -lGL -lGLU -lGLEW -lSDL_image -lSDL_ttf -lSDL_mixer -lpng -lboost_regex-mt -lboost_system-mt -fthreadsafe-statics IMG_savepng.o background.o blur.o border_widget.o button.o character_editor_dialog.o checkbox.o current_generator.o editor_dialogs.o editor_formula_functions.o editor_layers_dialog.o editor_stats_dialog.o editor_variable_info.o collision_utils.o color_utils.o controls.o controls_dialog.o custom_object.o custom_object_callable.o custom_object_functions.o custom_object_type.o debug_console.o dialog.o draw_number.o draw_scene.o draw_tile.o editor.o editor_level_properties_dialog.o entity.o filesystem.o font.o formula.o formula_callable_definition.o formula_constants.o formula_function.o formula_profiler.o formula_tokenizer.o formula_variable_storage.o frame.o framed_gui_element.o geometry.o graphical_font.o graphical_font_label.o grid_widget.o group_property_editor_dialog.o gui_formula_functions.o gui_section.o image_widget.o input.o inventory.o iphone_controls.o joystick.o key.o key_button.o label.o level.o level_logic.o level_object.o level_runner.o level_solid_map.o light.o load_level.o main.o message_dialog.o movement_script.o multi_tile_pattern.o multiplayer.o object_events.o options_dialog.o package.o particle_system.o pause_game_dialog.o playable_custom_object.o player_info.o powerup.o preferences.o preprocessor.o preview_tileset_widget.o property_editor_dialog.o random.o raster.o raster_distortion.o rectangle_rotator.o settings_dialog.o slider.o solid_map.o sound.o speech_dialog.o stats.o string_utils.o surface_cache.o surface_formula.o surface_palette.o surface_scaling.o surface.o texture.o text_entry_widget.o thread.o tile_map.o tileset_editor_dialog.o tooltip.o translate.o utils.o variant.o water.o water_particle_system.o weather_particle_system.o widget.o wml_formula_adapter.o wml_formula_callable.o wml_modify.o wml_node.o wml_parser.o wml_schema.o wml_utils.o wml_writer.o unit_test.o formula_test.o wml_parser_test.o loading_screen.o utility_object_compiler.o utility_object_editor.o -o game
/usr/X11R6/lib/libboost_regex-mt.so: undefined reference to icu_46::Locale::Locale()' /usr/X11R6/lib/libboost_regex-mt.so: undefined reference tou_isspace_46’
/usr/X11R6/lib/libboost_regex-mt.so: undefined reference to u_charType_46' /usr/X11R6/lib/libboost_regex-mt.so: undefined reference toicu_46::Locale::Locale(icu_46::Locale const&)’
/usr/X11R6/lib/libboost_regex-mt.so: undefined reference to u_tolower_46' /usr/X11R6/lib/libboost_regex-mt.so: undefined reference tou_charFromName_46’
/usr/X11R6/lib/libboost_regex-mt.so: undefined reference to u_digit_46' /usr/X11R6/lib/libboost_regex-mt.so: undefined reference toicu_46::Collator::createInstance(icu_46::Locale const&, UErrorCode&)’
/usr/X11R6/lib/libboost_regex-mt.so: undefined reference to icu_46::Locale::~Locale()' /usr/X11R6/lib/libboost_regex-mt.so: undefined reference tou_isblank_46’
collect2: ld returned 1 exit status
make: *** [game] Error 1

This could be the new boost changing things, I have my copy flagged as being built on 2010-12-30-09:06:11 so it is fairly recent.
thanks in advance.


#2

What that looks like to me, is building with Boost headers that don’t match your Boost libraries. I could certainly be wrong, but that’s what it looks like.


#3

I think another possibility is you’re missing the “icu” library files, or the linker can’t find them. Run “ldd /usr/X11R6/lib/libboost_regex-mt.so” and see if anything is not found. If so, you need to install whichever library provides that file, and this problem is caused by an omitted dependency in your distro’s boost package. If no library is missing, try to find out which library corresponds to the icu funtions, and see if its path is covered in the -L switches in Frogatto’s compile command.


#4

recomplied boost with python support and it started working. thanks agian.


#5

Hi,
sorry flyinglama, i see that you used sdl_image 1.2.10 to compile, but you not have the transparency issue
(you can see details about at this post: http://www.frogatto.com/forum/index.php?topic=190.0 ) ??
If you see the game correctly can be then that the issue is MAC related??!!
Let me know about …
see you later …


#6

It’s definitely a Mac-only issue. It’s because they switched to using CoreImage (part of Mac OS X) for loading the images, which supports ICC profiles.