Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/154.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何查找静态c/c++;VisualStudio中的库_C++_C_Visual Studio_Static Libraries - Fatal编程技术网

C++ 如何查找静态c/c++;VisualStudio中的库

C++ 如何查找静态c/c++;VisualStudio中的库,c++,c,visual-studio,static-libraries,C++,C,Visual Studio,Static Libraries,我有一个应用程序和一个静态库。该库似乎构建得很好-它确实可以很好地编译myfoo和bar和Geewizz函数,并且创建静态库时没有任何错误或警告 但是,当应用程序构建并链接到静态库时,它会设法链接到函数foo和bar,但找不到函数geehizz。我如何判断geewizz是否进入了图书馆?我看不到任何像用于构建应用程序的库那样的/map选项。在构建应用程序时使用\map选项是没有意义的,因为它找不到我的geehizz函数,也没有报告它的依据 我使用C和C++的混合,我怀疑可能有函数名的翻译/翻译问

我有一个应用程序和一个静态库。该库似乎构建得很好-它确实可以很好地编译my
foo
bar
Geewizz
函数,并且创建静态库时没有任何错误或警告

但是,当应用程序构建并链接到静态库时,它会设法链接到函数
foo
bar
,但找不到函数
geehizz
。我如何判断
geewizz
是否进入了图书馆?我看不到任何像用于构建应用程序的库那样的
/map
选项。在构建应用程序时使用
\map
选项是没有意义的,因为它找不到我的
geehizz
函数,也没有报告它的依据


我使用C和C++的混合,我怀疑可能有函数名的翻译/翻译问题,或者调用约定问题,这是导致问题的原因,所以我认为有一个包含在库中的函数的列表应该能够照亮这个问题。但是,如果有任何关于解决此类问题的更一般性的建议,我很高兴听到。

感谢@indiv和@WhozCraig特别提供的有用意见,您至少有以下两种选择:

  • 在Visual Studio的链接器程序中使用
    /LIST
    选项(
    lib.exe
  • dumpbin
    实用程序与
    /linkermember
    选项一起使用
Visual studio在使
/LIST
选项易于使用方面并没有什么帮助。您必须在命令行中将其指定为一个附加选项,但如何做到这一点尚不清楚
/LIST
本身会生成标准输出的列表,但指定文件或使用
重定向操作符都不会以任何明显的方式工作。事实上,我已经完全放弃了想办法让这个选项起作用


谢天谢地,
dumpbin
是VisualStudio(甚至是Express版本)附带的一个实用程序,并且有很好的文档记录。因此,除非有人让普通人可以远程使用
/LIST
,否则请使用
dumpbin

,这样您就会出现链接错误,对吗?@MarcoA.:仅当针对共享库链接可执行文件时。在他尝试使用共享库之前,他想知道它是否有效。@MarcoA:不再是了-我已经通过在
extern“C”{…}
构造中声明
geehizz
修复了链接错误。但我仍然有兴趣知道如何在静态库中获得函数列表,因为这将有助于更快地证实我的怀疑。静态库始终有效。您可以尝试dumpbin.exe:。我不知道它是否能在静态库上工作,但我不明白为什么不能。@WhozCraig-鉴于上述情况,也许你应该将另一个答案标记为这个答案的副本;-)我认为应该有人详细说明
dumpbin/linkermember
语法,并获得一些免费的代表分数,因为心存感激的人会对问题和答案进行投票