EDN Admin
Well-known member
Hello Folks:
Developing on Windows 7 Ultimate, VS 2010 Pro.
Im working on two applications. Each has three executable modules, install, the application, and uninstall. They refer to a bunch of static libraries Ive written.
These were converted from VS 2008 Pro a month ago.
One of these modules cant link, it gets a bunch of these errors:
error LNK2001: unresolved external symbol
The other 5 modules compile and link without this error.
The link errors are generated on references to functions and global constants in static libraries Ive added with File - Add - Existing Project.
I can select these libraries in the Solution Explorer, and I can open a file and look at a function or global constant that the linker cant find. Yes, the library is checked in Project Dependencies.
This is sufficient for 5 of the executable modules, why not this one?
If I explicitly add each librarys .lib to the projects properties - Linker - Input, and each .libs directory to the Linker - General, window the library will link. For release, debug, and perhaps other configurations.
Complicating this is that these libraries havent had .lib files generated in their <lib_name>debug and <lib_name>release directories, even though Ive run "Rebuild Solution" for both debug and release versions of the application.
So I have to open each library and run debug and release builds. This does build the .lib files.
I have a lot of libraries, and this is very time consuming. Like everybody else, time is tight for me and Id rather put effort into cutting code.
I have recently moved to smaller and more targeted libraries, which results in a lot of libraries and spending a lot of time rebuilding and specifying those libraries for this project.
The other five modules, apparently, can be built from the .obj files in the <lib_name><lib_name>debug and <lib_name><lib_name>release directories, by File - Add - Existing Project and specifying <lib_name>.
Can I do a Rebuild All that will build each librarys <lib_name>debug and <lib_name>release directories and populate these with the librarys .lib files? This will save me stepping through each library build manually.
Is there some method to make the install module use the same resources the other modules use when they build?
Is there a danger that the five modules that currently link might suddenly stop linking, and require that I explicitly identify each librarys .lib file and directory?
Thanks<br/>
Larry
View the full article
Developing on Windows 7 Ultimate, VS 2010 Pro.
Im working on two applications. Each has three executable modules, install, the application, and uninstall. They refer to a bunch of static libraries Ive written.
These were converted from VS 2008 Pro a month ago.
One of these modules cant link, it gets a bunch of these errors:
error LNK2001: unresolved external symbol
The other 5 modules compile and link without this error.
The link errors are generated on references to functions and global constants in static libraries Ive added with File - Add - Existing Project.
I can select these libraries in the Solution Explorer, and I can open a file and look at a function or global constant that the linker cant find. Yes, the library is checked in Project Dependencies.
This is sufficient for 5 of the executable modules, why not this one?
If I explicitly add each librarys .lib to the projects properties - Linker - Input, and each .libs directory to the Linker - General, window the library will link. For release, debug, and perhaps other configurations.
Complicating this is that these libraries havent had .lib files generated in their <lib_name>debug and <lib_name>release directories, even though Ive run "Rebuild Solution" for both debug and release versions of the application.
So I have to open each library and run debug and release builds. This does build the .lib files.
I have a lot of libraries, and this is very time consuming. Like everybody else, time is tight for me and Id rather put effort into cutting code.
I have recently moved to smaller and more targeted libraries, which results in a lot of libraries and spending a lot of time rebuilding and specifying those libraries for this project.
The other five modules, apparently, can be built from the .obj files in the <lib_name><lib_name>debug and <lib_name><lib_name>release directories, by File - Add - Existing Project and specifying <lib_name>.
Can I do a Rebuild All that will build each librarys <lib_name>debug and <lib_name>release directories and populate these with the librarys .lib files? This will save me stepping through each library build manually.
Is there some method to make the install module use the same resources the other modules use when they build?
Is there a danger that the five modules that currently link might suddenly stop linking, and require that I explicitly identify each librarys .lib file and directory?
Thanks<br/>
Larry
View the full article