bug#78682: Building libltdl with MSVC fails
Kirill Makurin <[email protected]> Tue, 3 Jun 2025 14:29:06 +0000
| Newsgroups | gmane.comp.gnu.libtool.bugs |
|---|---|
| Message-ID | <DM4PR84MB1373B22FCD2115D1A76059D0B16DA@DM4PR84MB1373.NAMPRD84.PROD.OUTLOOK.COM> |
--_004_DM4PR84MB1373B22FCD2115D1A76059D0B16DADM4PR84MB1373NAMP_
Content-Type: multipart/alternative;
boundary="_000_DM4PR84MB1373B22FCD2115D1A76059D0B16DADM4PR84MB1373NAMP_"
--_000_DM4PR84MB1373B22FCD2115D1A76059D0B16DADM4PR84MB1373NAMP_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi,
Building libltdl with MSVC fails:
```
libltdl_la-ltdl.obj : error LNK2019: unresolved external symbol lt_ltdl_LTX=
_preloaded_symbols referenced in function lt_dlinit
libltdl\.libs\libltdl-7.dll : fatal error LNK1120: 1 unresolved externals
```
I attached full invocation in separate file since it's quite messy.
I did some investigation.
Apparently, `lt_ltdl_LTX_preloaded_symbols` is supposed to be defined in li=
btool-generated `libltdl/.libs/libltdlS.c`, however it defines `lt_libltdl_=
LTX_preloaded_symbols` instead, as if it was mingw build.
I was building from libtool-2.5.4 release tarball. I tried building from `m=
aster` and the issue also exist there.
Thank you for working on MSVC-related issues. I have some other things to r=
eport/suggest.
- Kirill Makurin
--_000_DM4PR84MB1373B22FCD2115D1A76059D0B16DADM4PR84MB1373NAMP_
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<html>
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Diso-8859-=
1">
<style type=3D"text/css" style=3D"display:none;"> P {margin-top:0;margin-bo=
ttom:0;} </style>
</head>
<body dir=3D"ltr">
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
Hi,</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
<br>
</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
Building libltdl with MSVC fails:</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
<br>
</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
```</div>
<div class=3D"elementToProof" style=3D"line-height: 19px; font-family: Apto=
s, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;=
font-size: 12pt; color: rgb(0, 0, 0);">
libltdl_la-ltdl.obj : error LNK2019: unresolved external symbol lt_ltd=
l_LTX_preloaded_symbols referenced in function lt_dlinit</div>
<div class=3D"elementToProof" style=3D"line-height: 19px; font-family: Apto=
s, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;=
font-size: 12pt; color: rgb(0, 0, 0);">
libltdl\.libs\libltdl-7.dll : fatal error LNK1120: 1 unresolved extern=
als</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
```</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
<br>
</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
I attached full invocation in separate file since it's quite messy.</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
<br>
</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
I did some investigation.</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
<br>
</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
Apparently, `lt_ltdl_LTX_preloaded_symbols` is supposed to be defined in li=
btool-generated `libltdl/.libs/libltdlS.c`, however it defines `lt_libltdl_=
LTX_preloaded_symbols` instead, as if it was mingw build.</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
<br>
</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
I was building from libtool-2.5.4 release tarball. I tried building from `m=
aster` and the issue also exist there.</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
<br>
</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
Thank you for working on MSVC-related issues. I have some other things to r=
eport/suggest.</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
<br>
</div>
<div class=3D"elementToProof" style=3D"font-family: Aptos, Aptos_EmbeddedFo=
nt, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; c=
olor: rgb(0, 0, 0);">
- Kirill Makurin</div>
</body>
</html>
--_000_DM4PR84MB1373B22FCD2115D1A76059D0B16DADM4PR84MB1373NAMP_--
--_004_DM4PR84MB1373B22FCD2115D1A76059D0B16DADM4PR84MB1373NAMP_
Content-Type: text/plain; name="cmd.txt"
Content-Description: cmd.txt
Content-Disposition: attachment; filename="cmd.txt"; size=3926;
creation-date="Tue, 03 Jun 2025 14:24:13 GMT";
modification-date="Tue, 03 Jun 2025 14:26:29 GMT"
Content-Transfer-Encoding: base64
L2Jpbi9zaCAuL2xpYnRvb2wgIC0tdGFnPUNDICAgLS1tb2RlPWxpbmsgL3Vzci9zaGFyZS9hdXRv
bWFrZS0xLjE3L2NvbXBpbGUgY2wuZXhlIC1ub2xvZ28gIC1zdGQ6YzE3IC1aYzpfX1NURENfXyAt
dXRmLTggLU1EIC1PMiAtT2IyICAtbm8tdW5kZWZpbmVkIC12ZXJzaW9uLWluZm8gMTA6MzozIC1k
bHByZW9wZW4gbGlibHRkbC9sb2FkbGlicmFyeS5sYSAgLUwvai94ODZfNjQtbXN2Yy13aW5kb3dz
L3Vzci9saWIgLUwvai94ODZfNjQtbXN2Yy13aW5kb3dzL2xpYiAgLVdsLC1YbGlua2VyLC1yZWxl
YXNlICAtbyBsaWJsdGRsL2xpYmx0ZGwubGEgLXJwYXRoIC9qL3g4Nl82NC1tc3ZjLXdpbmRvd3Mv
dXNyL2xpYiBsaWJsdGRsL2xvYWRlcnMvbGlibHRkbF9sYS1wcmVvcGVuLmxvIGxpYmx0ZGwvbGli
bHRkbF9sYS1sdF9fYWxsb2MubG8gbGlibHRkbC9saWJsdGRsX2xhLWx0X2RsbG9hZGVyLmxvIGxp
Ymx0ZGwvbGlibHRkbF9sYS1sdF9lcnJvci5sbyBsaWJsdGRsL2xpYmx0ZGxfbGEtbHRkbC5sbyBs
aWJsdGRsL2xpYmx0ZGxfbGEtc2xpc3QubG8gbGlibHRkbC9sdF9fYXJnei5sbyBsaWJsdGRsL2x0
X19kaXJlbnQubG8gbGlibHRkbC9sdF9fc3RybC5sbyANCmxpYnRvb2w6IGxpbms6IHJtIC1mIGxp
Ymx0ZGwvLmxpYnMvbGlibHRkbC5ubSBsaWJsdGRsLy5saWJzL2xpYmx0ZGwubm1TIGxpYmx0ZGwv
LmxpYnMvbGlibHRkbC5ubVQNCmxpYnRvb2w6IGxpbms6IHJtIC1mICJsaWJsdGRsLy5saWJzL2xp
Ymx0ZGwubm1JIg0KbGlidG9vbDogbGluazogKGNkIGxpYmx0ZGwvLmxpYnMgJiYgL3Vzci9zaGFy
ZS9hdXRvbWFrZS0xLjE3L2NvbXBpbGUgY2wuZXhlIC1ub2xvZ28gLXN0ZDpjMTcgLVpjOl9fU1RE
Q19fIC11dGYtOCAtTUQgLU8yIC1PYjIgLU9pLSAtYyAgLURETExfRVhQT1JUIC1EUElDICJsaWJs
dGRsUy5jIikNCmxpYmx0ZGxTLmMNCmxpYnRvb2w6IGxpbms6IHJtIC1mICJsaWJsdGRsLy5saWJz
L2xpYmx0ZGxTLmMiICJsaWJsdGRsLy5saWJzL2xpYmx0ZGwubm0iICJsaWJsdGRsLy5saWJzL2xp
Ymx0ZGwubm1TIiAibGlibHRkbC8ubGlicy9saWJsdGRsLm5tVCIgImxpYmx0ZGwvLmxpYnMvbGli
bHRkbC5ubUkiDQpsaWJ0b29sOiBsaW5rOiBkdW1wYmluLmV4ZSAtbm9sb2dvIC1zeW1ib2xzICBs
aWJsdGRsL2xvYWRlcnMvLmxpYnMvbGlibHRkbF9sYS1wcmVvcGVuLm9iaiBsaWJsdGRsLy5saWJz
L2xpYmx0ZGxfbGEtbHRfX2FsbG9jLm9iaiBsaWJsdGRsLy5saWJzL2xpYmx0ZGxfbGEtbHRfZGxs
b2FkZXIub2JqIGxpYmx0ZGwvLmxpYnMvbGlibHRkbF9sYS1sdF9lcnJvci5vYmogbGlibHRkbC8u
bGlicy9saWJsdGRsX2xhLWx0ZGwub2JqIGxpYmx0ZGwvLmxpYnMvbGlibHRkbF9sYS1zbGlzdC5v
YmogbGlibHRkbC8ubGlicy9sdF9fYXJnei5vYmogbGlibHRkbC8ubGlicy9sdF9fZGlyZW50Lm9i
aiBsaWJsdGRsLy5saWJzL2x0X19zdHJsLm9iaiBsaWJsdGRsLy5saWJzL2xpYmx0ZGxTLm9iaiAg
fCBnYXdrICcgICAgIHtsYXN0X3NlY3Rpb249c2VjdGlvbjsgc2VjdGlvbj0kIDN9OyAgICAgL15D
T0ZGIFNZTUJPTCBUQUJMRS97Zm9yKGkgaW4gaGlkZSkgZGVsZXRlIGhpZGVbaV19OyAgICAgL1Nl
Y3Rpb24gbGVuZ3RoIC4qI3JlbG9jcy4qKHBpY2sgYW55KS97aGlkZVtsYXN0X3NlY3Rpb25dPTF9
OyAgICAgL14gKlN5bWJvbCBuYW1lICo6IC97c3BsaXQoJCAwLHNuLCI6Iik7IHNpPXN1YnN0cihz
blsyXSwyKX07ICAgICAvXiAqVHlwZSAqOiBjb2RlL3twcmludCAiVCIsc2ksc3Vic3RyKHNpLGxl
bmd0aChwcmZ4KSl9OyAgICAgL14gKlR5cGUgKjogZGF0YS97cHJpbnQgIkkiLHNpLHN1YnN0cihz
aSxsZW5ndGgocHJmeCkpfTsgICAgICQgMCF+L0V4dGVybmFsICpcfC97bmV4dH07ICAgICAvIDAr
IFVOREVGIC97bmV4dH07IC8gVU5ERUYgXChbXnxdXCkqKCkve25leHR9OyAgICAge2lmKGhpZGVb
c2VjdGlvbl0pIG5leHR9OyAgICAge2Y9IkQifTsgJCAwfi9cKFwpLipcfC97Zj0iVCJ9OyAgICAg
e3NwbGl0KCQgMCxhLC9cfHxcci8pOyBzcGxpdChhWzJdLHMpfTsgICAgIHNbMV1+L15bQD9dL3tw
cmludCBmLHNbMV0sc1sxXTsgbmV4dH07ICAgICBzWzFdfnByZngge3NwbGl0KHNbMV0sdCwiQCIp
OyBwcmludCBmLHRbMV0sc3Vic3RyKHRbMV0sbGVuZ3RoKHByZngpKX0gICAgICcgcHJmeD1eIHwg
L3Vzci9iaW4vc2VkICcvIF9fZ251X2x0by9kJyB8IC91c3IvYmluL3NlZCAtZSAnL15bQkNER1JT
XVsgXS9zLy4qWyBdXChbXiBdKlwpL1wxLERBVEEvJyB8IC91c3IvYmluL3NlZCAtZSAnL15bQUlU
V11bIF0vcy8uKlsgXS8vJyB8IHNvcnQgfCB1bmlxID4gbGlibHRkbC8ubGlicy9saWJsdGRsLmV4
cA0KbGlidG9vbDogbGluazogKGNkIGxpYmx0ZGwvLmxpYnMvbGlibHRkbC5sYXgvbG9hZGxpYnJh
cnkubGliICYmIC91c3Ivc2hhcmUvYXV0b21ha2UtMS4xNy9hci1saWIgbGliLmV4ZSB4ICIvaS9n
bnUtbGlicy13aXRoLW1zdmMvc3RhZ2UyL2J1aWxkZGlyL2xpYnRvb2wvbGlibHRkbC8ubGlicy9s
b2FkbGlicmFyeS5saWIiKQ0KbGlidG9vbDogbGluazogaWYgdGVzdCBERUYgPSAiYC91c3IvYmlu
L3NlZCAtbiAtZSAncy9eWwkgXSovLycgLWUgJy9eXCg7LipcKSokL2QnIC1lICdzL15cKEVYUE9S
VFNcfExJQlJBUllcKVwoWwkgXS4qXCkqJC9ERUYvcCcgLWUgcSBsaWJsdGRsLy5saWJzL2xpYmx0
ZGwuZXhwYCIgOyB0aGVuIGNwICJsaWJsdGRsLy5saWJzL2xpYmx0ZGwuZXhwIiAibGlibHRkbC8u
bGlicy9saWJsdGRsLTcuZGxsLmRlZiI7IGVjaG8gImxpYmx0ZGxcXC5saWJzXFxsaWJsdGRsLTcu
ZGxsLmRlZiIgPiAibGlibHRkbC8ubGlicy9saWJsdGRsLTcuZGxsLmV4cCI7IGVsc2UgL3Vzci9i
aW4vc2VkIC1lICdzL14vLWxpbmsgLUVYUE9SVDovJyA8IGxpYmx0ZGwvLmxpYnMvbGlibHRkbC5l
eHAgPiBsaWJsdGRsLy5saWJzL2xpYmx0ZGwtNy5kbGwuZXhwOyBmaQ0KbGlidG9vbDogbGluazog
IC91c3Ivc2hhcmUvYXV0b21ha2UtMS4xNy9jb21waWxlIGNsLmV4ZSAtbm9sb2dvIC1GZWxpYmx0
ZGxcXC5saWJzXFxsaWJsdGRsLTcuZGxsICBsaWJsdGRsL2xvYWRlcnMvLmxpYnMvbGlibHRkbF9s
YS1wcmVvcGVuLm9iaiBsaWJsdGRsLy5saWJzL2xpYmx0ZGxfbGEtbHRfX2FsbG9jLm9iaiBsaWJs
dGRsLy5saWJzL2xpYmx0ZGxfbGEtbHRfZGxsb2FkZXIub2JqIGxpYmx0ZGwvLmxpYnMvbGlibHRk
bF9sYS1sdF9lcnJvci5vYmogbGlibHRkbC8ubGlicy9saWJsdGRsX2xhLWx0ZGwub2JqIGxpYmx0
ZGwvLmxpYnMvbGlibHRkbF9sYS1zbGlzdC5vYmogbGlibHRkbC8ubGlicy9sdF9fYXJnei5vYmog
bGlibHRkbC8ubGlicy9sdF9fZGlyZW50Lm9iaiBsaWJsdGRsLy5saWJzL2x0X19zdHJsLm9iaiBs
aWJsdGRsLy5saWJzL2xpYmx0ZGxTLm9iaiAgbGlibHRkbC8ubGlicy9saWJsdGRsLmxheC9sb2Fk
bGlicmFyeS5saWIvbG9hZGxpYnJhcnkub2JqICAgLU8yIC1PYjIgLVhsaW5rZXIgLXJlbGVhc2Ug
ICAgLUwvai94ODZfNjQtbXN2Yy13aW5kb3dzL3Vzci9saWIgLUwvai94ODZfNjQtbXN2Yy13aW5k
b3dzL2xpYiAiQGxpYmx0ZGxcXC5saWJzXFxsaWJsdGRsLTcuZGxsLmV4cCIgLVdsLC1ETEwsLUlN
UExJQjoibGlibHRkbFxcLmxpYnNcXGxpYmx0ZGwuZGxsLmxpYiINCiAgIENyZWF0aW5nIGxpYnJh
cnkgbGlibHRkbFwubGlic1xsaWJsdGRsLmRsbC5saWIgYW5kIG9iamVjdCBsaWJsdGRsXC5saWJz
XGxpYmx0ZGwuZGxsLmV4cA0KbGlibHRkbF9sYS1sdGRsLm9iaiA6IGVycm9yIExOSzIwMTk6IHVu
cmVzb2x2ZWQgZXh0ZXJuYWwgc3ltYm9sIGx0X2x0ZGxfTFRYX3ByZWxvYWRlZF9zeW1ib2xzIHJl
ZmVyZW5jZWQgaW4gZnVuY3Rpb24gbHRfZGxpbml0DQpsaWJsdGRsXC5saWJzXGxpYmx0ZGwtNy5k
bGwgOiBmYXRhbCBlcnJvciBMTksxMTIwOiAxIHVucmVzb2x2ZWQgZXh0ZXJuYWxzDQo=
--_004_DM4PR84MB1373B22FCD2115D1A76059D0B16DADM4PR84MB1373NAMP_--