Hi,

On 05.06.2008, at 10:18, Christian Ehrlicher wrote:

Von: Martin Apel
Hi all,

I am trying to port a project using CMake 2.6 from Linux to Windows. The project build works without problems under Linux. However when trying to
build the project inside Visual Studio 8 after having generated the
project files using CMake, no import libraries are generated.
The library build step is specified by using
 ADD_LIBRARY(Base SHARED EXCLUDE_FROM_ALL ${LocalSrc})
which I would expect to generate rules to create the DLL AND the
corresponding import library. The DLL is built, but the import library is missing. Looking at the build log file in Visual Studio, there is no
call to lib.exe, which I would expect.
I am not a Windows specialist, so I may be missing something simple
completely.

Any help would be appreciated.

cmake itself does not do anything to create an import lib. This is all done by the linker. If it finds symbols which are exported, it automatically creates the import lib.
So it looks like you don't export any symbols.

Here is a link:

http://msdn.microsoft.com/en-us/library/a90k134d(VS.80).aspx

while gcc exports everything by default, visualc++ needs __declspec(dllexport) keyword. Or you need a .def file, but this is also explained in the link above.

Werner
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to