Opened 9 years ago

Last modified 7 years ago

#49248 closed defect

mvktoolnix @7.9.0 +wxwidgets app.executable mmg does not exist — at Initial Version

Reported by: letaage Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.3.4
Keywords: Cc:
Port: mkvtoolnix

Description

I am having trouble installing mkvtoolnix @7.9.0 under OS X 10.8.

I am using the following command to install mkvtoolnix:

$ sudo port install mkvtoolnix +wvwidgets

1- libebml required "port install -s" to build using the correct cxx_stdlib for mkvtoolnix port despite macports.conf being set to always compile from source and to use libc++ 2- mkvtoolnix does not build properly even with libebml compiled using correct version of libc++.

Initially the installation was failing with a "symbol(s) not found for architecture x86_64" error relating to libebml.

I have followed the recommendations in https://trac.macports.org/wiki/Migration and in https://trac.macports.org/wiki/LibcxxOnOlderSystems

I removed all my ports with:

$ sudo port clean --all all

I set my macports.conf file with the following options:

build_arch x86_64 universal_archs x86_64 i386 cxx_stdlib libc++ buildfromsource always delete_la_files yes

I did a selfupdate then reinstalled all my ports using the restore_ports.tcl script.

$ sudo ./restore_ports.tcl myports.txt

Even after doing the above migration and libc++ steps, mkvtoolix still failed with the same error relating to libebml:

<snip> :info:build /usr/bin/clang++ -L/opt/local/lib -L/opt/local/lib -Wl,-headerpad_max_install_names -stdlib=libc++ -arch x86_64 -L/opt/local/lib -Llib/avilib-0.6.10 -Llib/librmff -Lsrc/common -Llib/pugixml/src -o src/mkvmerge src/merge/mkvmerge.o -Lsrc/merge -lmtxmerge -Lsrc/input -lmtxinput -Lsrc/output -lmtxoutput -Lsrc/merge -lmtxmerge -lmtxcommon -lmagic -lz -lmatroska -lebml -lz -lpugixml -liconv -lintl -L/opt/local/lib -lcurl -lssl -lcrypto -lssl -lcrypto -lz -lboost_regex-mt -lboost_filesystem-mt -lboost_system-mt -lavi -lrmff -Lsrc/mpegparser -lmpegparser -lFLAC -logg -lm -lvorbis -logg :info:build Undefined symbols for architecture x86_64: :info:build "libebml::EbmlString::SetValue(std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&)", referenced from: :info:build render_ebml_head(mm_io_c*) in libmtxmerge.a(output_control.o) :info:build create_next_output_file() in libmtxmerge.a(output_control.o) :info:build parse_simple_chapters(mm_text_io_c*, long long, long long, long long, std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&, std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&) in libmtxcommon.a(chapters.o) :info:build fix_mandatory_chapter_elements(libebml::EbmlElement*) in libmtxcommon.a(chapters.o) :info:build parse_cue_chapters(mm_text_io_c*, long long, long long, long long, std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&, std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&, std::1::unique_ptr<libmatroska::KaxTags, std::__1::default_delete<libmatroska::KaxTags> >*) in libmtxcommon.a(cue_parser.o) :info:build add_elements_for_cue_entry(cue_parser_args_t&, std::1::unique_ptr<libmatroska::KaxTags, std::__1::default_delete<libmatroska::KaxTags> >*) in libmtxcommon.a(cue_parser.o) :info:build generic_packetizer_c::set_codec_id(std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&) in libmtxmerge.a(generic_packetizer.o) :info:build ... :info:build "libebml::EbmlUnicodeString::SetValueUTF8(std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&)", referenced from: :info:build create_next_output_file() in libmtxmerge.a(output_control.o) :info:build parse_simple_chapters(mm_text_io_c*, long long, long long, long long, std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&, std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&) in libmtxcommon.a(chapters.o) :info:build add_elements_for_cue_entry(cue_parser_args_t&, std::1::unique_ptr<libmatroska::KaxTags, std::__1::default_delete<libmatroska::KaxTags> >*) in libmtxcommon.a(cue_parser.o) :info:build generic_packetizer_c::set_track_name(std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&) in libmtxmerge.a(generic_packetizer.o) :info:build generic_packetizer_c::set_headers() in libmtxmerge.a(generic_packetizer.o) :info:build mtx::xml::ebml_converter_c::parse_ustring(mtx::xml::ebml_converter_c::parser_context_t&) in libmtxcommon.a(ebml_converter.o) :info:build mtx::tags::set_simple_name(libmatroska::KaxTagSimple&, std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&) in libmtxcommon.a(tags.o) :info:build ... :info:build "libebml::UTFstring::SetUTF8(std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&)", referenced from: :info:build cue_str_internal_to_utf(cue_parser_args_t&, std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&) in libmtxcommon.a(cue_parser.o) :info:build fix_mandatory_segmentinfo_elements(libebml::EbmlElement*) in libmtxcommon.a(segmentinfo.o) :info:build mtx::tags::find_simple(std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const&, libebml::EbmlMaster&) in libmtxcommon.a(tags.o) :info:build "libebml::EbmlString::operator std::1::basic_string<char, std::1::char_traits<char>, std::1::allocator<char> > const &() const", referenced from: :info:build mtx::xml::ebml_chapters_converter_c::fix_display(libmatroska::KaxChapterDisplay&) const in libmtxcommon.a(ebml_chapters_converter.o) :info:build ld: symbol(s) not found for architecture x86_64 :info:build clang: error: linker command failed with exit code 1 (use -v to see invocation) :info:build Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_mkvtoolnix/mkvtoolnix/work/mkvtoolnix-7.9.0" && ./drake default -j2 V=1 :info:build Exit code: 1 :error:build org.macports.build for port mkvtoolnix returned: command execution failed :debug:build Error code: CHILDSTATUS 7901 1 :debug:build Backtrace: command execution failed

while executing

"system -nice 0 $fullcmdstring"

("eval" body line 1) invoked from within

"eval system $notty $nice \$fullcmdstring"

invoked from within

"command_exec build"

(procedure "portbuild::build_main" line 8) invoked from within

"portbuild::build_main org.macports.build"

("eval" body line 1) invoked from within

"eval $procedure $targetname" :info:build Warning: targets not executed for mkvtoolnix: org.macports.activate org.macports.build org.macports.destroot org.macports.install :notice:build Please see the log file for port mkvtoolnix for details:

/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_mkvtoolnix/mkvtoolnix/main.log

<end>

I uninstalled and cleaned libeblm and associated packages:

$ sudo port uninstall libmatroska libebml $ sudo port clean --all libmatroska libebml

I then sucessfully reinstalled libebml etc with the "from source" flag on the command line:

$ sudo port -s install libmatroska libebml

I attempted to install mkvtoolnix again:

$ sudo port install mkvtoolnix +wvwidgets

This time it failed with a different error message:

<snip> /usr/bin/install -c -m 644 po/zh_CN.mo /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_mkvtoolnix/mkvtoolnix/work/destroot/opt/local/share/locale/zh_CN/LC_MESSAGES/mkvtoolnix.mo /usr/bin/install -c -m 644 po/zh_TW.mo /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_mkvtoolnix/mkvtoolnix/work/destroot/opt/local/share/locale/zh_TW/LC_MESSAGES/mkvtoolnix.mo Error: org.macports.destroot for port mkvtoolnix returned: app.executable mmg does not exist Warning: targets not executed for mkvtoolnix: org.macports.activate org.macports.destroot org.macports.install Please see the log file for port mkvtoolnix for details:

/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_mkvtoolnix/mkvtoolnix/main.log

To report a bug, follow the instructions in the guide:

http://guide.macports.org/#project.tickets

Error: Processing of port mkvtoolnix failed bash-3.2$ <end>

This indicates that the mmg application may not have built properly. The log file from this last installation attempt is attached.

It appears that there are two issues:

I am using OS X 10.8 with latest Xcode for 10.8, all OS X updates and macports 2.3.4.

Change History (1)

Changed 9 years ago by letaage

Attachment: main.zip added

log file from sudo port install mkvtoolnix +wxwidgets

Note: See TracTickets for help on using tickets.