Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

Douglas E. Engert
Your choice to use the libtool libltdl on Windows bring up a lot of
issues making building, installing, using and selling OpenSC much more
difficult.

  o Another package is now required, libtool.

  o The libtool-1.5.18 will not build with MS VC++. Thus another
    compiler is now needed or one has to use a precompiled version.

  o The libltdl.lib requires another DLL, libltdl3.dll.

  o It appears that libltdl as distributed in the precompiled
    libtool-1.5.8-lib requires another package libgw32c  with its
    libgw32.c.lib, and its DLL.

  o This appears to require some gcc libs too. (this is where I stopped.)

Thus the OpenSC is now becoming dependent on too many other
packages.  At least 3, and three more DLLs. This maybe OK for a UNIX
system, but these multiple dependencies will make OpenSC much less
likely to be used on Windows. Its hard enough to get Windows administrators
to install open source software on Windows. But if there are even more
dependencies, this will be almost impossible.

Please consider, at least for Windows, going back to the previous
method of using the scdl.c.  There are no additional packages, no
extra DLLs, and it is substantially smaller too!

If you really need libltdl on some systems, can you call it from scdl.c
and then only on those systems that need it?

--

  Douglas E. Engert  <[hidden email]>
  Argonne National Laboratory
  9700 South Cass Avenue
  Argonne, Illinois  60439
  (630) 252-5444
_______________________________________________
opensc-devel mailing list
[hidden email]
http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

Martin Paljak
It's not that difficult.. I guess the windows makefile tells where to
get the precompiled version of libltdl for windows and it works just
fine.

anyway, we have to ocus on providing prebuilt binaries for windows so
it's not that much trouble to tell all developers what has to be done
in order to build opensc on windows.

FYI - libltdl makes 'problems' on darwin too. check  the ticket at
https://www.opensc.org/opensc/ticket/48

I have not had any issues with binary distributions under windows
(except i forgot to add the msvcrt71.dll file and that's another story

My 2 cents...
.


On 10/12/05, Douglas E. Engert <[hidden email]> wrote:

> Your choice to use the libtool libltdl on Windows bring up a lot of
> issues making building, installing, using and selling OpenSC much more
> difficult.
>
>   o Another package is now required, libtool.
>
>   o The libtool-1.5.18 will not build with MS VC++. Thus another
>     compiler is now needed or one has to use a precompiled version.
>
>   o The libltdl.lib requires another DLL, libltdl3.dll.
>
>   o It appears that libltdl as distributed in the precompiled
>     libtool-1.5.8-lib requires another package libgw32c  with its
>     libgw32.c.lib, and its DLL.
>
>   o This appears to require some gcc libs too. (this is where I stopped.)
>
> Thus the OpenSC is now becoming dependent on too many other
> packages.  At least 3, and three more DLLs. This maybe OK for a UNIX
> system, but these multiple dependencies will make OpenSC much less
> likely to be used on Windows. Its hard enough to get Windows administrators
> to install open source software on Windows. But if there are even more
> dependencies, this will be almost impossible.
>
> Please consider, at least for Windows, going back to the previous
> method of using the scdl.c.  There are no additional packages, no
> extra DLLs, and it is substantially smaller too!
>
> If you really need libltdl on some systems, can you call it from scdl.c
> and then only on those systems that need it?
>
> --
>
>   Douglas E. Engert  <[hidden email]>
>   Argonne National Laboratory
>   9700 South Cass Avenue
>   Argonne, Illinois  60439
>   (630) 252-5444
> _______________________________________________
> opensc-devel mailing list
> [hidden email]
> http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
>


--
Martin Paljak
[hidden email]
http://martin.paljak.pri.ee/
+372.5156495 - phone
_______________________________________________
opensc-devel mailing list
[hidden email]
http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

Douglas E. Engert


Martin Paljak wrote:
> It's not that difficult.. I guess the windows makefile tells where to
> get the precompiled version of libltdl for windows and it works just
> fine.
>

It may be that your machine has all the libs installed, or you built
the libtool yourself, have gw32c and gcclib (See below for the failures
I was getting.)


> anyway, we have to ocus on providing prebuilt binaries for windows so
> it's not that much trouble to tell all developers what has to be done
> in order to build opensc on windows.
>

This is not just a developers issue. Is an acceptance issue for main stream
windows admins too. The more "other" packages you require, the more complex
this is going to get, and the more trouble you will have in the long run,
especially on Windows.


> FYI - libltdl makes 'problems' on darwin too. check  the ticket at
> https://www.opensc.org/opensc/ticket/48
>
> I have not had any issues with binary distributions under windows
> (except i forgot to add the msvcrt71.dll file and that's another story
>

As I said, the more dependencies on other packages will cause more
problems in the future...

The scdl.c is much simpiler, and appears to have worked well on Windows.
Why was ltdl introduced? Was to solve problems for some other OS? But
it looks like it is causing additional problems where there was no
problem before.



> My 2 cents...
> .
>

After downloading libtool-1.5.8-lib and changing the Make.rules.mak It gets this far.

         link /DEBUG /NOLOGO /INCREMENTAL:NO /MACHINE:IX86 /pdb:pkcs11-tool.pdb /
out:pkcs11-tool.exe pkcs11-tool.obj util.obj  ..\common\common.lib ..\scconf\scc
onf.lib ..\libopensc\opensc.lib  ..\pkcs15init\pkcs15init.lib ..\pkcs11\libpkcs1
1.lib  ..\..\win32\version.res D:\build\openssl-0.9.7g\src\\out32dll\libeay32.li
b d:\build\libtool-1.5.8-lib\lib\libltdl.lib gdi32.lib
libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _readdir64
libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _argz_stringif
y
libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _closedir
libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _opendir
libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _argz_insert
libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _argz_create_s
ep
libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _dlsym
libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _dlclose
libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _dlerror
libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _dlopen
pkcs11-tool.exe : fatal error LNK1120: 10 unresolved externals

These look like they are in gw32c, so I add in that package, and get this:

         link /DEBUG /NOLOGO /INCREMENTAL:NO /MACHINE:IX86 /pdb:pkcs11-tool.pdb /
out:pkcs11-tool.exe pkcs11-tool.obj util.obj  ..\common\common.lib ..\scconf\scc
onf.lib ..\libopensc\opensc.lib  ..\pkcs15init\pkcs15init.lib ..\pkcs11\libpkcs1
1.lib  ..\..\win32\version.res D:\build\openssl-0.9.7g\src\\out32dll\libeay32.li
b d:\build\libtool-1.5.8-lib\lib\libltdl.lib  d:\opt\GnuWin32\lib\libgw32c.a gdi
32.lib
libgw32c.a(hxstat64.o) : error LNK2001: unresolved external symbol ___udivdi3
libgw32c.a(statfsx64.o) : error LNK2001: unresolved external symbol ___udivdi3
libgw32c.a(tempname.o) : error LNK2001: unresolved external symbol ___udivdi3
libgw32c.a(
) : error LNK2001: unresolved external symbol ___udivdi3
libgw32c.a(tempname.o) : error LNK2001: unresolved external symbol ___umoddi3
libgw32c.a(
) : error LNK2001: unresolved external symbol ___umoddi3
libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol _OleInitializ
e@4
libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol _CoCreateInst
ance@20
libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol _CoUninitiali
ze@0
libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol __alloca
pkcs11-tool.exe : fatal error LNK1120: 6 unresolved externals

These look like they are in gcclib and some windows libs too!
I am using VC++ This is where I stopped.


>
> On 10/12/05, Douglas E. Engert <[hidden email]> wrote:
>
>>Your choice to use the libtool libltdl on Windows bring up a lot of
>>issues making building, installing, using and selling OpenSC much more
>>difficult.
>>
>>  o Another package is now required, libtool.
>>
>>  o The libtool-1.5.18 will not build with MS VC++. Thus another
>>    compiler is now needed or one has to use a precompiled version.
>>
>>  o The libltdl.lib requires another DLL, libltdl3.dll.
>>
>>  o It appears that libltdl as distributed in the precompiled
>>    libtool-1.5.8-lib requires another package libgw32c  with its
>>    libgw32.c.lib, and its DLL.
>>
>>  o This appears to require some gcc libs too. (this is where I stopped.)
>>
>>Thus the OpenSC is now becoming dependent on too many other
>>packages.  At least 3, and three more DLLs. This maybe OK for a UNIX
>>system, but these multiple dependencies will make OpenSC much less
>>likely to be used on Windows. Its hard enough to get Windows administrators
>>to install open source software on Windows. But if there are even more
>>dependencies, this will be almost impossible.
>>
>>Please consider, at least for Windows, going back to the previous
>>method of using the scdl.c.  There are no additional packages, no
>>extra DLLs, and it is substantially smaller too!
>>
>>If you really need libltdl on some systems, can you call it from scdl.c
>>and then only on those systems that need it?
>>
>>--
>>
>>  Douglas E. Engert  <[hidden email]>
>>  Argonne National Laboratory
>>  9700 South Cass Avenue
>>  Argonne, Illinois  60439
>>  (630) 252-5444
>>_______________________________________________
>>opensc-devel mailing list
>>[hidden email]
>>http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
>>
>
>
>
> --
> Martin Paljak
> [hidden email]
> http://martin.paljak.pri.ee/
> +372.5156495 - phone
>
>

--

  Douglas E. Engert  <[hidden email]>
  Argonne National Laboratory
  9700 South Cass Avenue
  Argonne, Illinois  60439
  (630) 252-5444
_______________________________________________
opensc-devel mailing list
[hidden email]
http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

Andreas Jellinghaus-2
In reply to this post by Douglas E. Engert
Hi Douglas,

please see the scb project for building opensc on windows.

True, use the libtool package from gnuwin32 and simply
link with it and bundle the lib.

But it does not require any other library. I installed scb on
fresh win xp sp2 installations and no library was missing,
still opensc and tools and firefox work.

I agree it is not good to depend on more and more software.
But I dislike the idea of
 - using code that noone knows or maintains (scdl)
 - copying some code to several projects, because they all need
   that functionality (openct, opensc, libp11, pam_pkcs11)

> If you really need libltdl on some systems, can you call it from scdl.c
> and then only on those systems that need it?

the whole point of scdl was to no longer copy the same code around a number
of times and instead use something that is maintained and with people around
who now the code.

if someone figures our how to build a static version and link it staticaly
on windows, I could use that option. also improvements concerning the
installer to install it conditionaly only etc. are welcome.

Regards, Andreas
_______________________________________________
opensc-devel mailing list
[hidden email]
http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

Douglas E. Engert


Andreas Jellinghaus wrote:

> Hi Douglas,
>
> please see the scb project for building opensc on windows.

OK, I will look closer. I was following the comments
in Make.rules.mak

>
> True, use the libtool package from gnuwin32 and simply
> link with it and bundle the lib.

Thats what I though I did, got libtool-1.5.8-lib
(which is prebuilt) and added the lines to Make.rules.mak

>
> But it does not require any other library. I installed scb on
> fresh win xp sp2 installations and no library was missing,
> still opensc and tools and firefox work.

Now if the prebuilt libtool-1.5.8-lib is compiled with different
options then you use, that might explain it. But it will not compile
with VC++. Google says others have tried.
(I might try using the version you have from the SCB.)

>
> I agree it is not good to depend on more and more software.
> But I dislike the idea of
>  - using code that noone knows or maintains (scdl)

Really? scdl is not from the OpenSC project?

>  - copying some code to several projects, because they all need
>    that functionality (openct, opensc, libp11, pam_pkcs11)
>
>
>>If you really need libltdl on some systems, can you call it from scdl.c
>>and then only on those systems that need it?
>
>
> the whole point of scdl was to no longer copy the same code around a number
> of times and instead use something that is maintained and with people around
> who now the code.

You mean the point of libltld?

>
> if someone figures our how to build a static version and link it staticaly
> on windows, I could use that option. also improvements concerning the
> installer to install it conditionaly only etc. are welcome.
>
> Regards, Andreas
> _______________________________________________
> opensc-devel mailing list
> [hidden email]
> http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
>
>

--

  Douglas E. Engert  <[hidden email]>
  Argonne National Laboratory
  9700 South Cass Avenue
  Argonne, Illinois  60439
  (630) 252-5444
_______________________________________________
opensc-devel mailing list
[hidden email]
http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

Andreas Jellinghaus-2
On Wednesday 12 October 2005 23:00, Douglas E. Engert wrote:
> > I agree it is not good to depend on more and more software.
> > But I dislike the idea of
> >  - using code that noone knows or maintains (scdl)
>
> Really? scdl is not from the OpenSC project?

It is, but the first four people who designed opensc and still
wrote large parts of todays opensc all left around 1-3 years
ago. lots of old code and designs noone has touched in a while.

> You mean the point of libltld?

oops, yes.

Andreas
_______________________________________________
opensc-devel mailing list
[hidden email]
http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

Nils Larsch
In reply to this post by Andreas Jellinghaus-2
Andreas Jellinghaus wrote:

> Hi Douglas,
>
> please see the scb project for building opensc on windows.
>
> True, use the libtool package from gnuwin32 and simply
> link with it and bundle the lib.
>
> But it does not require any other library. I installed scb on
> fresh win xp sp2 installations and no library was missing,
> still opensc and tools and firefox work.
>
> I agree it is not good to depend on more and more software.
> But I dislike the idea of
>  - using code that noone knows or maintains (scdl)

at least the dlfcn code was simple and sufficient

>  - copying some code to several projects, because they all need
>    that functionality (openct, opensc, libp11, pam_pkcs11)

well I don't mind copying some simple code in different projects
(everything fits in one c file) to keep the number of dependences
low but I thought the primary reason for libltdl was because of
it's support for "strange" platforms (like macos or windows ;-)
however if ltdl causes problems on these platforms it is rather
unfortunate (and requiring a libtool library if someone wants
to build opensc on windows is, I guess, somewhat "uncommon" ...).

Cheers,
Nils
_______________________________________________
opensc-devel mailing list
[hidden email]
http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

Douglas E. Engert
In reply to this post by Douglas E. Engert
More on this problem.

  I read the Make.rules.mak which say to go off to
http://GnuWin32.sourceforge.net/packages/libtool.htm
and get the libtool-1.5.8 package. So I did and the prebuilt
version which has a libltld.lib which does not link.

But if I use the http://www.opensc.org/scb/browser/trunk/GnuWin32.zip
which has a libltld.lib it  links and and appears to run.

So for now, I can use your version.


  Douglas E. Engert wrote:

>
>
> Martin Paljak wrote:
>
>> It's not that difficult.. I guess the windows makefile tells where to
>> get the precompiled version of libltdl for windows and it works just
>> fine.
>>
>
> It may be that your machine has all the libs installed, or you built
> the libtool yourself, have gw32c and gcclib (See below for the failures
> I was getting.)
>
>
>> anyway, we have to ocus on providing prebuilt binaries for windows so
>> it's not that much trouble to tell all developers what has to be done
>> in order to build opensc on windows.
>>
>
> This is not just a developers issue. Is an acceptance issue for main stream
> windows admins too. The more "other" packages you require, the more complex
> this is going to get, and the more trouble you will have in the long run,
> especially on Windows.
>
>
>> FYI - libltdl makes 'problems' on darwin too. check  the ticket at
>> https://www.opensc.org/opensc/ticket/48
>>
>> I have not had any issues with binary distributions under windows
>> (except i forgot to add the msvcrt71.dll file and that's another story
>>
>
> As I said, the more dependencies on other packages will cause more
> problems in the future...
>
> The scdl.c is much simpiler, and appears to have worked well on Windows.
> Why was ltdl introduced? Was to solve problems for some other OS? But
> it looks like it is causing additional problems where there was no
> problem before.
>
>
>
>> My 2 cents...
>> .
>>
>
> After downloading libtool-1.5.8-lib and changing the Make.rules.mak It
> gets this far.
>
>         link /DEBUG /NOLOGO /INCREMENTAL:NO /MACHINE:IX86
> /pdb:pkcs11-tool.pdb /
> out:pkcs11-tool.exe pkcs11-tool.obj util.obj  ..\common\common.lib
> ..\scconf\scc
> onf.lib ..\libopensc\opensc.lib  ..\pkcs15init\pkcs15init.lib
> ..\pkcs11\libpkcs1
> 1.lib  ..\..\win32\version.res
> D:\build\openssl-0.9.7g\src\\out32dll\libeay32.li
> b d:\build\libtool-1.5.8-lib\lib\libltdl.lib gdi32.lib
> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
> _readdir64
> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
> _argz_stringif
> y
> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _closedir
> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _opendir
> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
> _argz_insert
> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
> _argz_create_s
> ep
> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _dlsym
> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _dlclose
> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _dlerror
> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _dlopen
> pkcs11-tool.exe : fatal error LNK1120: 10 unresolved externals
>
> These look like they are in gw32c, so I add in that package, and get this:
>
>         link /DEBUG /NOLOGO /INCREMENTAL:NO /MACHINE:IX86
> /pdb:pkcs11-tool.pdb /
> out:pkcs11-tool.exe pkcs11-tool.obj util.obj  ..\common\common.lib
> ..\scconf\scc
> onf.lib ..\libopensc\opensc.lib  ..\pkcs15init\pkcs15init.lib
> ..\pkcs11\libpkcs1
> 1.lib  ..\..\win32\version.res
> D:\build\openssl-0.9.7g\src\\out32dll\libeay32.li
> b d:\build\libtool-1.5.8-lib\lib\libltdl.lib  
> d:\opt\GnuWin32\lib\libgw32c.a gdi
> 32.lib
> libgw32c.a(hxstat64.o) : error LNK2001: unresolved external symbol
> ___udivdi3
> libgw32c.a(statfsx64.o) : error LNK2001: unresolved external symbol
> ___udivdi3
> libgw32c.a(tempname.o) : error LNK2001: unresolved external symbol
> ___udivdi3
> libgw32c.a(
> ) : error LNK2001: unresolved external symbol ___udivdi3
> libgw32c.a(tempname.o) : error LNK2001: unresolved external symbol
> ___umoddi3
> libgw32c.a(
> ) : error LNK2001: unresolved external symbol ___umoddi3
> libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol
> _OleInitializ
> e@4
> libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol
> _CoCreateInst
> ance@20
> libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol
> _CoUninitiali
> ze@0
> libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol __alloca
> pkcs11-tool.exe : fatal error LNK1120: 6 unresolved externals
>
> These look like they are in gcclib and some windows libs too!
> I am using VC++ This is where I stopped.
>
>
>>
>> On 10/12/05, Douglas E. Engert <[hidden email]> wrote:
>>
>>> Your choice to use the libtool libltdl on Windows bring up a lot of
>>> issues making building, installing, using and selling OpenSC much more
>>> difficult.
>>>
>>>  o Another package is now required, libtool.
>>>
>>>  o The libtool-1.5.18 will not build with MS VC++. Thus another
>>>    compiler is now needed or one has to use a precompiled version.
>>>
>>>  o The libltdl.lib requires another DLL, libltdl3.dll.
>>>
>>>  o It appears that libltdl as distributed in the precompiled
>>>    libtool-1.5.8-lib requires another package libgw32c  with its
>>>    libgw32.c.lib, and its DLL.
>>>
>>>  o This appears to require some gcc libs too. (this is where I stopped.)
>>>
>>> Thus the OpenSC is now becoming dependent on too many other
>>> packages.  At least 3, and three more DLLs. This maybe OK for a UNIX
>>> system, but these multiple dependencies will make OpenSC much less
>>> likely to be used on Windows. Its hard enough to get Windows
>>> administrators
>>> to install open source software on Windows. But if there are even more
>>> dependencies, this will be almost impossible.
>>>
>>> Please consider, at least for Windows, going back to the previous
>>> method of using the scdl.c.  There are no additional packages, no
>>> extra DLLs, and it is substantially smaller too!
>>>
>>> If you really need libltdl on some systems, can you call it from scdl.c
>>> and then only on those systems that need it?
>>>
>>> --
>>>
>>>  Douglas E. Engert  <[hidden email]>
>>>  Argonne National Laboratory
>>>  9700 South Cass Avenue
>>>  Argonne, Illinois  60439
>>>  (630) 252-5444
>>> _______________________________________________
>>> opensc-devel mailing list
>>> [hidden email]
>>> http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
>>>
>>
>>
>>
>> --
>> Martin Paljak
>> [hidden email]
>> http://martin.paljak.pri.ee/
>> +372.5156495 - phone
>>
>>
>

--

  Douglas E. Engert  <[hidden email]>
  Argonne National Laboratory
  9700 South Cass Avenue
  Argonne, Illinois  60439
  (630) 252-5444
_______________________________________________
opensc-devel mailing list
[hidden email]
http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

Andreas Jellinghaus-2
On Thursday 13 October 2005 00:25, Douglas E. Engert wrote:

> More on this problem.
>
>   I read the Make.rules.mak which say to go off to
> http://GnuWin32.sourceforge.net/packages/libtool.htm
> and get the libtool-1.5.8 package. So I did and the prebuilt
> version which has a libltld.lib which does not link.
>
> But if I use the http://www.opensc.org/scb/browser/trunk/GnuWin32.zip
> which has a libltld.lib it  links and and appears to run.
>
> So for now, I can use your version.

this is strange. All I did was download, run the installer, and create
a zip from the result (so I can put it on machines without regestry
changed etc.).

Andreas
_______________________________________________
opensc-devel mailing list
[hidden email]
http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems building opensc-0.10.0-beta2-rc1 on Windows with new llibltdl

Stef Hoeben-2
In reply to this post by Douglas E. Engert
Hi Douglas,

the things I put in Make.rules.mak works fine for me, strange...

I'll send you the lib I use (from
http://GnuWin32.sourceforge.net/packages/libtool.htm),
could you try if that one works, just to avoid the possibility of a
different lib?

Cheers,
Stef

Douglas E. Engert wrote:

> More on this problem.
>
>  I read the Make.rules.mak which say to go off to
> http://GnuWin32.sourceforge.net/packages/libtool.htm
> and get the libtool-1.5.8 package. So I did and the prebuilt
> version which has a libltld.lib which does not link.
>
> But if I use the http://www.opensc.org/scb/browser/trunk/GnuWin32.zip
> which has a libltld.lib it  links and and appears to run.
>
> So for now, I can use your version.
>
>
>  Douglas E. Engert wrote:
>
>>
>>
>> Martin Paljak wrote:
>>
>>> It's not that difficult.. I guess the windows makefile tells where to
>>> get the precompiled version of libltdl for windows and it works just
>>> fine.
>>>
>>
>> It may be that your machine has all the libs installed, or you built
>> the libtool yourself, have gw32c and gcclib (See below for the failures
>> I was getting.)
>>
>>
>>> anyway, we have to ocus on providing prebuilt binaries for windows so
>>> it's not that much trouble to tell all developers what has to be done
>>> in order to build opensc on windows.
>>>
>>
>> This is not just a developers issue. Is an acceptance issue for main
>> stream
>> windows admins too. The more "other" packages you require, the more
>> complex
>> this is going to get, and the more trouble you will have in the long
>> run,
>> especially on Windows.
>>
>>
>>> FYI - libltdl makes 'problems' on darwin too. check  the ticket at
>>> https://www.opensc.org/opensc/ticket/48
>>>
>>> I have not had any issues with binary distributions under windows
>>> (except i forgot to add the msvcrt71.dll file and that's another story
>>>
>>
>> As I said, the more dependencies on other packages will cause more
>> problems in the future...
>>
>> The scdl.c is much simpiler, and appears to have worked well on Windows.
>> Why was ltdl introduced? Was to solve problems for some other OS? But
>> it looks like it is causing additional problems where there was no
>> problem before.
>>
>>
>>
>>> My 2 cents...
>>> .
>>>
>>
>> After downloading libtool-1.5.8-lib and changing the Make.rules.mak
>> It gets this far.
>>
>>         link /DEBUG /NOLOGO /INCREMENTAL:NO /MACHINE:IX86
>> /pdb:pkcs11-tool.pdb /
>> out:pkcs11-tool.exe pkcs11-tool.obj util.obj  ..\common\common.lib
>> ..\scconf\scc
>> onf.lib ..\libopensc\opensc.lib  ..\pkcs15init\pkcs15init.lib
>> ..\pkcs11\libpkcs1
>> 1.lib  ..\..\win32\version.res
>> D:\build\openssl-0.9.7g\src\\out32dll\libeay32.li
>> b d:\build\libtool-1.5.8-lib\lib\libltdl.lib gdi32.lib
>> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
>> _readdir64
>> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
>> _argz_stringif
>> y
>> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
>> _closedir
>> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
>> _opendir
>> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
>> _argz_insert
>> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
>> _argz_create_s
>> ep
>> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol _dlsym
>> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
>> _dlclose
>> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
>> _dlerror
>> libpkcs11.lib(ltdl.o) : error LNK2001: unresolved external symbol
>> _dlopen
>> pkcs11-tool.exe : fatal error LNK1120: 10 unresolved externals
>>
>> These look like they are in gw32c, so I add in that package, and get
>> this:
>>
>>         link /DEBUG /NOLOGO /INCREMENTAL:NO /MACHINE:IX86
>> /pdb:pkcs11-tool.pdb /
>> out:pkcs11-tool.exe pkcs11-tool.obj util.obj  ..\common\common.lib
>> ..\scconf\scc
>> onf.lib ..\libopensc\opensc.lib  ..\pkcs15init\pkcs15init.lib
>> ..\pkcs11\libpkcs1
>> 1.lib  ..\..\win32\version.res
>> D:\build\openssl-0.9.7g\src\\out32dll\libeay32.li
>> b d:\build\libtool-1.5.8-lib\lib\libltdl.lib  
>> d:\opt\GnuWin32\lib\libgw32c.a gdi
>> 32.lib
>> libgw32c.a(hxstat64.o) : error LNK2001: unresolved external symbol
>> ___udivdi3
>> libgw32c.a(statfsx64.o) : error LNK2001: unresolved external symbol
>> ___udivdi3
>> libgw32c.a(tempname.o) : error LNK2001: unresolved external symbol
>> ___udivdi3
>> libgw32c.a(
>> ) : error LNK2001: unresolved external symbol ___udivdi3
>> libgw32c.a(tempname.o) : error LNK2001: unresolved external symbol
>> ___umoddi3
>> libgw32c.a(
>> ) : error LNK2001: unresolved external symbol ___umoddi3
>> libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol
>> _OleInitializ
>> e@4
>> libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol
>> _CoCreateInst
>> ance@20
>> libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol
>> _CoUninitiali
>> ze@0
>> libgw32c.a(readlink.o) : error LNK2001: unresolved external symbol
>> __alloca
>> pkcs11-tool.exe : fatal error LNK1120: 6 unresolved externals
>>
>> These look like they are in gcclib and some windows libs too!
>> I am using VC++ This is where I stopped.
>>
>>
>>>
>>> On 10/12/05, Douglas E. Engert <[hidden email]> wrote:
>>>
>>>> Your choice to use the libtool libltdl on Windows bring up a lot of
>>>> issues making building, installing, using and selling OpenSC much more
>>>> difficult.
>>>>
>>>>  o Another package is now required, libtool.
>>>>
>>>>  o The libtool-1.5.18 will not build with MS VC++. Thus another
>>>>    compiler is now needed or one has to use a precompiled version.
>>>>
>>>>  o The libltdl.lib requires another DLL, libltdl3.dll.
>>>>
>>>>  o It appears that libltdl as distributed in the precompiled
>>>>    libtool-1.5.8-lib requires another package libgw32c  with its
>>>>    libgw32.c.lib, and its DLL.
>>>>
>>>>  o This appears to require some gcc libs too. (this is where I
>>>> stopped.)
>>>>
>>>> Thus the OpenSC is now becoming dependent on too many other
>>>> packages.  At least 3, and three more DLLs. This maybe OK for a UNIX
>>>> system, but these multiple dependencies will make OpenSC much less
>>>> likely to be used on Windows. Its hard enough to get Windows
>>>> administrators
>>>> to install open source software on Windows. But if there are even more
>>>> dependencies, this will be almost impossible.
>>>>
>>>> Please consider, at least for Windows, going back to the previous
>>>> method of using the scdl.c.  There are no additional packages, no
>>>> extra DLLs, and it is substantially smaller too!
>>>>
>>>> If you really need libltdl on some systems, can you call it from
>>>> scdl.c
>>>> and then only on those systems that need it?
>>>>
>>>> --
>>>>
>>>>  Douglas E. Engert  <[hidden email]>
>>>>  Argonne National Laboratory
>>>>  9700 South Cass Avenue
>>>>  Argonne, Illinois  60439
>>>>  (630) 252-5444
>>>> _______________________________________________
>>>> opensc-devel mailing list
>>>> [hidden email]
>>>> http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel
>>>>
>>>
>>>
>>>
>>> --
>>> Martin Paljak
>>> [hidden email]
>>> http://martin.paljak.pri.ee/
>>> +372.5156495 - phone
>>>
>>>
>>
>

_______________________________________________
opensc-devel mailing list
[hidden email]
http://www.opensc.org/cgi-bin/mailman/listinfo/opensc-devel