Building on Ubuntu 16.04 LTS fails
pasko-zh opened this issue · comments
I cannot compile loudgain on Ubuntu 16.04, although I have installed all the dependencies. make
throws the following errors:
[ 20%] Building CXX object CMakeFiles/loudgain.dir/src/tag.cc.o /home/pesce/loudgain-master/src/tag.cc: In function ‘void tag_remove_flac(TagLib::Ogg::XiphComment*)’: /home/pesce/loudgain-master/src/tag.cc:243:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:244:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:245:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:246:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:247:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:248:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:249:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_REFERENCE_LOUDNESS]); ^ /home/pesce/loudgain-master/src/tag.cc: In function ‘void tag_remove_ogg(TagLib::Ogg::XiphComment*)’: /home/pesce/loudgain-master/src/tag.cc:306:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:307:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:308:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:309:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:310:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:311:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:312:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_REFERENCE_LOUDNESS]); ^ /home/pesce/loudgain-master/src/tag.cc: In function ‘void tag_remove_ogg_opus(TagLib::Ogg::XiphComment*)’: /home/pesce/loudgain-master/src/tag.cc:454:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:455:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:456:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:457:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:458:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:459:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:460:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_REFERENCE_LOUDNESS]); ^ /home/pesce/loudgain-master/src/tag.cc:461:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields("R128_TRACK_GAIN"); ^ /home/pesce/loudgain-master/src/tag.cc:462:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields("R128_ALBUM_GAIN"); ^ /home/pesce/loudgain-master/src/tag.cc: In function ‘void tag_remove_mp4(TagLib::MP4::Tag*)’: /home/pesce/loudgain-master/src/tag.cc:529:14: error: ‘class TagLib::MP4::Tag’ has no member named ‘removeItem’ tag -> removeItem(item->first); ^ /home/pesce/loudgain-master/src/tag.cc: In function ‘bool tag_write_mp4(scan_result*, bool, char, char*, bool)’: /home/pesce/loudgain-master/src/tag.cc:549:10: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_TRACK_GAIN]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:552:10: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_TRACK_PEAK]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:557:12: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_ALBUM_GAIN]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:560:12: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_ALBUM_PEAK]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:566:12: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_REFERENCE_LOUDNESS]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:569:12: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_TRACK_RANGE]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:573:14: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_ALBUM_RANGE]), TagLib::StringList(value)); ^ CMakeFiles/loudgain.dir/build.make:62: recipe for target 'CMakeFiles/loudgain.dir/src/tag.cc.o' failed make[2]: *** [CMakeFiles/loudgain.dir/src/tag.cc.o] Error 1 CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/loudgain.dir/all' failed make[1]: *** [CMakeFiles/loudgain.dir/all] Error 2 Makefile:127: recipe for target 'all' failed make: *** [all] Error 2
I switched to my server, where I have docker installed... so inside a debian container it builds and works as it should 😄
The static version works on Ubuntu 16 as well -- but I wanted to compile it, in order to be faster.
Anyway, I am glad that you wrote loudgain
. I compared a couple of tracks that I already had replay-gained with loudgain's results: much better! Good work 👍
Thanks for your kind words! Creative idea, using Docker!
As far as I can remember, the libraries shipped with 14.04 and 16.04 were too outdated, that was the main reason I came up with the "static" version (because I also still use a 14.04 and 16.04 machine). I works fine on 18.04, Linux Mint 19 and Arch, for instance.