[Scons-users] MS Visual Studio Install tries to find a not-existing file
Matthieu Brucher
matthieu.brucher at gmail.com
Sun Aug 19 10:25:29 EDT 2012
Hi,
That's because the build process should return 2 files, the dll and the lib
file. The first is the one you deploy, but the second is the one that is
needed to link an application. Linux doesn't define something like that, I
suggest you read the MSDN chapter on shared libraries and exported
functions/classes/methods/...
Matthieu
2012/8/19 Philipp Kraus <philipp.kraus at flashpixx.de>
> **
>
> Hi Matthieu,
>
>
> thanks for your answer, but I don't understand the answer.
>
> I call scons in the Visual Studio CommandLine and build a shared library
> with env.SharedLibrary
>
> The result of this call is passed to env.Install and if the scons script
> runs, the error is shown after building.
>
>
> I found in my build directory the *.dll file, so I think the
> env.SharedLibrary builder works. But the "copy-process"
>
> breaks with the error, because the env.Install call try to copy two files
> *.dll and *.lib, but the *.lib file does not
>
> exist. My problem is, to install / copy the builded library into my
> installation directory.
>
>
> Phil
>
>
> On 2012-08-19 14:53:24 +0200, Matthieu Brucher said:
>
>
> Hi Philip,
>
>
> The .lib file is not only the name of the static library, for a shared
> library it contains everything needed to link against the dll. It is built
> only if you export something. If you don't export functions, it means that
> you won't be able to link against it, only load it with something like
> "LoadLibrary".
>
>
> Cheers,
>
>
> Matthieu
>
>
> 2012/8/19 Kraus Philipp <philipp.kraus at flashpixx.de>
>
> Hello,
>
>
> I compile under MS Visual Studio 2010 Express the LUA library.
>
>
> lib = envlua.Library(target="lua", source=libsrc)
>
> envlua.Install( "targetpath", lib )
>
>
> In this case, VS builds a *.lib file and installs it within the target
> directory.
>
> So if I switch to a shared library:
>
>
> lib = envlua.SharedLibrary(target="lua", source=libsrc)
>
> envlua.Install( "targetpath", lib )
>
>
> The Install command shows:
>
> scons: *** [library\build\LUA\5.2.1\lib\lua.lib] library\lua.lib: No such
> file or directory
>
>
> It is a correct error message, but no lua.lib is build (static build), so
> the Install command
>
> searches the static and the dynamic library. It seems, that the Install
> command searches
>
> on dynamic build also a static library.
>
>
> I would like to build only the DLL not the static version and would like
> to install the file
>
> in the target place
>
>
> How can I solve this problem?
>
>
> Thanks
>
>
> Phil
>
>
> _______________________________________________
>
> Scons-users mailing list
>
> Scons-users at scons.org
>
> http://four.pairlist.net/mailman/listinfo/scons-users
>
>
>
>
> --
>
> Information System Engineer, Ph.D.
>
> Blog: http://matt.eifelle.com
>
> LinkedIn: http://www.linkedin.com/in/matthieubrucher
>
> Music band: http://liliejay.com/
>
>
> _______________________________________________
>
> Scons-users mailing list
>
> Scons-users at scons.org
>
> http://four.pairlist.net/mailman/listinfo/scons-users
>
>
>
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> http://four.pairlist.net/mailman/listinfo/scons-users
>
>
--
Information System Engineer, Ph.D.
Blog: http://matt.eifelle.com
LinkedIn: http://www.linkedin.com/in/matthieubrucher
Music band: http://liliejay.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://four.pairlist.net/pipermail/scons-users/attachments/20120819/c4aeddf9/attachment.htm>
More information about the Scons-users
mailing list