In visual studio how to include all .libs in a folder

徘徊边缘 提交于 2019-11-29 12:05:06

问题


I am trying to build a project with another project. There are a lot of libs in there and I am not sure where the required unreferenced symbols are present.

Is there a way I can include all the .lib files while compiling?

I have given the lib directory as an additional input to the linker, yet it asks for individual .lib files to be included. Is there an option to say include all .libs in this folder?


回答1:


bigD's answer is right.

The place you would actually do this, in VS 2012 at least, is by right-clicking on the project, then going:

Properties > Configuration Properties > Linker > Command Line > Additional Options

In that box, you would just type:

"[libFolder]\*.lib"

You can have multiple locations by separating locations with a space, like so:

"[libFolder1]\*.lib" "[libFolder2]\*.lib"



回答2:


You should just be able to write "someFolder/*.lib" where you have to specify the libraries to link against




回答3:


AFAIK there is no way to do that: your options are to

  • include each lib in the linker->Input->Additional Dependencies

  • include libs via pragma directive in the source file i.e. add

pragma comment(lib, "some_lib.lib" )

  • if the projects are part of the solution, you can select them as "Project Dependencies"

The easiest way to do it is to use the pragma since you only have to do it once for both debug and release. For example, you could do a directory listing of your lib directory and then copy and past the remainder of the directive into your source file(s).

Further, to get a symbol listing of a static library, you can run the dumpbin tool on the lib files (AFAIR with the /ALL option).




回答4:


This will output a file will all .lib files listed. You can copy and paste this or modify it according to your needs.

Save as a batch.

for %%f in (*.lib) DO echo|set /p=%%~f >> alllibs.txt 



回答5:


Though you are in Visual Studio, if you go with command line, you can put all the libs in a linker response file and reference it as a standalone option with a @ during link phase.

Unfortunately, according the above link,

This linker option is not available from the Visual Studio development environment.



来源:https://stackoverflow.com/questions/8103715/in-visual-studio-how-to-include-all-libs-in-a-folder

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!