[OpenAFS-devel] AIX build fails with missing symbol
.krb5_c_make_random_key
Ben Huntsman
ben@huntsmans.net
Sun, 14 Aug 2022 18:46:00 +0000
--_000_MWHPR0701MB36743D74D14311A20D2B3F03A7699MWHPR0701MB3674_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Hi Ken-
Ah, yes, I believe you are right. That library does exist on my system als=
o, and I manually added it to Makefile.config and the build continued. The=
question is then, why didn't ./configure detect it and add it?
I think this is the problem:
$ grep md5 config.log
configure:41845: checking for krb5int_hash_md5 in -lk5crypto
ld: 0711-317 ERROR: Undefined symbol: .krb5int_hash_md5
| char krb5int_hash_md5 ();
| return krb5int_hash_md5 ();
configure:48734: checking for krb5int_hash_md5 in -lk5crypto
ac_cv_lib_k5crypto_krb5int_hash_md5=3Dno
$ nm /opt/freeware/lib/libk5crypto.a | grep md5
.EVP_md5 T 268449356
.EVP_md5 t 268449356 40
.hash_md5 t 268450036 120
.krb5int_hmacmd5_checksum T 268481192 892
EVP_md5 U -
EVP_md5 d 536875224 4
_checksumhmacmd5.rop_ t 268504960 13
checksum_hmac_md5.c f -
hash_md5 d 536873496 12
hash_md5:f821 - 520
krb5int_hash_md5 D 536871692
krb5int_hash_md5 d 536875384 4
krb5int_hash_md5:G1628 - 60
krb5int_hmacmd5_checksum D 536874036
krb5int_hmacmd5_checksum d 536874036 12
krb5int_hmacmd5_checksum:F821 - 0
For some reason, the check for if we should add -lk5crypto is failing. The=
re's a krb5int_hash_md5 but not a .krb5int_hash_md5. Should we check for s=
omething else on AIX?
Thank you.
-Ben
________________________________
From: Ken Hornstein <kenh@cmf.nrl.navy.mil>
Sent: Sunday, August 14, 2022 10:25 AM
To: Ben Huntsman <ben@huntsmans.net>
Cc: openafs-devel@openafs.org <openafs-devel@openafs.org>
Subject: Re: [OpenAFS-devel] AIX build fails with missing symbol .krb5_c_ma=
ke_random_key
> Like I said though, nm shows that the libkrb5.a library has the
> symbol in question in it, so I'm not quite sure how providing a
> newer version would alter the outcome...
Are you _sure_ that libkrb5.a has that symbol in it, and it's not just
an undefined reference to the symbol? On my system (using MIT krb5 1.19)
krb5_c_make_random_key is in libk5crypto, and I noticed that library is
not in your link command (there are references to krb5_c_make_random_key
in libkrb5, but no symbol definition).
--Ken
--_000_MWHPR0701MB36743D74D14311A20D2B3F03A7699MWHPR0701MB3674_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
<html>
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<style type=3D"text/css" style=3D"display:none;"> P {margin-top:0;margin-bo=
ttom:0;} </style>
</head>
<body dir=3D"ltr">
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
Hi Ken-</div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
Ah, yes, I believe you are right. That library does exist on my syste=
m also, and I manually added it to Makefile.config and the build continued.=
The question is then, why didn't ./configure detect it and add it?</=
div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
I think this is the problem:</div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
$ grep md5 config.log
<div>configure:41845: checking for krb5int_hash_md5 in -lk5crypto</div>
<div>ld: 0711-317 ERROR: Undefined symbol: .krb5int_hash_md5</div>
<div>| char krb5int_hash_md5 ();</div>
<div>| return krb5int_hash_md5 ();</div>
<div>configure:48734: checking for krb5int_hash_md5 in -lk5crypto</div>
<div>ac_cv_lib_k5crypto_krb5int_hash_md5=3Dno</div>
<div>$ nm /opt/freeware/lib/libk5crypto.a | grep md5</div>
<div>.EVP_md5 T 268449356<=
/div>
<div>.EVP_md5 t 268449356 =
40</div>
<div>.hash_md5 t 268450036 =
120</div>
<div>.krb5int_hmacmd5_checksum T 268481192 &nbs=
p; 892</div>
<div>EVP_md5 U  =
; -</div>
<div>EVP_md5 d 53687=
5224 4</div>
<div>_checksumhmacmd5.rop_ t 268504960 &=
nbsp;13</div>
<div>checksum_hmac_md5.c f -</div>
<div>hash_md5 d 536873496 =
12</div>
<div>hash_md5:f821 - =
520</div>
<div>krb5int_hash_md5 D 536871692</div>
<div>krb5int_hash_md5 d 536875384 =
4</div>
<div>krb5int_hash_md5:G1628 - 60</div>
<div>krb5int_hmacmd5_checksum D 536874036</div>
<div>krb5int_hmacmd5_checksum d 536874036  =
; 12</div>
<div>krb5int_hmacmd5_checksum:F821 - 0</=
div>
<br>
</div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
For some reason, the check for if we should add -lk5crypto is failing. =
; There's a <span style=3D"background-color:rgb(255, 255, 255);display=
:inline !important">krb5int_hash_md5 but not a .<span style=3D"background-c=
olor:rgb(255, 255, 255);display:inline !important">krb5int_hash_md5.
Should we check for something else on AIX? </span></span></div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
<span style=3D"background-color:rgb(255, 255, 255);display:inline !importan=
t"><span style=3D"background-color:rgb(255, 255, 255);display:inline !impor=
tant"><br>
</span></span></div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
<span style=3D"background-color:rgb(255, 255, 255);display:inline !importan=
t"><span style=3D"background-color:rgb(255, 255, 255);display:inline !impor=
tant">Thank you.</span></span></div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
<span style=3D"background-color:rgb(255, 255, 255);display:inline !importan=
t"><span style=3D"background-color:rgb(255, 255, 255);display:inline !impor=
tant"><br>
</span></span></div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
<span style=3D"background-color:rgb(255, 255, 255);display:inline !importan=
t"><span style=3D"background-color:rgb(255, 255, 255);display:inline !impor=
tant">-Ben</span></span></div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
<span style=3D"background-color:rgb(255, 255, 255);display:inline !importan=
t"><span style=3D"background-color:rgb(255, 255, 255);display:inline !impor=
tant"><br>
</span></span></div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
</div>
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);" class=3D"elementToProof">
<br>
</div>
<div id=3D"appendonsend"></div>
<hr style=3D"display:inline-block;width:98%" tabindex=3D"-1">
<div id=3D"divRplyFwdMsg" dir=3D"ltr"><font face=3D"Calibri, sans-serif" st=
yle=3D"font-size:11pt" color=3D"#000000"><b>From:</b> Ken Hornstein <ken=
h@cmf.nrl.navy.mil><br>
<b>Sent:</b> Sunday, August 14, 2022 10:25 AM<br>
<b>To:</b> Ben Huntsman <ben@huntsmans.net><br>
<b>Cc:</b> openafs-devel@openafs.org <openafs-devel@openafs.org><br>
<b>Subject:</b> Re: [OpenAFS-devel] AIX build fails with missing symbol .kr=
b5_c_make_random_key</font>
<div> </div>
</div>
<div class=3D"BodyFragment"><font size=3D"2"><span style=3D"font-size:11pt;=
">
<div class=3D"PlainText">> Like I said though, nm shows that=
the libkrb5.a library has the<br>
> symbol in question in it, so I'm not quite sure how provid=
ing a<br>
> newer version would alter the outcome...<br>
<br>
Are you _sure_ that libkrb5.a has that symbol in it, and it's not just<br>
an undefined reference to the symbol? On my system (using MIT krb5 1.=
19)<br>
krb5_c_make_random_key is in libk5crypto, and I noticed that library is<br>
not in your link command (there are references to krb5_c_make_random_key<br=
>
in libkrb5, but no symbol definition).<br>
<br>
--Ken<br>
</div>
</span></font></div>
</body>
</html>
--_000_MWHPR0701MB36743D74D14311A20D2B3F03A7699MWHPR0701MB3674_--