在Windows中使用pkg-config查找库

我正在尝试使用pkg-config在windows(msvc)中findgstreamer库

pkg-config gstreamer-0.10 –cflags –libs

但我得到这样的结果

Package gstreamer-0.10 was not found in the pkg-config search path. Perhaps you should add the directory containing `gstreamer-0.10.pc' to the PKG_CONFIG_PATH environment variable No package 'gstreamer-0.10' found 

当安装库时(通过使用RPM,deb或其他二进制打包系统或通过源编译来自动创build),会创build.pc like。我无法在我的gstreamer目录中find.pc文件。

我应该只是创build一个.pc文件的所有必要的细节。

 prefix=C:\Program Files (x86)\OSSBuild\GStreamer\v0.10.7 exec_prefix=${prefix} libdir=${exec_prefix}\lib includedir=${prefix}\sdk\include\gstreamer-0.10 toolsdir=${exec_prefix}\bin pluginsdir=${exec_prefix}\lib\gstreamer-0.10 datarootdir=${prefix}\share datadir=${datarootdir} girdir=${datadir}/gir-1.0 typelibdir=${libdir}/girepository-1.0 Name: GStreamer Description: Streaming media framework Requires: glib-2.0, gobject-2.0, gmodule-no-export-2.0, gthread-2.0, libxml-2.0 Version: 0.10.35 Libs: -L${libdir} -lgstreamer-0.10 Cflags: -I${includedir} 

或者有任何其他的方式来做到这一点,或者我错过了什么?

希望你能帮助.Thankz花时间阅读这个问题。

那么我这样做是为了find解决scheme,为什么我not found消息在我的WAFconfigurationgstreamer

 conf.check_cfg(atleast_pkgconfig_version='0.0.0') conf.check_cfg(package='gstreamer-0.10', uselib_store='GSTREAMER', args='--cflags --libs', mandatory=True) 

该代码在Linux中工作,也应该在Windows中工作。


加了后

那么制作.pc并将.pc目录的path设置为PKG_CONFIG_PATH环境variables就行了。它并不难

看看这个 。 谢谢你的阅读和帮助我.. 🙂

Solutions Collecting From Web of "在Windows中使用pkg-config查找库"

pkg-config是一个很好的工具,但不幸的是,在Windows(vs. UNIX)中没有标准的可执行PATH或PKG_CONFIG_PATH。

虽然您可以恢复定义选项–with-gstreamer-include-dir … –with-gstreamer-lib-dir …并避免pkg-config依赖项,也可以使用–pkgconfig -exe c: \ path \ to \ pkg-config.exe –pkgconfig -path c:\ path \ to \ gstreamer; c:\ path \ to \ otherlib,这将有助于拥有一个漂亮的wscript,尤其是当使用大量的pkg配置库。

典型的Win32用户可能会直接设置PKG_CONFIG_PATH和PATH,或者绊倒在一个神秘的“找不到”的错误,然后检查config.log。

如果你添加特定于Windows的pkg-config选项,那么每个人都可能会感兴趣。 您可以编写一个pkgconfig_opts工具,并将其作为额外的waf提交。