Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.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
Build ld找不到-lstdc++;在没有sudo的情况下尝试在本地构建工具时_Build_Cmake_Compilation_Linker_Ld - Fatal编程技术网

Build ld找不到-lstdc++;在没有sudo的情况下尝试在本地构建工具时

Build ld找不到-lstdc++;在没有sudo的情况下尝试在本地构建工具时,build,cmake,compilation,linker,ld,Build,Cmake,Compilation,Linker,Ld,我正在尝试使用cmake编译一个没有sudo(本地安装)的工具,而ld似乎找不到libstdc++: /usr/bin/ld: cannot find -lstdc++ 我的ld搜索路径为: $ ld --verbose | grep SEARCH_DIR | tr -s ' ;' \\012 SEARCH_DIR("/usr/x86_64-redhat-linux/lib64") SEARCH_DIR("/usr/lib64") SEARCH_DIR("/usr/local/lib64")

我正在尝试使用cmake编译一个没有sudo(本地安装)的工具,而ld似乎找不到libstdc++:

/usr/bin/ld: cannot find -lstdc++
我的ld搜索路径为:

$ ld --verbose | grep SEARCH_DIR | tr -s ' ;' \\012
SEARCH_DIR("/usr/x86_64-redhat-linux/lib64")
SEARCH_DIR("/usr/lib64")
SEARCH_DIR("/usr/local/lib64")
SEARCH_DIR("/lib64")
SEARCH_DIR("/usr/x86_64-redhat-linux/lib")
SEARCH_DIR("/usr/local/lib")
SEARCH_DIR("/lib")
SEARCH_DIR("/usr/lib")
/usr/lib64/libstdc++.so.6
下有一个libstdc++

我的
LD\u库路径
包含
/usr/lib64/

问题: 1.是因为名称完全匹配导致“ld”找不到库吗

  • 在没有“sudo”的情况下,如何使ld可见
    谢谢

    您还需要有
    libstdc++.so
    文件(没有so版本)。通常,此文件是指向最高版本的so文件的链接。@Tsyvarev,在调用“make”之前,是否可以将此文件传递给cmake配置?如果您不介意给出一点cmake代码片段的话,这里对cmake选项非常陌生。谢谢同样,这不是一个CMake问题。给定普通库名称,如
    stdc++
    ,链接器(
    ld
    )不会搜索so版本(扩展名为
    .so.
    )的文件。为了成功链接,您的系统上应该有一个没有so版本的文件。»我的LD_库路径包含/usr/lib64/«:
    libstdc++。因此
    通常不在/usr/lib64/→ Fedora示例
    /usr/lib/gcc/x86\u 64-redhat-linux/8/
    。(Slackware有
    /usr/lib64/libstdc++.so
    )链接器似乎应该找到文件
    /usr/lib/gcc/x86_64-redhat-linux/4.8.2/libstdc++.so
    。您可以尝试将
    /usr/lib/gcc/x86\u 64-redhat-linux/4.8.2
    添加到
    LD\u库路径中。