Skip to content

LTFS-backends make errors ubuntu 18.04 #10

Open
@p4xel

Description

@p4xel

Greetings.
I am trying to compile the backend driver.
I ran autogen and configure successfully without errors, but unfortunately make fails with the following:

root@cds-Precision-T7610:~/ltfs-backends# make
make  all-recursive
make[1]: Entering directory '/root/ltfs-backends'
Making all in messages
make[2]: Entering directory '/root/ltfs-backends/messages'
Processing driver_ltotape
genrb number of files: 3
ar: creating ./libdriver_ltotape.a
make[2]: Leaving directory '/root/ltfs-backends/messages'
Making all in src/tape_drivers/linux/ltotape
make[2]: Entering directory '/root/ltfs-backends/src/tape_drivers/linux/ltotape'
/bin/bash ../../../../libtool  --tag=CC --tag=disable-static  --mode=compile gcc -DHAVE_CONFIG_H   -D_GNU_SOURCE -I/usr/local/include/ltfs -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DIBM_LTFS_BUILD -DGENERIC_OEM_BUILD -I/usr/include  -I../../../../src   -g -O2 -MT libdriver_ltotape_la-ltotape.lo -MD -MP -MF .deps/libdriver_ltotape_la-ltotape.Tpo -c -o libdriver_ltotape_la-ltotape.lo `test -f 'ltotape.c' || echo './'`ltotape.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_GNU_SOURCE -I/usr/local/include/ltfs -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DIBM_LTFS_BUILD -DGENERIC_OEM_BUILD -I/usr/include -I../../../../src -g -O2 -MT libdriver_ltotape_la-ltotape.lo -MD -MP -MF .deps/libdriver_ltotape_la-ltotape.Tpo -c ltotape.c  -fPIC -DPIC -o .libs/libdriver_ltotape_la-ltotape.o
ltotape.c: In function ‘ltotape_remaining_capacity’:
ltotape.c:1456:62: warning: passing argument 3 of ‘ltotape_logsense’ makes integer from pointer without a cast [-Wint-conversion]
   status = ltotape_logsense (device, LOG_PAGE_TAPE_CAPACITY, logdata, LOGSENSEPAGE);
                                                              ^~~~~~~
ltotape.c:1381:5: note: expected ‘uint8_t {aka const unsigned char}’ but argument is of type ‘unsigned char *’
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
In file included from ../ibmtape/IBM_tape.h:1:0,
                 from ltotape_diag.h:71,
                 from ltotape.c:43:
/usr/local/include/ltfs/tape_drivers/ibm_tape.h:169:22: warning: passing argument 4 of ‘ltotape_logsense’ makes pointer from integer without a cast [-Wint-conversion]
 #define LOGSENSEPAGE 1024     /* max data xfer for log sense page ioctl */
                      ^
ltotape.c:1456:71: note: in expansion of macro ‘LOGSENSEPAGE’
   status = ltotape_logsense (device, LOG_PAGE_TAPE_CAPACITY, logdata, LOGSENSEPAGE);
                                                                       ^~~~~~~~~~~~
ltotape.c:1381:5: note: expected ‘unsigned char *’ but argument is of type ‘int’
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
ltotape.c:1456:12: error: too few arguments to function ‘ltotape_logsense’
   status = ltotape_logsense (device, LOG_PAGE_TAPE_CAPACITY, logdata, LOGSENSEPAGE);
            ^~~~~~~~~~~~~~~~
ltotape.c:1381:5: note: declared here
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
ltotape.c: In function ‘ltotape_get_cartridge_health’:
ltotape.c:2932:56: warning: passing argument 3 of ‘ltotape_logsense’ makes integer from pointer without a cast [-Wint-conversion]
   rc = ltotape_logsense (device, LOG_PAGE_VOLUMESTATS, logdata, LOGSENSEPAGE);
                                                        ^~~~~~~
ltotape.c:1381:5: note: expected ‘uint8_t {aka const unsigned char}’ but argument is of type ‘unsigned char *’
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
In file included from ../ibmtape/IBM_tape.h:1:0,
                 from ltotape_diag.h:71,
                 from ltotape.c:43:
/usr/local/include/ltfs/tape_drivers/ibm_tape.h:169:22: warning: passing argument 4 of ‘ltotape_logsense’ makes pointer from integer without a cast [-Wint-conversion]
 #define LOGSENSEPAGE 1024     /* max data xfer for log sense page ioctl */
                      ^
ltotape.c:2932:65: note: in expansion of macro ‘LOGSENSEPAGE’
   rc = ltotape_logsense (device, LOG_PAGE_VOLUMESTATS, logdata, LOGSENSEPAGE);
                                                                 ^~~~~~~~~~~~
ltotape.c:1381:5: note: expected ‘unsigned char *’ but argument is of type ‘int’
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
ltotape.c:2932:8: error: too few arguments to function ‘ltotape_logsense’
   rc = ltotape_logsense (device, LOG_PAGE_VOLUMESTATS, logdata, LOGSENSEPAGE);
        ^~~~~~~~~~~~~~~~
ltotape.c:1381:5: note: declared here
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
ltotape.c: In function ‘ltotape_get_tape_alert’:
ltotape.c:3002:55: warning: passing argument 3 of ‘ltotape_logsense’ makes integer from pointer without a cast [-Wint-conversion]
   rc = ltotape_logsense (device, LOG_PAGE_TAPE_ALERT, logdata, LOGSENSEPAGE);
                                                       ^~~~~~~
ltotape.c:1381:5: note: expected ‘uint8_t {aka const unsigned char}’ but argument is of type ‘unsigned char *’
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
In file included from ../ibmtape/IBM_tape.h:1:0,
                 from ltotape_diag.h:71,
                 from ltotape.c:43:
/usr/local/include/ltfs/tape_drivers/ibm_tape.h:169:22: warning: passing argument 4 of ‘ltotape_logsense’ makes pointer from integer without a cast [-Wint-conversion]
 #define LOGSENSEPAGE 1024     /* max data xfer for log sense page ioctl */
                      ^
ltotape.c:3002:64: note: in expansion of macro ‘LOGSENSEPAGE’
   rc = ltotape_logsense (device, LOG_PAGE_TAPE_ALERT, logdata, LOGSENSEPAGE);
                                                                ^~~~~~~~~~~~
ltotape.c:1381:5: note: expected ‘unsigned char *’ but argument is of type ‘int’
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
ltotape.c:3002:8: error: too few arguments to function ‘ltotape_logsense’
   rc = ltotape_logsense (device, LOG_PAGE_TAPE_ALERT, logdata, LOGSENSEPAGE);
        ^~~~~~~~~~~~~~~~
ltotape.c:1381:5: note: declared here
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
ltotape.c: In function ‘ltotape_get_eod_status’:
ltotape.c:3091:56: warning: passing argument 3 of ‘ltotape_logsense’ makes integer from pointer without a cast [-Wint-conversion]
   rc = ltotape_logsense (device, LOG_PAGE_VOLUMESTATS, logdata, LOGSENSEPAGE);
                                                        ^~~~~~~
ltotape.c:1381:5: note: expected ‘uint8_t {aka const unsigned char}’ but argument is of type ‘unsigned char *’
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
In file included from ../ibmtape/IBM_tape.h:1:0,
                 from ltotape_diag.h:71,
                 from ltotape.c:43:
/usr/local/include/ltfs/tape_drivers/ibm_tape.h:169:22: warning: passing argument 4 of ‘ltotape_logsense’ makes pointer from integer without a cast [-Wint-conversion]
 #define LOGSENSEPAGE 1024     /* max data xfer for log sense page ioctl */
                      ^
ltotape.c:3091:65: note: in expansion of macro ‘LOGSENSEPAGE’
   rc = ltotape_logsense (device, LOG_PAGE_VOLUMESTATS, logdata, LOGSENSEPAGE);
                                                                 ^~~~~~~~~~~~
ltotape.c:1381:5: note: expected ‘unsigned char *’ but argument is of type ‘int’
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
ltotape.c:3091:8: error: too few arguments to function ‘ltotape_logsense’
   rc = ltotape_logsense (device, LOG_PAGE_VOLUMESTATS, logdata, LOGSENSEPAGE);
        ^~~~~~~~~~~~~~~~
ltotape.c:1381:5: note: declared here
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
In file included from ltotape.c:3259:0:
ltotape_compat.c: In function ‘ltotape_wrapper_logsense’:
ltotape_compat.c:373:47: warning: passing argument 3 of ‘ltotape_logsense’ makes integer from pointer without a cast [-Wint-conversion]
         status = ltotape_logsense(&sio, page, buf, size);
                                               ^~~
ltotape.c:1381:5: note: expected ‘uint8_t {aka const unsigned char}’ but argument is of type ‘unsigned char *’
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
In file included from ltotape.c:3259:0:
ltotape_compat.c:373:52: warning: passing argument 4 of ‘ltotape_logsense’ makes pointer from integer without a cast [-Wint-conversion]
         status = ltotape_logsense(&sio, page, buf, size);
                                                    ^~~~
ltotape.c:1381:5: note: expected ‘unsigned char *’ but argument is of type ‘size_t {aka const long unsigned int}’
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
In file included from ltotape.c:3259:0:
ltotape_compat.c:373:18: error: too few arguments to function ‘ltotape_logsense’
         status = ltotape_logsense(&sio, page, buf, size);
                  ^~~~~~~~~~~~~~~~
ltotape.c:1381:5: note: declared here
 int ltotape_logsense (void *device, const uint8_t page, const uint8_t subpage,
     ^~~~~~~~~~~~~~~~
In file included from ltotape.c:3259:0:
ltotape_compat.c: At top level:
ltotape_compat.c:701:35: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types]
         .logsense               = ltotape_wrapper_logsense,
                                   ^~~~~~~~~~~~~~~~~~~~~~~~
ltotape_compat.c:701:35: note: (near initialization for ‘ltotape_drive_handler.logsense’)
ltotape_compat.c:732:3: error: ‘struct tape_ops’ has no member named ‘get_block_in_buffer’; did you mean ‘get_next_block_to_xfer’?
  .get_block_in_buffer    = ltotape_get_block_in_buffer,
   ^~~~~~~~~~~~~~~~~~~
   get_next_block_to_xfer
ltotape_compat.c:732:28: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types]
  .get_block_in_buffer    = ltotape_get_block_in_buffer,
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ltotape_compat.c:732:28: note: (near initialization for ‘ltotape_drive_handler.get_next_block_to_xfer’)
Makefile:479: recipe for target 'libdriver_ltotape_la-ltotape.lo' failed
make[2]: *** [libdriver_ltotape_la-ltotape.lo] Error 1
make[2]: Leaving directory '/root/ltfs-backends/src/tape_drivers/linux/ltotape'
Makefile:475: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/root/ltfs-backends'
Makefile:383: recipe for target 'all' failed
make: *** [all] Error 2

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions