Trying to build DBD::Sybase on RHEL8&9, got many warnings
Opened this issue · 3 comments
set up SYBASE environment variables and tried to install DBD::Sybase
[sybase@hero DBD-Sybase-1.23]$ perl Makefile.PL
Sybase OpenClient 16.0 SP03 PL13 found.
By default DBD::Sybase 1.05 and later use the 'CHAINED' mode (where available)
when 'AutoCommit' is turned off. Versions 1.04 and older instead managed
the transactions explicitly with a 'BEGIN TRAN' before the first DML
statement. Using the 'CHAINED' mode is preferable as it is the way that
Sybase implements AutoCommit handling for both its ODBC and JDBC drivers.
Use 'CHAINED' mode by default (Y/N) [Y]:
Running in threaded mode - looking for _r libraries...
NOTE
There is an incompatibility between perl (5.8.x or later) built in threaded
mode and Sybase's threaded libraries, which means that signals delivered to
the perl process result in a segment violation.
I suggest building DBD::Sybase with the normal libraries in this case to get
reasonable behavior for signal handling.
Use the threaded (lib..._r) libraries [N]:
OK - I'll use the normal libs
Running in 64bit mode - looking for '64' libraries...
Found -lsybct64 for -lsybct
Found -lsybcs64 for -lsybcs
Found -lsybtcl64 for -lsybtcl
Found -lsybcomn64 for -lsybcomn
Found -lsybintl64 for -lsybintl
Found -lsybblk64 for -lsybblk
BLK api available - found: sybblk64
The DBD::Sybase module need access to a Sybase server to run the tests.
To clear an entry please enter 'undef'
Sybase server to use (default: SYBASE): DB1
User ID to log in to Sybase (default: sa):
Password (default: undef):
Sybase database to use on DB1 (default: undef): tempdb
- Writing login information, including password, to file PWD.
Checking if your kit is complete...
Warning: the following files are missing in your kit:
dbd-sybase.pod
Please inform the author.
Using DBI 1.641 (for perl 5.026003 on x86_64-linux-thread-multi) installed in /usr/lib64/perl5/vendor_perl/auto/DBI/
Generating a Unix-style Makefile
Writing Makefile for DBD::Sybase
Writing MYMETA.yml and MYMETA.json
ran "perl Makefile.PL" the 2nd time, the warning related to dbd-sybase.pod was gone and I was abled to install DBD::Sybase; however, there were whole bunch of warnings from make.
@mpeppler Michael, how can I get rid of those warnings? thanks
[sybase@hero DBD-Sybase-1.23]$ perl Makefile.PL
Sybase OpenClient 16.0 SP03 PL13 found.
By default DBD::Sybase 1.05 and later use the 'CHAINED' mode (where available)
when 'AutoCommit' is turned off. Versions 1.04 and older instead managed
the transactions explicitly with a 'BEGIN TRAN' before the first DML
statement. Using the 'CHAINED' mode is preferable as it is the way that
Sybase implements AutoCommit handling for both its ODBC and JDBC drivers.
Use 'CHAINED' mode by default (Y/N) [Y]:
Running in threaded mode - looking for _r libraries...
NOTE
There is an incompatibility between perl (5.8.x or later) built in threaded
mode and Sybase's threaded libraries, which means that signals delivered to
the perl process result in a segment violation.
I suggest building DBD::Sybase with the normal libraries in this case to get
reasonable behavior for signal handling.
Use the threaded (lib..._r) libraries [N]:
OK - I'll use the normal libs
Running in 64bit mode - looking for '64' libraries...
Found -lsybct64 for -lsybct
Found -lsybcs64 for -lsybcs
Found -lsybtcl64 for -lsybtcl
Found -lsybcomn64 for -lsybcomn
Found -lsybintl64 for -lsybintl
Found -lsybblk64 for -lsybblk
BLK api available - found: sybblk64
The DBD::Sybase module need access to a Sybase server to run the tests.
To clear an entry please enter 'undef'
Sybase server to use (default: SYBASE): DB1
User ID to log in to Sybase (default: sa): sa
Password (default: undef):
Sybase database to use on DB1 (default: undef): tempdb
- Writing login information, including password, to file PWD.
Using DBI 1.641 (for perl 5.026003 on x86_64-linux-thread-multi) installed in /usr/lib64/perl5/vendor_perl/auto/DBI/
Generating a Unix-style Makefile
Writing Makefile for DBD::Sybase
Writing MYMETA.yml and MYMETA.json
[sybase@hero DBD-Sybase-1.23]$ make
cp Sybase.pm blib/lib/DBD/Sybase.pm
Running Mkbootstrap for Sybase ()
chmod 644 "Sybase.bs"
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Sybase.bs blib/arch/auto/DBD/Sybase/Sybase.bs 644
"/usr/bin/perl" -p -e "s/DRIVER/Sybase/g" /usr/lib64/perl5/vendor_perl/auto/DBI/Driver.xst > Sybase.xsi
"/usr/bin/perl" "/usr/share/perl5/vendor_perl/ExtUtils/xsubpp" -typemap '/usr/share/perl5/ExtUtils/typemap' Sybase.xs > Sybase.xsc
mv Sybase.xsc Sybase.c
gcc -c -I/db/ase/ase16/OCS-16_0/include -DSYB_LP64 -I/usr/lib64/perl5/vendor_perl/auto/DBI -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -DVERSION="1.23" -DXS_VERSION="1.23" -fPIC "-I/usr/lib64/perl5/CORE" Sybase.c
In file included from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:24,
from Sybase.h:16,
from Sybase.xs:14:
Sybase.c: In function ‘XS_DBD__Sybase__db__isdead’:
/usr/lib64/perl5/CORE/XSUB.h:191:20: warning: unused variable ‘ix’ [-Wunused-variable]
#define dXSI32 I32 ix = XSANY.any_i32
^~
Sybase.c:250:5: note: in expansion of macro ‘dXSI32’
dXSI32;
^~~~~~
Sybase.c: In function ‘XS_DBD__Sybase__db__date_fmt’:
/usr/lib64/perl5/CORE/XSUB.h:191:20: warning: unused variable ‘ix’ [-Wunused-variable]
#define dXSI32 I32 ix = XSANY.any_i32
^~
Sybase.c:269:5: note: in expansion of macro ‘dXSI32’
dXSI32;
^~~~~~
Sybase.c: In function ‘XS_DBD__Sybase__st_cancel’:
/usr/lib64/perl5/CORE/XSUB.h:191:20: warning: unused variable ‘ix’ [-Wunused-variable]
#define dXSI32 I32 ix = XSANY.any_i32
^~
Sybase.c:308:5: note: in expansion of macro ‘dXSI32’
dXSI32;
^~~~~~
Sybase.c: In function ‘XS_DBD__Sybase__st_ct_get_data’:
/usr/lib64/perl5/CORE/XSUB.h:191:20: warning: unused variable ‘ix’ [-Wunused-variable]
#define dXSI32 I32 ix = XSANY.any_i32
^~
Sybase.c:327:5: note: in expansion of macro ‘dXSI32’
dXSI32;
^~~~~~
Sybase.c: In function ‘XS_DBD__Sybase__st_ct_data_info’:
/usr/lib64/perl5/CORE/XSUB.h:191:20: warning: unused variable ‘ix’ [-Wunused-variable]
#define dXSI32 I32 ix = XSANY.any_i32
^~
Sybase.c:361:5: note: in expansion of macro ‘dXSI32’
dXSI32;
^~~~~~
Sybase.c: In function ‘XS_DBD__Sybase__st_ct_send_data’:
/usr/lib64/perl5/CORE/XSUB.h:191:20: warning: unused variable ‘ix’ [-Wunused-variable]
#define dXSI32 I32 ix = XSANY.any_i32
^~
Sybase.c:400:5: note: in expansion of macro ‘dXSI32’
dXSI32;
^~~~~~
Sybase.c: In function ‘XS_DBD__Sybase__st_ct_prepare_send’:
/usr/lib64/perl5/CORE/XSUB.h:191:20: warning: unused variable ‘ix’ [-Wunused-variable]
#define dXSI32 I32 ix = XSANY.any_i32
^~
Sybase.c:423:5: note: in expansion of macro ‘dXSI32’
dXSI32;
^~~~~~
Sybase.c: In function ‘XS_DBD__Sybase__st_ct_finish_send’:
/usr/lib64/perl5/CORE/XSUB.h:191:20: warning: unused variable ‘ix’ [-Wunused-variable]
#define dXSI32 I32 ix = XSANY.any_i32
^~
Sybase.c:442:5: note: in expansion of macro ‘dXSI32’
dXSI32;
^~~~~~
Sybase.c: In function ‘XS_DBD__Sybase__st_ct_data_info’:
Sybase.xs:130:13: warning: ‘sybaction’ may be used uninitialized in this function [-Wmaybe-uninitialized]
ST(0) = syb_ct_data_info(sth, imp_sth, sybaction, column, attr) ? &PL_sv_yes : &PL_sv_no;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sybase.xs:124:9: note: ‘sybaction’ was declared here
int sybaction;
^~~~~~~~~
gcc -c -I/db/ase/ase16/OCS-16_0/include -DSYB_LP64 -I/usr/lib64/perl5/vendor_perl/auto/DBI -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -DVERSION="1.23" -DXS_VERSION="1.23" -fPIC "-I/usr/lib64/perl5/CORE" dbdimp.c
In file included from /usr/lib64/perl5/CORE/perl.h:5589,
from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23,
from Sybase.h:16,
from dbdimp.c:10:
dbdimp.c: In function ‘clientmsg_cb’:
/usr/lib64/perl5/CORE/pp.h:145:16: warning: value computed is not used [-Wunused-value]
#define POPs (*sp--)
~^~~~~~
dbdimp.c:307:9: note: in expansion of macro ‘POPs’
POPs;
^~~~
dbdimp.c: In function ‘servermsg_cb’:
/usr/lib64/perl5/CORE/pp.h:145:16: warning: value computed is not used [-Wunused-value]
#define POPs (*sp--)
^~~~~~
dbdimp.c:518:7: note: in expansion of macro ‘POPs’
POPs;
^~~~
dbdimp.c: In function ‘syb_init’:
dbdimp.c:861:7: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
if (cs_ver = CS_CURRENT_VERSION) {
^~~~~~
dbdimp.c: In function ‘get_server_version’:
dbdimp.c:1717:9: warning: unused variable ‘db’ [-Wunused-variable]
char *db;
^
dbdimp.c: In function ‘syb_db_opentran’:
dbdimp.c:2128:35: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘void ’ [-Wformat=]
sprintf(imp_dbh->tranName, "DBI%x", (void)imp_dbh);
~^ ~~~~~~~~~~~~~~
%p
dbdimp.c: In function ‘syb_db_STORE_attrib’:
dbdimp.c:2285:9: warning: variable ‘ret’ set but not used [-Wunused-but-set-variable]
int ret;
^~~
dbdimp.c: In function ‘syb_alloc_cmd’:
dbdimp.c:2733:45: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘CS_COMMAND *’ {aka ‘struct _cscommand *’} [-Wformat=]
" syb_alloc_cmd() -> CS_COMMAND %x for CS_CONNECTION %x\n",
~^
cmd, connection);
~~~
dbdimp.c:2733:66: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘CS_CONNECTION *’ {aka ‘struct _csconnection *’} [-Wformat=]
" syb_alloc_cmd() -> CS_COMMAND %x for CS_CONNECTION %x\n",
~^
cmd, connection);
~~~~~~~~~~
dbdimp.c: In function ‘dbd_preparse’:
dbdimp.c:2744:5: warning: unused variable ‘STATES’ [-Wunused-variable]
} STATES;
^~~~~~
dbdimp.c: In function ‘syb_st_describe_proc’:
dbdimp.c:3155:26: warning: unused variable ‘STATES’ [-Wunused-variable]
enum {DEFAULT, QUOTED} STATES;
^~~~~~
dbdimp.c: In function ‘_convert’:
dbdimp.c:3756:24: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
if (DBIS->debug >= 3 && retcode != CS_SUCCEED || reslen == CS_UNUSED) {
dbdimp.c: In function ‘syb_blk_execute’:
dbdimp.c:3955:18: warning: unused variable ‘con’ [-Wunused-variable]
CS_CONNECTION *con = imp_sth->connection ? imp_sth->connection
^~~
dbdimp.c: In function ‘cmd_execute’:
dbdimp.c:4111:61: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘CS_COMMAND *’ {aka ‘struct _cscommand *’} [-Wformat=]
" cmd_execute() -> ct_command() failed (cmd=%x, statement=%s, imp_sth=%x)\n",
~^
imp_sth->cmd, imp_sth->statement, imp_sth);
~~~~~~~~~~~~
dbdimp.c:4111:87: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘imp_sth_t *’ {aka ‘struct imp_sth_st *’} [-Wformat=]
cmd_execute() -> ct_command() failed (cmd=%x, statement=%s, imp_sth=%x)\n",
~^
mp_sth->cmd, imp_sth->statement, imp_sth);
~~~~~~~
In file included from /usr/lib64/perl5/CORE/perl.h:3913,
from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23,
from Sybase.h:16,
from dbdimp.c:10:
dbdimp.c: In function ‘syb_st_fetch’:
/usr/lib64/perl5/CORE/sv.h:1705:5: warning: pointer targets in initialization of ‘U8 *’ {aka ‘unsigned char *’} from ‘char *’ differ in signedness [-Wpointer-sign]
(SvPOK_nog(sv)
^
dbdimp.c:4438:25: note: in expansion of macro ‘SvPV_nolen’
U8 *value = SvPV_nolen(sv);
^~~~~~~~~~
dbdimp.c: In function ‘syb_st_destroy’:
dbdimp.c:4779:41: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘imp_sth_t *’ {aka ‘struct imp_sth_st *’} [-Wformat=]
" syb_st_destroy: called on %x...\n", imp_sth);
~^ ~~~~~~~
dbdimp.c:4817:45: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘CS_COMMAND *’ {aka ‘struct _cscommand *’} [-Wformat=]
" ct_cmd_drop() -> CS_COMMAND %x\n", imp_sth->cmd);
~^ ~~~~~~~~~~~~
In file included from Sybase.h:16,
from dbdimp.c:10:
dbdimp.c: In function ‘syb_ct_send_data’:
/usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:381:45: warning: unused variable ‘imp_dbh’ [-Wunused-variable]
#define D_imp_dbh_from_sth D_imp_from_child(imp_dbh, imp_dbh_t, imp_sth)
^~~~~~~
/usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:379:39: note: in definition of macro ‘D_imp_from_child’
type name = (type)(DBIc_PARENT_COM(child))
^~~~
dbdimp.c:4981:3: note: in expansion of macro ‘D_imp_dbh_from_sth’
D_imp_dbh_from_sth;
^~~~~~~~~~~~~~~~~~
dbdimp.c: In function ‘syb_ct_data_info’:
dbdimp.c:5046:68: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘CS_BYTE *’ {aka ‘unsigned char *’} [-Wformat=]
" ct_data_info(): ret = %d, total_txtlen = %d, textptr=%x, timestamp=%x, datatype=%d\n", ret, imp_dbh->iodesc.total_txtlen,
~^
%hhn
imp_dbh->iodesc.textptr, imp_dbh->iodesc.timestamp, imp_dbh->iodesc.datatype);
~~~~~~~~~~~~~~~~~~~~~~~
dbdimp.c:5046:82: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘CS_BYTE *’ {aka ‘unsigned char *’} [-Wformat=]
ct_data_info(): ret = %d, total_txtlen = %d, textptr=%x, timestamp=%x, datatype=%d\n", ret, imp_dbh->iodesc.total_txtlen,
~^
%hhn
bh->iodesc.textptr, imp_dbh->iodesc.timestamp, imp_dbh->iodesc.datatype);
~~~~~~~~~~~~~~~~~~~~~~~~~
dbdimp.c: In function ‘_dbd_rebind_ph’:
dbdimp.c:5735:45: warning: format ‘%d’ expects argument of type ‘int’, but argument 5 has type ‘IV’ {aka ‘long int’} [-Wformat=]
" bind %s <== '%.100s' (size %d, ok %d)\n", phs->name,
~^
%ld
phs->sv_buf, phs->maxlen, SvOK(phs->sv) ? 1 : 0);
~~~~~~~~~~~
In file included from /usr/lib64/perl5/CORE/perl.h:3913,
from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23,
from Sybase.h:16,
from dbdimp.c:10:
dbdimp.c: In function ‘syb_bind_ph’:
/usr/lib64/perl5/CORE/sv.h:1670:13: warning: operation on ‘lna’ may be undefined [-Wsequence-point]
? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pv_flags(sv, &lp, flags))
~~~~^~~~~~~~~~~~
/usr/lib64/perl5/CORE/sv.h:1664:30: note: in expansion of macro ‘SvPV_flags’
#define SvPV(sv, lp) SvPV_flags(sv, lp, SV_GMAGIC)
^~~~~~~~~~
dbdimp.c:5832:29: note: in expansion of macro ‘SvPV’
lna), attribs ? SvPV(attribs, lna) : "");
^~~~
dbdimp.c: In function ‘blkCleanUp’:
dbdimp.c:6303:40: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘CS_BLKDESC *’ {aka ‘struct _cs_blkdesc *’} [-Wformat=]
" blkCleanUp -> blk_drop(%d) = %d\n", imp_sth->bcp_desc,
^ ~~~~~~~~~~~~~~~~~
At top level:
dbdimp.c:4281:12: warning: ‘fix_fbav’ defined but not used [-Wunused-function]
static int fix_fbav(imp_sth_t *imp_sth, int num_fields, AV *av) {
^~~~~~~~
dbdimp.c:191:29: warning: ‘cslibmsg_cb’ defined but not used [-Wunused-function]
static CS_RETCODE CS_PUBLIC cslibmsg_cb(CS_CONTEXT *context, CS_CLIENTMSG *errmsg) {
^~~~~~~~~~~
dbdimp.c: In function ‘syb_db_connect’:
dbdimp.c:1656:28: warning: ‘%s’ directive writing up to 259 bytes into a region of size 250 [-Wformat-overflow=]
sprintf(statement, "use [%s]", db);
^
In file included from /usr/include/stdio.h:873,
from /usr/lib64/perl5/CORE/perlio.h:41,
from /usr/lib64/perl5/CORE/iperlsys.h:51,
from /usr/lib64/perl5/CORE/perl.h:3880,
from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23,
from Sybase.h:16,
from dbdimp.c:10:
/usr/include/bits/stdio2.h:36:10: note: ‘__builtin___sprintf_chk’ output between 7 and 266 bytes into a destination of size 255
return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
__glibc_objsize (__s), __fmt,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
__va_arg_pack ());
~~~~~~~~~~~~~~~~~
rm -f blib/arch/auto/DBD/Sybase/Sybase.so
gcc -L/db/ase/ase16/OCS-16_0//db/ase/ase16/OCS-16_0/lib -lpthread -shared -Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -L/usr/local/lib -fstack-protector-strong Sybase.o dbdimp.o -o blib/arch/auto/DBD/Sybase/Sybase.so
-L/db/ase/ase16/OCS-16_0/lib -lsybct64 -lsybcs64 -lsybtcl64 -lsybcomn64 -lsybintl64 -lsybblk64 -ldl -lm -lperl \
chmod 755 blib/arch/auto/DBD/Sybase/Sybase.so
Manifying 1 pod document
[sybase@hero DBD-Sybase-1.23]$ make test
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Sybase.bs blib/arch/auto/DBD/Sybase/Sybase.bs 644
PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/.t
t/autocommit.t .. ok
t/base.t ........ ok
t/exec.t ........ ok
t/fail.t ........ ok
t/login.t ....... 1/6 DBD::Sybase::db ping failed: ct_cmd_alloc failed at t/login.t line 32.
t/login.t ....... ok
t/main.t ........ ok
t/multi_sth.t ... ok
t/nsql.t ........ ok
t/place.t ....... ok
t/thread.t ...... ok
t/utf8.t ........ ok
t/xblk.t ........ ok
t/xblob.t ....... ok
All tests successful.
Files=13, Tests=264, 6 wallclock secs ( 0.20 usr 0.04 sys + 2.39 cusr 0.45 csys = 3.08 CPU)
Result: PASS
[sybase@hero DBD-Sybase-1.23]$ sudo make install
[sudo] password for sybase:
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Sybase.bs blib/arch/auto/DBD/Sybase/Sybase.bs 644
Manifying 1 pod document
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /usr/local/lib64/perl5/auto/DBD/Sybase/Sybase.so
Installing /usr/local/lib64/perl5/DBD/Sybase.pm
Installing /usr/local/share/man/man3/DBD::Sybase.3
Appending installation info to /usr/lib64/perl5/perllocal.pod
figured it out, the warnings can be silenced by using the PERL_UNUSED_VAR() macro etc., see following links for details:
Perl/perl5#17536
dankogai/p5-encode#140
dankogai/p5-encode#143
Tested building DBD::Sybase against Perl 5.24, 5,26, 5.32 and 5.38. The warnings were gone only with Perl 5.38.
@mpeppler will these warnings lead to any issues for DBD::Sybase?