代码之家  ›  专栏  ›  技术社区  ›  Owen

libcurl-x64。未找到dll

  •  0
  • Owen  · 技术社区  · 7 年前

    我收到一个非常奇怪的错误。我正在编译一段代码,该代码使用libcurl从url解析JSON数据。经过反复试验,我把它编译得一丝不苟。然而,当试图运行代码时,我得到一个 系统 错误,为libcurl-x64。未找到dll。 Picture of error here 我不确定到底是什么在这里找到了什么。我的windows系统找不到libcurl-x64。dll还是我的gcc编译器?然而,快速的系统搜索会显示它的位置。我什么都没用。我需要用libcurl-x64做什么。让我的系统可以找到它?它只适用于我正在做的这个解析程序,其他每个cpp/exe文件和项目都可以正常工作。系统规格:Windows 10、Dev C++IDE、mingw g++编译器。 这是我应该丢失的文件的位置: FilePath1 FilePath2

    2 回复  |  直到 7 年前
        1
  •  0
  •   rustyx    7 年前

    这个 search order of DLLs 对于桌面Windows应用程序,如下所示:

    1. 从中加载应用程序的目录。
    2. Windows目录。(例如Windows)
    3. 当前目录。
    4. PATH环境变量中列出的目录。

    您需要确保可以通过上述位置之一访问丢失的DLL。

    快速测试的最佳方法是将其复制到应用程序(.exe)所在的同一位置。

        2
  •  0
  •   Mike Kinghan Luchian Grigore    7 年前

    它与编译器无关。在任何支持动态 库(Windows上的DLL、Linux上的共享库等),如果程序具有 在linktime被链接到某个动态库,然后在运行时,操作系统 程序加载器必须能够在 以某种依赖于操作系统的方式在运行时指定的位置。

    这就是动态库的本质。

    在Windows的情况下,这意味着要运行一个与之链接的程序 libcurl-x64.dll 程序加载器将尝试定位 libcurl-x64。dll 使用 Search Path Used by Windows to Locate a DLL , 以便将其加载到程序的进程中。如果找不到 libcurl-x64。dll 在任何一个地方 然后程序将无法启动,出现您观察到的错误。