r7554 can't be built

For submission of patches, language translations, discussing implementation of some feature, etc.

r7554 can't be built

Unread postby Shimapan » Sat Feb 09, 2013 9:15 pm

I noticed that you raised the requirement for the boost libraries (libboost) from 1.49 to 1.50 now, so I installed version 1.50 including development files from the main repositories (it's the very same version that's also used in Debian).

Configure went fine, but make produced an error.
This is the last line before the error: (yes, that's a single line)

Code: Select all
g++ -o aegisub-3.1   audio_player_alsa.o audio_player_pulse.o audio_player_openal.o audio_player_oss.o audio_provider_ffmpegsource.o video_provider_ffmpegsource.o ffmpegsource_common.o subtitles_provider_libass.o auto4_lua.o auto4_lua_assfile.o auto4_lua_dialog.o auto4_lua_progresssink.o auto4_lua_scriptreader.o spellchecker_hunspell.o MatroskaParser.o aegisublocale.o ass_attachment.o ass_dialogue.o ass_entry.o ass_export_filter.o ass_exporter.o ass_file.o ass_karaoke.o ass_override.o ass_parser.o ass_style.o ass_style_storage.o ass_time.o audio_box.o audio_controller.o audio_colorscheme.o audio_display.o audio_karaoke.o audio_marker.o audio_player.o audio_provider.o audio_provider_convert.o audio_provider_hd.o audio_provider_lock.o audio_provider_pcm.o audio_provider_ram.o audio_renderer.o audio_renderer_spectrum.o audio_renderer_waveform.o audio_timing_dialogue.o audio_timing_karaoke.o auto4_base.o avisynth_wrap.o base_grid.o charset_detect.o colorspace.o colour_button.o compat.o dialog_about.o dialog_attachments.o dialog_automation.o dialog_autosave.o dialog_colorpicker.o dialog_detached_video.o dialog_dummy_video.o dialog_export.o dialog_export_ebu3264.o dialog_fonts_collector.o dialog_jumpto.o dialog_kara_timing_copy.o dialog_log.o dialog_paste_over.o dialog_progress.o dialog_properties.o dialog_resample.o dialog_search_replace.o dialog_selected_choices.o dialog_selection.o dialog_shift_times.o dialog_spellchecker.o dialog_style_editor.o dialog_style_manager.o dialog_styling_assistant.o dialog_text_import.o dialog_timing_processor.o dialog_translation.o dialog_version_check.o dialog_video_details.o audio_provider_dummy.o export_fixstyle.o export_framerate.o fft.o font_file_lister.o font_file_lister_fontconfig.o frame_main.o gl_text.o gl_wrap.o help_button.o hotkey.o hotkey_data_view_model.o initial_line_state.o kana_table.o main.o menu.o mkv_wrap.o pen.o persist_location.o plugin_manager.o preferences.o preferences_base.o search_replace_engine.o scintilla_text_ctrl.o scintilla_text_selection_controller.o spellchecker.o spline.o spline_curve.o string_codec.o subs_controller.o subs_edit_box.o subs_edit_ctrl.o subs_grid.o subs_preview.o subtitle_format.o subtitle_format_ass.o subtitle_format_ebu3264.o subtitle_format_encore.o subtitle_format_microdvd.o subtitle_format_mkv.o subtitle_format_srt.o subtitle_format_transtation.o subtitle_format_ttxt.o subtitle_format_txt.o subtitles_provider.o text_file_reader.o text_file_writer.o thesaurus.o timeedit_ctrl.o threaded_frame_source.o toggle_bitmap.o toolbar.o tooltip_manager.o utils.o validators.o vector2d.o version.o video_box.o video_context.o video_display.o video_frame.o video_out_gl.o video_provider_cache.o video_provider_dummy.o video_provider_manager.o video_provider_yuv4mpeg.o video_slider.o visual_feature.o visual_tool.o visual_tool_clip.o visual_tool_cross.o visual_tool_drag.o visual_tool_rotatexy.o visual_tool_rotatez.o visual_tool_scale.o visual_tool_vector_clip.o command/app.o command/audio.o command/automation.o command/edit.o command/grid.o command/help.o command/keyframe.o command/recent.o command/subtitle.o command/time.o command/timecode.o command/tool.o command/video.o command/vis_tool.o command/icon.o command/command.o libresrc/bitmap.o libresrc/default_config.o libresrc/libresrc.o -L../libaegisub -laegisub -lm    -lGL   -L/usr/local/lib -pthread   -lwx_gtk2u_gl-2.9 -lwx_gtk2u_stc-2.9 -lwx_gtk2u_xrc-2.9 -lwx_gtk2u_webview-2.9 -lwx_gtk2u_html-2.9 -lwx_gtk2u_qa-2.9 -lwx_gtk2u_adv-2.9 -lwx_gtk2u_core-2.9 -lwx_baseu_xml-2.9 -lwx_baseu_net-2.9 -lwx_baseu-2.9  -lz -lfreetype   -lfontconfig   -lfftw3 -lm   ../universalchardet/libuniversalchardet.a -L/usr/lib  -lboost_filesystem -lboost_locale-mt -lboost_regex-mt -lboost_system -lboost_thread -licuuc -licudata   -licui18n -licuuc -licudata   -lasound -lrt -lpulse   -lopenal   -lffms2   -lass   -llua5.1   -lhunspell-1.3


Right after that, there's the error:

Code: Select all
../libaegisub/libaegisub.a(fs.o): In function `copy_file':
/usr/include/boost/filesystem/operations.hpp:388: undefined reference to `boost::filesystem::detail::copy_file(boost::filesystem::path const&, boost::filesystem::path const&, boost::filesystem::copy_option, boost::system::error_code*)'
collect2: Fehler: ld gab 1 als Ende-Status zurück
make[1]: *** [aegisub-3.1] Fehler 1


It seems something went wrong in your move from 1.49 to 1.50.
Here's what it refers to from operations.hpp:

Code: Select all
  inline
  void copy_file(const path& from, const path& to,   // See ticket #2925
                 BOOST_SCOPED_ENUM(copy_option) option, system::error_code& ec)
                                       {detail::copy_file(from, to, option, &ec);}


Line 388 is the last line, starting with {detail:: ...

I'm no programmer, so that error doesn't tell me much.
Linux x64 packages for wxWidgets 2.9 and Aegisub 2+3 r7477 - 2013-01-14
http://pantsu.biz/?page_id=5181

Building wxWidgets 2.9 and Aegisub 3.0.x on (K)ubuntu Quantal Quetzal 12.10
viewtopic.php?f=10&t=65482
User avatar
Shimapan
{\move}
{\move}
 
Posts: 38
Joined: Tue Oct 02, 2012 3:38 pm
Location: Germany

Re: r7554 can't be built

Unread postby Plorkyeran » Sun Feb 10, 2013 1:57 am

boost.fileystem's ABI changes depending on whether it's compiled as C++03 or C++11, and any packages are probably going to be compiled as C++03, while Aegisub is C++11. As such, Aegisub currently requires a custom built copy of boost compiled in C++11 mode (which isn't terribly difficult other than that boost's build system is weird and different). I'm not particularly happy with boost.filesystem, so I'm thinking of ripping it out and replacing it with something custom which would solve this problem.
User avatar
Plorkyeran
Developer
 
Posts: 63
Joined: Fri Oct 22, 2010 6:23 pm

Re: r7554 can't be built

Unread postby Shimapan » Sun Feb 10, 2013 3:04 pm

Plorkyeran wrote:boost.fileystem's ABI changes depending on whether it's compiled as C++03 or C++11, and any packages are probably going to be compiled as C++03, while Aegisub is C++11. As such, Aegisub currently requires a custom built copy of boost compiled in C++11 mode (which isn't terribly difficult other than that boost's build system is weird and different). I'm not particularly happy with boost.filesystem, so I'm thinking of ripping it out and replacing it with something custom which would solve this problem.


I see... What was the last build before r7554 where you still used boost 1.49? Version 1.49 didn't give any difficulties.
Also, until you have replaced boost, is it really neccessary that you use boost 1.50 instead of 1.49?
Linux x64 packages for wxWidgets 2.9 and Aegisub 2+3 r7477 - 2013-01-14
http://pantsu.biz/?page_id=5181

Building wxWidgets 2.9 and Aegisub 3.0.x on (K)ubuntu Quantal Quetzal 12.10
viewtopic.php?f=10&t=65482
User avatar
Shimapan
{\move}
{\move}
 
Posts: 38
Joined: Tue Oct 02, 2012 3:38 pm
Location: Germany

Re: r7554 can't be built

Unread postby Shimapan » Mon Feb 11, 2013 1:07 am

Took a look at the source packages at github, and the last that still uses libboost 1.49 and can be built without problems is r7477.
All later source packages (r7538 and up) require that specialized build of libboost 1.50 and cannot be built anymore.
Linux x64 packages for wxWidgets 2.9 and Aegisub 2+3 r7477 - 2013-01-14
http://pantsu.biz/?page_id=5181

Building wxWidgets 2.9 and Aegisub 3.0.x on (K)ubuntu Quantal Quetzal 12.10
viewtopic.php?f=10&t=65482
User avatar
Shimapan
{\move}
{\move}
 
Posts: 38
Joined: Tue Oct 02, 2012 3:38 pm
Location: Germany

Re: r7554 can't be built

Unread postby Shimapan » Wed Apr 03, 2013 2:42 pm

Plorkyeran wrote:boost.fileystem's ABI changes depending on whether it's compiled as C++03 or C++11, and any packages are probably going to be compiled as C++03, while Aegisub is C++11. As such, Aegisub currently requires a custom built copy of boost compiled in C++11 mode (which isn't terribly difficult other than that boost's build system is weird and different). I'm not particularly happy with boost.filesystem, so I'm thinking of ripping it out and replacing it with something custom which would solve this problem.


Nearly two months now... Just wanted to know, has there been any progress yet in replacing the maligned boost.filesystem?
Linux x64 packages for wxWidgets 2.9 and Aegisub 2+3 r7477 - 2013-01-14
http://pantsu.biz/?page_id=5181

Building wxWidgets 2.9 and Aegisub 3.0.x on (K)ubuntu Quantal Quetzal 12.10
viewtopic.php?f=10&t=65482
User avatar
Shimapan
{\move}
{\move}
 
Posts: 38
Joined: Tue Oct 02, 2012 3:38 pm
Location: Germany


Return to Development

Who is online

Users browsing this forum: No registered users and 1 guest

cron