gpt4 book ai didi

c++ - 未找到 MinGW msys 包 : General advice how to proceed

转载 作者:行者123 更新时间:2023-11-30 05:30:21 25 4
gpt4 key购买 nike

我时不时地想用 mingw(在 Windows 上)从源代码编译一些东西。我打开 msys,输入 ./configure,它显示

checking for...xxxxxx

我有第一个问题:

  • mingw在哪里检查?
  • 它检查什么? .dll、.a、.o.、...什么?

偶尔会出现类似

的错误
configure: error: Package requirements <ogg >= 1.3> were not met:
No package 'ogg' found.

然后我用谷歌搜索并找到“你可以输出默认的查找目录”好吧,我输入 gcc -print-search-dirs 并看到一个目录列表,例如 C:/mingw/lib, C:/mingw/lib/gcc, ...

这些文件夹包含 .a 文件。你猜怎么着,其中一些还包含 libogg.a。那它为什么要提示呢?也许是版本号?不,我下载了最新的源代码并编译了它,并将 .a 文件放入目录中。同样的错误。它让我疯狂!请给出一些建议。

最佳答案

传统上,通常情况下,当一个 ./configure脚本检查一个库您正在配置的包需要链接,它至少检查库本身的存在和可用性,并且对于库的头文件,没有它编译器不能使用图书馆的API。 (我说通常,因为任何给定的 ./configure 检查实际上是由包维护者编写的。它与您的编译器无关)。

正在检查 libfoobar 的存在和可用性通常意味着./configure检查在文件系统中搜索 libfoobar.dll , libfoobar.a , 管他呢。这意味着 ./configure check 只是尝试根据 libfoobar 编译和链接样本程序使用适合这样做的命令,当 libfoobar已安装。

经常(而且越来越多),./configure检查图书馆 libfoobar调用 pkg-config 尝试的工具检索正确的编译器和链接器标志以用于 libfoobar .为了使这次尝试成功,一个 pkg-config元数据与库包关联的文件,foobar.pc , 必须在标准中找到放置在文件系统中,例如/usr/lib/pkgconfig , /usr/share/pkgconfig

对于库,加上它的标题,加上它的 pkg-config元数据(如果有的话)全部可用于 ./configure需要安装开发包的 libfoobar ,而不是基本包。开发包通常与基本包同名加上一个-dev-devel组件,例如libfoobar-dev

如果 ./configure检查失败,出现以下形式的错误:

No package 'foobar' found.

这意味着检查试图检索 pkg-config元数据 foobar没有找到。这通常是因为发展包裹libfoobar-dev未安装,即使 libfoobar是。

关于c++ - 未找到 MinGW msys 包 : General advice how to proceed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35998547/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com