在 linux 上是没有 .lib 的文件的,只有最终文件 .so
windows 上是有 .lib 文件的。
在我的理解中 lib 文件使用来控制需要导出哪些函数,哪些函数不对外公布的。
这是 wxMSW-3.1.3_gcc810_x64_Dev.7z
文件中的文件
libwxbase31u.a
libwxbase31u_net.a
libwxbase31u_xml.a
wxmsw313u_stc_gcc810_x64.dll
wxmsw313u_webview_gcc810_x64.dll
...
这个 .a 就是 .lib 文件
.a 文件中有什么呢?
__imp_wxWebViewBackendIE
全是正常的符号前面追加 __imp_
__imp_
我的理解是 wxWebViewBackendIE
函数不在这,在其他文件,运行时去找吧。
但是我刚发现一个有趣的东西,使得行为像 linux。可以不需要 .a,编译器通过,并正常运行。
将 wxmsw313u_webview_gcc810_x64.dll
该名为 libwxmsw313u_webview_gcc810_x64.dll.a
(正确行为应该是创建符号链接)
在 link 时 -lwxmsw313u_webview_gcc810_x64
,就行。
如果有理解错误的地方,请告诉我。 :>