EuFlo / sacd-ripper

SACD ripping software using a PS3
GNU General Public License v2.0
117 stars 20 forks source link

Fedora 33 compile of sacd_extract #6

Closed udovdh closed 3 years ago

udovdh commented 3 years ago

In sacd_extract directory: mkdir build cd build cmake ..

#  make
Scanning dependencies of target sacd_extract
[  2%] Building C object CMakeFiles/sacd_extract.dir/getopt.c.o
[  4%] Building C object CMakeFiles/sacd_extract.dir/getopt1.c.o
[  6%] Building C object CMakeFiles/sacd_extract.dir/main.c.o
/usr/src/sacd-ripper-0.3.9.3/tools/sacd_extract/main.c: In function ‘create_path_output’:
/usr/src/sacd-ripper-0.3.9.3/tools/sacd_extract/main.c:520:4: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  520 |    strncpy(path_output, base_output_dir, strlen(base_output_dir));
      |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/tools/sacd_extract/main.c:521:4: warning: ‘strncat’ output truncated before terminating nul copying 1 byte from a string of the same length [-Wstringop-truncation]
  521 |    strncat(path_output, PATH_TRAILING_SLASH,1);
      |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/tools/sacd_extract/main.c:526:5: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  526 |     strncat(path_output, album_path, strlen(album_path));
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/tools/sacd_extract/main.c:531:9: warning: ‘strncat’ output truncated before terminating nul copying 1 byte from a string of the same length [-Wstringop-truncation]
  531 |         strncat(path_output, PATH_TRAILING_SLASH, 1);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/tools/sacd_extract/main.c: In function ‘main’:
/usr/src/sacd-ripper-0.3.9.3/tools/sacd_extract/main.c:672:7: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  672 |       strncpy(output_dir, opts.output_dir, strlen(opts.output_dir));
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/tools/sacd_extract/main.c:673:7: warning: ‘strncat’ output truncated before terminating nul copying 1 byte from a string of the same length [-Wstringop-truncation]
  673 |       strncat(output_dir, PATH_TRAILING_SLASH, 1);
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/tools/sacd_extract/main.c:679:21: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  679 |                     strncat(output_dir, album_path, strlen(album_path));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[  8%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/charset.c.o
[ 10%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c.o
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c: In function ‘parse_format’:
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:249:21: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
  249 |                     strncpy(&ret[pos], year, strlen(year));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:256:21: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
  256 |                     strncpy(&ret[pos], title, strlen(title));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:234:21: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
  234 |                     strncpy(&ret[pos], album, strlen(album));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:227:21: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
  227 |                     strncpy(&ret[pos], artist, strlen(artist));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c: In function ‘make_filename’:
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:118:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  118 |         strncpy(string_buf+pos,dir,min(strlen(dir),sizeof(string_buf) -pos-5));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:37:
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:118:40: note: length computed here
  118 |         strncpy(string_buf+pos,dir,min(strlen(dir),sizeof(string_buf) -pos-5));
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/utils.h:32:25: note: in definition of macro ‘min’
   32 | #define min(a, b)    (((a) < (b)) ? (a) : (b))
      |                         ^
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:137:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  137 |         strncpy(string_buf + pos, filename_duplicate, min(strlen(filename_duplicate), sizeof(string_buf) - pos - 5));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:37:
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:137:59: note: length computed here
  137 |         strncpy(string_buf + pos, filename_duplicate, min(strlen(filename_duplicate), sizeof(string_buf) - pos - 5));
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/utils.h:32:25: note: in definition of macro ‘min’
   32 | #define min(a, b)    (((a) < (b)) ? (a) : (b))
      |                         ^
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:144:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  144 |         strncpy(string_buf + pos, extension, min(strlen(extension), sizeof(string_buf) - pos - 1));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:37:
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:144:50: note: length computed here
  144 |         strncpy(string_buf + pos, extension, min(strlen(extension), sizeof(string_buf) - pos - 1));
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/utils.h:32:25: note: in definition of macro ‘min’
   32 | #define min(a, b)    (((a) < (b)) ? (a) : (b))
      |                         ^
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c: In function ‘make_filename.constprop’:
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:137:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  137 |         strncpy(string_buf + pos, filename_duplicate, min(strlen(filename_duplicate), sizeof(string_buf) - pos - 5));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:37:
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:137:59: note: length computed here
  137 |         strncpy(string_buf + pos, filename_duplicate, min(strlen(filename_duplicate), sizeof(string_buf) - pos - 5));
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/utils.h:32:25: note: in definition of macro ‘min’
   32 | #define min(a, b)    (((a) < (b)) ? (a) : (b))
      |                         ^
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:144:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  144 |         strncpy(string_buf + pos, extension, min(strlen(extension), sizeof(string_buf) - pos - 1));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:37:
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/fileutils.c:144:50: note: length computed here
  144 |         strncpy(string_buf + pos, extension, min(strlen(extension), sizeof(string_buf) - pos - 1));
/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/utils.h:32:25: note: in definition of macro ‘min’
   32 | #define min(a, b)    (((a) < (b)) ? (a) : (b))
      |                         ^
[ 12%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/log.c.o
[ 14%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/logging.c.o
[ 16%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/pb_decode.c.o
[ 18%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/pb_encode.c.o
[ 20%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/socket.c.o
[ 22%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/timeout.c.o
[ 24%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/usocket.c.o
[ 26%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/utils.c.o
[ 28%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libcommon/wsocket.c.o
[ 30%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libdstdec/buffer_pool.c.o
[ 32%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libdstdec/ccp_calc.c.o
[ 34%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libdstdec/dst_ac.c.o
[ 36%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libdstdec/dst_data.c.o
[ 38%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libdstdec/dst_decoder.c.o
[ 40%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libdstdec/dst_fram.c.o
[ 42%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libdstdec/dst_init.c.o
[ 44%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libdstdec/unpack_dst.c.o
[ 46%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libdstdec/yarn.c.o
[ 48%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libid3/id3.c.o
[ 51%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libid3/id3_frame.c.o
[ 53%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libid3/id3_frame_content.c.o
[ 55%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libid3/id3_frame_text.c.o
[ 57%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libid3/id3_frame_url.c.o
[ 59%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libid3/id3_tag.c.o
[ 61%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libid3/unicode.c.o
[ 63%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/cuesheet.c.o
[ 65%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/dsdiff.c.o
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/dsdiff.c: In function ‘dsdiff_write_frame’:
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/dsdiff.c:686:69: warning: implicit declaration of function ‘ftello64’; did you mean ‘ftello’? [-Wimplicit-function-declaration]
  686 |             handle->frame_indexes[handle->frame_count - 1].offset = ftello64(ft->fd) + DST_FRAME_DATA_CHUNK_SIZE;
      |                                                                     ^~~~~~~~
      |                                                                     ftello
[ 67%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/dsf.c.o
[ 69%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/dst_decoder_ps3.c.o
[ 71%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/ioctl.c.o
[ 73%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/iso_writer.c.o
[ 75%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/sac_accessor.c.o
[ 77%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/sacd_input.c.o
[ 79%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/sacd_pb_stream.c.o
[ 81%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/sacd_reader.c.o
[ 83%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/sacd_ripper.pb.c.o
[ 85%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook.c.o
[ 87%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c.o
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c: In function ‘get_path_disc_album’:
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:238:9: warning: ‘strncpy’ output truncated before terminating nul copying 13 bytes from a string of the same length [-Wstringop-truncation]
  238 |         strncpy(disc_title, "unknown title", min(strlen("unknown title"), MAX_ALBUM_TITLE_PATH_LEN));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:249:9: warning: ‘strncpy’ output truncated before terminating nul copying 13 bytes from a string of the same length [-Wstringop-truncation]
  249 |         strncpy(disc_album_title, "unknown title", min(strlen("unknown title"), MAX_ALBUM_TITLE_PATH_LEN));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:296:13: warning: ‘strncat’ specified bound 3 equals source length [-Wstringop-overflow=]
  296 |             strncat(disc_album_title_final, " - ", 3);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:308:13: warning: ‘strncat’ specified bound 1 equals source length [-Wstringop-overflow=]
  308 |             strncat(disc_album_title_final, "/", 1);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:329:13: warning: ‘strncat’ specified bound 3 equals source length [-Wstringop-overflow=]
  329 |             strncat(disc_album_title_final, " - ", 3);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c: In function ‘get_album_dir’:
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:170:61: warning: ‘snprintf’ output may be truncated before the last format character [-Wformat-truncation=]
  170 |     snprintf(disc_album_year, sizeof(disc_album_year), "%04d", handle->master_toc->disc_date_year);
      |                                                             ^
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:170:5: note: ‘snprintf’ output between 5 and 6 bytes into a destination of size 5
  170 |     snprintf(disc_album_year, sizeof(disc_album_year), "%04d", handle->master_toc->disc_date_year);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c: In function ‘get_path_disc_album’:
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:328:13: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  328 |             strncpy(disc_album_title_final, disc_artist, strlen(disc_artist));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:330:13: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  330 |             strncat(disc_album_title_final, disc_title, strlen(disc_title));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:334:13: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  334 |             strncat(disc_album_title_final, disc_title, strlen(disc_title));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:295:13: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  295 |             strncpy(disc_album_title_final, disc_artist, strlen(disc_artist));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:297:13: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  297 |             strncat(disc_album_title_final, disc_album_title, strlen(disc_album_title));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:302:13: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  302 |             strncat(disc_album_title_final, disc_album_title, strlen(disc_album_title));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:312:13: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  312 |             strncat(disc_album_title_final, multiset_s, strlen(multiset_s));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c: In function ‘get_music_filename’:
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:405:61: warning: ‘snprintf’ output may be truncated before the last format character [-Wformat-truncation=]
  405 |     snprintf(disc_album_year, sizeof(disc_album_year), "%04d", handle->master_toc->disc_date_year);
      |                                                             ^
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_helpers.c:405:5: note: ‘snprintf’ output between 5 and 6 bytes into a destination of size 5
  405 |     snprintf(disc_album_year, sizeof(disc_album_year), "%04d", handle->master_toc->disc_date_year);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 89%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_id3.c.o
[ 91%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_output.c.o
[ 93%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_print.c.o
[ 95%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_read.c.o
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_read.c: In function ‘scarletbook_frame_init’:
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_read.c:650:13: error: ‘scarletbook_handle_t’ has no member named ‘packet_info_idx’; did you mean ‘frame_info_idx’?
  650 |     handle->packet_info_idx = 0;
      |             ^~~~~~~~~~~~~~~
      |             frame_info_idx
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_read.c: In function ‘scarletbook_process_frames’:
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_read.c:706:21: error: ‘scarletbook_handle_t’ has no member named ‘packet_info_idx’; did you mean ‘frame_info_idx’?
  706 |         if (handle->packet_info_idx == handle->audio_sector.header.packet_info_count)
      |                     ^~~~~~~~~~~~~~~
      |                     frame_info_idx
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_read.c:708:21: error: ‘scarletbook_handle_t’ has no member named ‘packet_info_idx’; did you mean ‘frame_info_idx’?
  708 |             handle->packet_info_idx = 0;
      |                     ^~~~~~~~~~~~~~~
      |                     frame_info_idx
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_read.c:756:24: error: ‘scarletbook_handle_t’ has no member named ‘packet_info_idx’; did you mean ‘frame_info_idx’?
  756 |         while (handle->packet_info_idx < handle->audio_sector.header.packet_info_count && sector_bad_reads == 0)
      |                        ^~~~~~~~~~~~~~~
      |                        frame_info_idx
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_read.c:758:80: error: ‘scarletbook_handle_t’ has no member named ‘packet_info_idx’; did you mean ‘frame_info_idx’?
  758 |             audio_packet_info_t* packet = &handle->audio_sector.packet[handle->packet_info_idx];
      |                                                                                ^~~~~~~~~~~~~~~
      |                                                                                frame_info_idx
/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_read.c:825:21: error: ‘scarletbook_handle_t’ has no member named ‘packet_info_idx’; did you mean ‘frame_info_idx’?
  825 |             handle->packet_info_idx++;
      |                     ^~~~~~~~~~~~~~~
      |                     frame_info_idx
make[2]: *** [CMakeFiles/sacd_extract.dir/build.make:680: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper-0.3.9.3/libs/libsacd/scarletbook_read.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:95: CMakeFiles/sacd_extract.dir/all] Error 2
make: *** [Makefile:103: all] Error 2
EuFlo commented 3 years ago

I think you use an old file scarletbook_read.c (older than 4 months). The var packet_info_idx is no longer used at line 650. Please make git pull. And then try to compile.

Another man encountered the same problem:

https://github.com/EuFlo/sacd-ripper/issues/2

udovdh commented 3 years ago

# git clone https://github.com/EuFlo/sacd-ripper.git
Cloning into 'sacd-ripper'...
remote: Enumerating objects: 30, done.
remote: Counting objects: 100% (30/30), done.
remote: Compressing objects: 100% (30/30), done.
remote: Total 5119 (delta 12), reused 0 (delta 0), pack-reused 5089
Receiving objects: 100% (5119/5119), 6.39 MiB | 5.59 MiB/s, done.
Resolving deltas: 100% (3863/3863), done.
# cd sacd-ripper/tools/sacd_extract/
# mkdir build
# cd build
# cmake ..
CMake Deprecation Warning at CMakeLists.txt:3 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- git commit hash: 0.3.9.3-99-gfe1a337f9fc609d4e0ae84b63196c3fc4cf55a72
-- git repo url: https://github.com/EuFlo/sacd-ripper.git
-- The C compiler identification is GNU 10.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/lib64/ccache/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- libmxl2 
-- Found LibXml2: /usr/lib64/libxml2.so (found version "2.9.10") 
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/src/sacd-ripper/tools/sacd_extract/build
# make 
Scanning dependencies of target sacd_extract
[  2%] Building C object CMakeFiles/sacd_extract.dir/getopt.c.o
[  4%] Building C object CMakeFiles/sacd_extract.dir/getopt1.c.o
[  6%] Building C object CMakeFiles/sacd_extract.dir/main.c.o
/usr/src/sacd-ripper/tools/sacd_extract/main.c: In function ‘create_path_output’:
/usr/src/sacd-ripper/tools/sacd_extract/main.c:615:7: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
  615 |       strncpy(path_output, base_output_dir, size_base_output_dir);
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/tools/sacd_extract/main.c:613:39: note: length computed here
  613 |       size_t size_base_output_dir =   strlen(base_output_dir);
      |                                       ^~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/tools/sacd_extract/main.c:617:11: warning: ‘strncat’ output truncated before terminating nul copying 1 byte from a string of the same length [-Wstringop-truncation]
  617 |           strncat(path_output, PATH_TRAILING_SLASH, 1);
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/tools/sacd_extract/main.c:622:5: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  622 |     strncat(path_output, album_path, strlen(album_path));
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/tools/sacd_extract/main.c:627:9: warning: ‘strncat’ output truncated before terminating nul copying 1 byte from a string of the same length [-Wstringop-truncation]
  627 |         strncat(path_output, PATH_TRAILING_SLASH, 1);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/tools/sacd_extract/main.c: In function ‘main’:
/usr/src/sacd-ripper/tools/sacd_extract/main.c:848:25: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  848 |                         strncpy(output_dir, opts.output_dir, size_output_dir);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/tools/sacd_extract/main.c:846:48: note: length computed here
  846 |                         size_t size_output_dir=strlen(opts.output_dir);
      |                                                ^~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/tools/sacd_extract/main.c:850:29: warning: ‘strncat’ output truncated before terminating nul copying 1 byte from a string of the same length [-Wstringop-truncation]
  850 |                             strncat(output_dir, PATH_TRAILING_SLASH, 1);
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/tools/sacd_extract/main.c:856:21: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  856 |                     strncat(output_dir, album_path, strlen(album_path));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[  8%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/charset.c.o
[ 10%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/fileutils.c.o
/usr/src/sacd-ripper/libs/libcommon/fileutils.c: In function ‘parse_format’:
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:263:21: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
  263 |                     strncpy(&ret[pos], year, strlen(year));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:270:21: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
  270 |                     strncpy(&ret[pos], title, strlen(title));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:248:21: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
  248 |                     strncpy(&ret[pos], album, strlen(album));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:241:21: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
  241 |                     strncpy(&ret[pos], artist, strlen(artist));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libcommon/fileutils.c: In function ‘make_filename’:
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:124:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  124 |         strncpy(string_buf+pos,dir,min(strlen(dir),sizeof(string_buf) -pos-5));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/sacd-ripper/libs/libcommon/fileutils.c:37:
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:124:40: note: length computed here
  124 |         strncpy(string_buf+pos,dir,min(strlen(dir),sizeof(string_buf) -pos-5));
/usr/src/sacd-ripper/libs/libcommon/utils.h:32:25: note: in definition of macro ‘min’
   32 | #define min(a, b)    (((a) < (b)) ? (a) : (b))
      |                         ^
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:151:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  151 |         strncpy(string_buf + pos, filename_duplicate, min(strlen(filename_duplicate), sizeof(string_buf) - pos - 5));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/sacd-ripper/libs/libcommon/fileutils.c:37:
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:151:59: note: length computed here
  151 |         strncpy(string_buf + pos, filename_duplicate, min(strlen(filename_duplicate), sizeof(string_buf) - pos - 5));
/usr/src/sacd-ripper/libs/libcommon/utils.h:32:25: note: in definition of macro ‘min’
   32 | #define min(a, b)    (((a) < (b)) ? (a) : (b))
      |                         ^
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:158:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  158 |         strncpy(string_buf + pos, extension, min(strlen(extension), sizeof(string_buf) - pos - 1));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/sacd-ripper/libs/libcommon/fileutils.c:37:
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:158:50: note: length computed here
  158 |         strncpy(string_buf + pos, extension, min(strlen(extension), sizeof(string_buf) - pos - 1));
/usr/src/sacd-ripper/libs/libcommon/utils.h:32:25: note: in definition of macro ‘min’
   32 | #define min(a, b)    (((a) < (b)) ? (a) : (b))
      |                         ^
/usr/src/sacd-ripper/libs/libcommon/fileutils.c: In function ‘make_filename.constprop’:
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:151:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  151 |         strncpy(string_buf + pos, filename_duplicate, min(strlen(filename_duplicate), sizeof(string_buf) - pos - 5));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/sacd-ripper/libs/libcommon/fileutils.c:37:
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:151:59: note: length computed here
  151 |         strncpy(string_buf + pos, filename_duplicate, min(strlen(filename_duplicate), sizeof(string_buf) - pos - 5));
/usr/src/sacd-ripper/libs/libcommon/utils.h:32:25: note: in definition of macro ‘min’
   32 | #define min(a, b)    (((a) < (b)) ? (a) : (b))
      |                         ^
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:158:9: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  158 |         strncpy(string_buf + pos, extension, min(strlen(extension), sizeof(string_buf) - pos - 1));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/sacd-ripper/libs/libcommon/fileutils.c:37:
/usr/src/sacd-ripper/libs/libcommon/fileutils.c:158:50: note: length computed here
  158 |         strncpy(string_buf + pos, extension, min(strlen(extension), sizeof(string_buf) - pos - 1));
/usr/src/sacd-ripper/libs/libcommon/utils.h:32:25: note: in definition of macro ‘min’
   32 | #define min(a, b)    (((a) < (b)) ? (a) : (b))
      |                         ^
[ 12%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/log.c.o
[ 14%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/logging.c.o
[ 16%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/pb_decode.c.o
[ 18%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/pb_encode.c.o
[ 20%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/socket.c.o
[ 22%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/timeout.c.o
[ 24%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/usocket.c.o
[ 26%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/utils.c.o
[ 28%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libcommon/wsocket.c.o
[ 30%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libdstdec/buffer_pool.c.o
[ 32%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libdstdec/ccp_calc.c.o
[ 34%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libdstdec/dst_ac.c.o
[ 36%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libdstdec/dst_data.c.o
[ 38%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libdstdec/dst_decoder.c.o
[ 40%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libdstdec/dst_fram.c.o
[ 42%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libdstdec/dst_init.c.o
[ 44%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libdstdec/unpack_dst.c.o
[ 46%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libdstdec/yarn.c.o
[ 48%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libid3/id3.c.o
[ 51%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libid3/id3_frame.c.o
[ 53%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libid3/id3_frame_content.c.o
[ 55%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libid3/id3_frame_text.c.o
[ 57%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libid3/id3_frame_url.c.o
[ 59%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libid3/id3_tag.c.o
[ 61%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libid3/unicode.c.o
[ 63%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o
[ 65%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o
[ 67%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o
/usr/src/sacd-ripper/libs/libsacd/dsf.c: In function ‘dsf_close’:
/usr/src/sacd-ripper/libs/libsacd/dsf.c:233:21: warning: ‘memcpy’ offset [24576, 28671] is out of the bounds [0, 24576] of object ‘buffer_prev’ with type ‘uint8_t[6][4096]’ {aka ‘unsigned char[6][4096]’} [-Warray-bounds]
  233 |                     memcpy(buffer_prev[i], handle->buffer[i], SACD_BLOCK_SIZE_PER_CHANNEL);
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/dsf.c:83:16: note: ‘buffer_prev’ declared here
   83 | static uint8_t buffer_prev[MAX_CHANNEL_COUNT][SACD_BLOCK_SIZE_PER_CHANNEL]; // used for nopad option; keep the previus data copied form buffer[]
      |                ^~~~~~~~~~~
[ 69%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dst_decoder_ps3.c.o
[ 71%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/ioctl.c.o
[ 73%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o
[ 75%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sac_accessor.c.o
[ 77%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o
[ 79%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_pb_stream.c.o
[ 81%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_reader.c.o
[ 83%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_ripper.pb.c.o
[ 85%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o
[ 87%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c: In function ‘get_path_disc_album’:
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:252:9: warning: ‘strncpy’ output truncated before terminating nul copying 18 bytes from a string of the same length [-Wstringop-truncation]
  252 |         strncpy(disc_title, "unknown disc title", min(strlen("unknown disc title"), MAX_ALBUM_TITLE_PATH_LEN));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:263:9: warning: ‘strncpy’ output truncated before terminating nul copying 19 bytes from a string of the same length [-Wstringop-truncation]
  263 |         strncpy(disc_album_title, "unknown album title", min(strlen("unknown album title"), MAX_ALBUM_TITLE_PATH_LEN));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:314:13: warning: ‘strncat’ specified bound 3 equals source length [-Wstringop-overflow=]
  314 |             strncat(disc_album_title_final, " - ", 3);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:326:13: warning: ‘strncat’ specified bound 1 equals source length [-Wstringop-overflow=]
  326 |             strncat(disc_album_title_final, "/", 1);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:347:13: warning: ‘strncat’ specified bound 3 equals source length [-Wstringop-overflow=]
  347 |             strncat(disc_album_title_final, " - ", 3);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c: In function ‘get_music_filename’:
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:436:9: warning: ‘strncpy’ output truncated before terminating nul copying 19 bytes from a string of the same length [-Wstringop-truncation]
  436 |         strncpy(track_title, "unknown track title", min(strlen("unknown track title"), MAX_TRACK_TITLE_LEN));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:459:10: warning: ‘strncpy’ output truncated before terminating nul copying 13 bytes from a string of the same length [-Wstringop-truncation]
  459 |          strncpy(disc_album_title, "unknown title", min(strlen("unknown title"), MAX_ALBUM_TITLE_LEN));
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c: In function ‘get_path_disc_album’:
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:346:13: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  346 |             strncpy(disc_album_title_final, disc_artist, strlen(disc_artist));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:348:13: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  348 |             strncat(disc_album_title_final, disc_title, strlen(disc_title));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:352:13: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  352 |             strncat(disc_album_title_final, disc_title, strlen(disc_title));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:313:13: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  313 |             strncpy(disc_album_title_final, disc_artist, strlen(disc_artist));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:315:13: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  315 |             strncat(disc_album_title_final, disc_album_title, strlen(disc_album_title));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:320:13: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  320 |             strncat(disc_album_title_final, disc_album_title, strlen(disc_album_title));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c:330:13: warning: ‘strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  330 |             strncat(disc_album_title_final, multiset_s, strlen(multiset_s));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 89%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o
[ 91%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o
[ 93%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o
[ 95%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o
[ 97%] Building C object CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o
[100%] Linking C executable sacd_extract
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x38): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x3c): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x40): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x44): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x48): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x4c): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/sacd_extract.dir/build.make:808: sacd_extract] Error 1
make[1]: *** [CMakeFiles/Makefile2:95: CMakeFiles/sacd_extract.dir/all] Error 2
make: *** [Makefile:103: all] Error 2
# 
EuFlo commented 3 years ago

Try to build in sacd-ripper/tools/sacd_extract folder:

cd sacd-ripper/tools/sacd_extract cmake -DCMAKE_BUILD_TYPE=Release make

udovdh commented 3 years ago

Thanks but... Does not matter for the linking phase.

EuFlo commented 3 years ago

It does. The paths for main for all headers are specified in CMakeLists.txt (e.g. file(GLOB main_headers .....) Try delete cache and rebuild.

EuFlo commented 3 years ago

Or try to 'touch' CMakeLists.txt to force re-run cmake. Quote: In order to work around the first issue, you can simply "touch" the CMakeLists.txt that does the glob, either by using the touch command or by writing the file with no changes. This will force CMake to re-run and pick up the new file.

https://stackoverflow.com/questions/1027247/is-it-better-to-specify-source-files-with-glob-or-each-file-individually-in-cmak

udovdh commented 3 years ago

# pwd
/usr/src/sacd-ripper/tools/sacd_extract/build
# touch ../CMakeLists.txt 
# cmake -DCMAKE_BUILD_TYPE=Release ..
CMake Deprecation Warning at CMakeLists.txt:3 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- git commit hash: 0.3.9.3-99-gfe1a337f9fc609d4e0ae84b63196c3fc4cf55a72
-- git repo url: https://github.com/EuFlo/sacd-ripper.git
-- libmxl2 
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/src/sacd-ripper/tools/sacd_extract/build
# make
[  2%] Linking C executable sacd_extract
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsdiff.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/dsf.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/iso_writer.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x38): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x3c): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x40): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x44): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x48): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/sacd_input.c.o:(.bss+0x4c): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_helpers.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_id3.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_output.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_print.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_read.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/scarletbook_xml.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/sacd_extract.dir/build.make:808: sacd_extract] Error 1
make[1]: *** [CMakeFiles/Makefile2:95: CMakeFiles/sacd_extract.dir/all] Error 2
make: *** [Makefile:103: all] Error 2
# 
udovdh commented 3 years ago

Also:
# rm -f CMakeCache.txt 
# touch ../CMakeLists.txt 
# cmake -DCMAKE_BUILD_TYPE=Release ..
CMake Deprecation Warning at CMakeLists.txt:3 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- git commit hash: 0.3.9.3-99-gfe1a337f9fc609d4e0ae84b63196c3fc4cf55a72
-- git repo url: https://github.com/EuFlo/sacd-ripper.git
-- The C compiler identification is GNU 10.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/lib64/ccache/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- libmxl2 
-- Found LibXml2: /usr/lib64/libxml2.so (found version "2.9.10") 
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/src/sacd-ripper/tools/sacd_extract/build
# make
Scanning dependencies of target sacd_extract
[  2%] Linking C executable sacd_extract
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x0): multiple definition of `audio_packet_data_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x10): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x4): multiple definition of `track_type_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x14): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x8): multiple definition of `category_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x18): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0xc): multiple definition of `genre_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x1c): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x10): multiple definition of `character_set_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x20): first defined here
/usr/bin/ld: CMakeFiles/sacd_extract.dir/usr/src/sacd-ripper/libs/libsacd/cuesheet.c.o:(.bss+0x14): multiple definition of `frame_format_t'; CMakeFiles/sacd_extract.dir/main.c.o:(.bss+0x24): first defined here
(cut)
udovdh commented 3 years ago

Try to build in sacd-ripper/tools/sacd_extract folder:

cd sacd-ripper/tools/sacd_extract

Does not significantly alter the output here.

udovdh commented 3 years ago

The patch at https://aur.archlinux.org/cgit/aur.git/plain/missing-typedefs.patch?h=sacd-extract makes compile work. But:


$ sacd_extract -m -s -i \[SACD-R\]\[UP\]\[CD\]Deep\ Purple\ -\ Made\ in\ Japan\ -\ 1972-RX.iso 

sacd_extract client 0.3.9.3-99-gfe1a337f9fc609d4e0ae84b63196c3fc4cf55a72

Enhanced by euflo ....starting!

Current (working) directory (for the app and 'sacd_extract.cfg' file): /home/udo/Download/bla/Deep Purple - Made in Japan - 1972
scarletbook_read_master_toc: Not a ScarletBook disc!
scarletbook_open: Can't read Master TOC !!

Program terminates!

$ /usr/src/sacd/sacd -i *iso -d

sacd
----
Command-line SACD decoder
version 19.7.16

STEREO AREA TRACK LIST:
-----------------------

No tracks.

MULTICHANNEL AREA TRACK LIST:
-----------------------------

TRACK: 1
ARTIST: Deep Purple
TITLE: Highway Star
CHANNELS: 6

TRACK: 2
ARTIST: Deep Purple
TITLE: Child In Time
CHANNELS: 6

TRACK: 3
ARTIST: Deep Purple
TITLE: Smoke On The Water
CHANNELS: 6

TRACK: 4
ARTIST: Deep Purple
TITLE: The Mule
CHANNELS: 6

TRACK: 5
ARTIST: Deep Purple
TITLE: Strange Kind Of Women
CHANNELS: 6

TRACK: 6
ARTIST: Deep Purple
TITLE: Lazy
CHANNELS: 6

TRACK: 7
ARTIST: Deep Purple
TITLE: Space Trucki'n
CHANNELS: 6
$ 

How do I fix this?
EuFlo commented 3 years ago

Glad you managed to build sacd_extract.

It means it is not a sacd iso.

Or the input path must be between quotes

sacd_extract -m -s -i \'[SACD-R][UP][CD]Deep\ Purple\ -\ Made\ in\ Japan\ -\ 1972-RX.iso' Try with another iso sacd.

udovdh commented 3 years ago

Why doesn't other software work without complaint on same iso? How can I verify sanity of iso (scarlet book compliance)?

udovdh commented 3 years ago

Or the input path must be between quotes

That yields a 'No such file or directory'. So it did read the file with escaped characters, sans quotes, OK, but complained about the data in the iso.

EuFlo commented 3 years ago

My sacd_extract made some integrity checks on iso scarletbook layout. Did you tried to put the input path between quotes?

udovdh commented 3 years ago

The iso is in the current directory. As I described in previous quote I did try quotes.

EuFlo commented 3 years ago

but complained about the data in the iso.

What are the lenght of iso file? It must be at least of 2GB.

EuFlo commented 3 years ago

Try to not escape the path components. Try to use a simplier path. Not with..' - '

udovdh commented 3 years ago

but complained about the data in the iso.

What are the lenght of iso file? It must be at least of 2GB.

3.3GB.

Try to not escape the path components. Try to use a simplier path. Not with..' - '

When I copy the iso to bla.iso and try that the result is the same.

EuFlo commented 3 years ago

Can be a dvd-a (audio dvd) ? Did you tried with another sacd iso?

EuFlo commented 3 years ago

Thanks for discovery 'enum' bug. I will made changes in a few days.

udovdh commented 3 years ago

Can be a dvd-a (audio dvd) ? Did you tried with another sacd iso?

Yes: $ sacd_extract -i SACD-R\ Richard\ Clayderman_Souvenirs_1989.iso

sacd_extract client 0.3.9.3-99-gfe1a337f9fc609d4e0ae84b63196c3fc4cf55a72

Enhanced by euflo ....starting!

Current (working) directory (for the app and 'sacd_extract.cfg' file): /home/udo/Download/bla/Richard Clayderman Souvenirs - 1989 scarletbook_read_master_toc: Not a ScarletBook disc! scarletbook_open: Can't read Master TOC !!

Program terminates!

When we shorten the name to bla.iso the terminal output is very similar.

udovdh commented 3 years ago

Can be a dvd-a (audio dvd) ?

Then I could mount the iso9660 filesystem easily... Which is not the case.

EuFlo commented 3 years ago

Try

$ sacd_extract -i SACD-R\ Richard\ Clayderman_Souvenirs_1989.iso

Somethink is not ok in the path... Why there are '\blank' in the paths components?

udovdh commented 3 years ago

Why there are '\blank' in the paths components?

We are on Fedora Linux. We run bash. We must escape spaces in filenames in the shell or use quotes. This means that '\ ' is not a (DOS) path. Paths on Linux (and most unix) are like: this/is/a/path/filename.

EuFlo commented 3 years ago

It must be something like that:

./sacd_extract -s -m -i '/SACD-R/Richard/Clayderman_Souvenirs_1989.iso'

udovdh commented 3 years ago

$ sacd_extract -i 'SACD-R Richard Clayderman_Souvenirs_1989.iso'

sacd_extract client 0.3.9.3-99-gfe1a337f9fc609d4e0ae84b63196c3fc4cf55a72

Enhanced by euflo ....starting!

Current (working) directory (for the app and 'sacd_extract.cfg' file): /home/udo/Download/bla/Richard Clayderman Souvenirs - 1989 scarletbook_read_master_toc: Not a ScarletBook disc! scarletbook_open: Can't read Master TOC !!

Program terminates!

Note: It does not mention a failure to find the file.

Same results for: $ sacd_extract -i SACD-R\ Richard\ Clayderman_Souvenirs_1989.iso

sacd_extract client 0.3.9.3-99-gfe1a337f9fc609d4e0ae84b63196c3fc4cf55a72

Enhanced by euflo ....starting!

Current (working) directory (for the app and 'sacd_extract.cfg' file): /home/udo/Download/bla/Richard Clayderman Souvenirs - 1989 scarletbook_read_master_toc: Not a ScarletBook disc! scarletbook_open: Can't read Master TOC !!

Program terminates!

EuFlo commented 3 years ago

Yes i know. In that case is mandatory to use path between quotes. Not with escapes...

udovdh commented 3 years ago

There is no path as the iso is in the current directory. Using quotes around the filename does not matter, as demonstrated. Using a name that needs no escaping nor quotes does not matter, as demonstrated.

EuFlo commented 3 years ago

Using quotes around the filename does not matter, as demonstrated.

Try using quotes around file name if contains spaces. The program made param splits using spaces. Try using SACDExtractGUI interface.

EuFlo commented 3 years ago

I think the real working directory for the sacd_extract is Home. So you must input the absolute path or to move iso file in Home.

EuFlo commented 3 years ago

For absolute path drag the iso file after -i param.

EuFlo commented 3 years ago

Made some tests if SACDExtractGui can run sacd_extract. Push TEST button. It shows ...versions...0.3.9.3-99..

EuFlo commented 3 years ago

It must be specified the path of sacd_extract using Browse button.

udovdh commented 3 years ago

Using SACDExtractGui:


[RUNNING][/home/udo/bin/sacd_extract, -i, /home/udo/bla.iso, -p, -c, -m]

scarletbook_read_master_toc: Not a ScarletBook disc!
scarletbook_open: Can't read Master TOC !!

sacd_extract client 0.3.9.3-99-gfe1a337f9fc609d4e0ae84b63196c3fc4cf55a72

Enhanced by euflo ....starting!

Current (working) directory (for the app and 'sacd_extract.cfg' file): /usr/src/SACDExtractGUI

Program terminates!

[DONE]

No spaces or quotes or escapes in path/filename.
Same failure.
EuFlo commented 3 years ago

Must be a bug. I will made some investigations.

EuFlo commented 3 years ago

Try using an already sacd_extract build. Can be found at Releases->Assets...

udovdh commented 3 years ago

I do trust gcc. I will not run binaries from untrusted sources.

EuFlo commented 3 years ago

Ah, ok. My build is made with gcc 7.50.

EuFlo commented 3 years ago

But you trust an java app like SACDExtractGui?

EuFlo commented 3 years ago

It is almost sure that there are some incompatibilties between gcc 7.50 and gcc 10 (used by fedora 33).

EuFlo commented 3 years ago

Sorry, but now, i have no time to dig in sources (from original fork ) to make it compatible with gcc 10.

udovdh commented 3 years ago

$ rpm -q gcc gcc-10.2.1-9.fc33.x86_64

lostfound commented 3 years ago

EuFlo this link should help you to make it compatible)

udovdh commented 3 years ago
# cd /usr/src/sacd-ripper/
 # git diff
diff --git a/tools/sacd_extract/CMakeLists.txt b/tools/sacd_extract/CMakeLists.txt
index f10ccd3..8d6f6a5 100644
--- a/tools/sacd_extract/CMakeLists.txt
+++ b/tools/sacd_extract/CMakeLists.txt
@@ -78,6 +78,7 @@ STRING(TOUPPER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_UPPER)
 if(NOT CMAKE_BUILD_TYPE_UPPER STREQUAL "DEBUG")
   if (CMAKE_COMPILER_IS_GNUCC OR (CMAKE_C_COMPILER_ID MATCHES "Clang"))
     add_definitions(
+       -fcommon
         -pipe
         -Wall -Wextra -Wcast-align -Wpointer-arith -O3
         -Wno-unused-parameter `xml2-config --cflags --libs`)

No change

EuFlo commented 3 years ago

​Thank you @udovdh and @lostfound

Understood the problem of double definitions of global.

I will try to remove the double definitions of global variable.

EuFlo commented 3 years ago

4 days ago, I already changed some declarations of enum's in scarletbook.h file (frame_format_t, character_set_t ,genre_t, category_t, track_type_t, audio_packet_data_type_t) . The old enum's declarations had a variable definition included in it. That's why the compiler complains about multiple variable definitions.

Please test it (git pull + make a rebuild).

EuFlo commented 3 years ago

Now test it with success on Fedora 34.

udovdh commented 3 years ago

[udo@surfplank2 Deep Purple - Made in Japan - 1972]$ /usr/src/sacd-ripper/tools/sacd_extract/sacd_extract bla.iso

sacd_extract client 0.3.9.3-102-gfd229aebf1cdbf2c8b219827b7d9872633a2c8dc-dirty

Enhanced by euflo ....starting!

Current (working) directory (for the app and 'sacd_extract.cfg' file): /home/udo/Download/bla/Deep Purple - Made in Japan - 1972 libsacdread: Can't stat /dev/cdrom No such file or directory

Program terminates!

[udo@surfplank2 Deep Purple - Made in Japan - 1972]$

So no go...

[udo@surfplank2 Deep Purple - Made in Japan - 1972]$ /usr/src/sacd-ripper/tools/sacd_extract/sacd_extract bla.iso

sacd_extract client 0.3.9.3-102-gfd229aebf1cdbf2c8b219827b7d9872633a2c8dc-dirty

Enhanced by euflo ....starting!

Current (working) directory (for the app and 'sacd_extract.cfg' file): /home/udo/Download/bla/Deep Purple - Made in Japan - 1972 libsacdread: Can't stat /dev/cdrom No such file or directory

Program terminates!

[udo@surfplank2 Deep Purple - Made in Japan - 1972]$

So no go...

EuFlo commented 3 years ago

I talked about success on building the app on Fedora 34 regarding the errors ..multiple definition of...

libsacdread: Can't stat /dev/cdrom No such file or directory

I think this is another problem.

EuFlo commented 3 years ago

[udo@surfplank2 Deep Purple - Made in Japan - 1972]$ /usr/src/sacd-ripper/tools/sacd_extract/sacd_extract bla.iso

You are doing a wrong command on sacd_extract app. I think the correct one is:

udo@surfplank2 Deep Purple - Made in Japan - 1972]$ /usr/src/sacd-ripper/tools/sacd_extract/sacd_extract -i bla.iso

You forgot to put an -i in front of name of iso file.

Here is a real working example running now on Fedora 34:

`[user1@fedora sacd_extract]$ ./sacd_extract -i '/home/user1/Music/arrau.iso' -P

sacd_extract client 0.3.9.3-102-gfd229aebf1cdbf2c8b219827b7d9872633a2c8dc

Enhanced by euflo ....starting!

Current (working) directory (for the app and 'sacd_extract.cfg' file): /home/user1/sacd-ripper/tools/sacd_extract

Disc Information: Version: 1.20 Creation date: 2016-07-11 Disc Catalog Number: PTC 5186235
Disc Category: General Disc Genre: Classical Locale: en, Code character set:[1], ISO646-JP Title: REMASTERED CLASSICS Beethoven - Sonatas for Piano and Violin ` .......