Ros gzserver:加载共享库时出错:libdart.so.6.1:无法打开共享对象文件:没有这样的文件或目录

Ros gzserver:加载共享库时出错:libdart.so.6.1:无法打开共享对象文件:没有这样的文件或目录,ros,Ros,请帮忙!目前,我正在与oculus rift合作,安装了ros,我尝试安装gazebo cmake并使其通过,但当我尝试运行gazebo时,输出如下: gzserver:加载共享库时出错:libdart.so.6.1:无法打开共享对象文件:没有这样的文件或目录 还尝试安装libdart6软件包,但似乎没有任何效果。我在这里绝望了。请帮助您的软件缺少依赖项。路径中仍缺少一个共享对象(一个.so文件)。路径通常是目录列表,软件在其中查找其依赖项 如果您所在的目录名为/home/random/othe

请帮忙!目前,我正在与oculus rift合作,安装了ros,我尝试安装gazebo cmake并使其通过,但当我尝试运行gazebo时,输出如下: gzserver:加载共享库时出错:libdart.so.6.1:无法打开共享对象文件:没有这样的文件或目录


还尝试安装libdart6软件包,但似乎没有任何效果。我在这里绝望了。请帮助

您的软件缺少依赖项。路径中仍缺少一个共享对象(一个.so文件)。路径通常是目录列表,软件在其中查找其依赖项

如果您所在的目录名为
/home/random/other/dir/
这个目录包含一个可执行文件,你可以通过

./executable
/
表示shell在当前工作目录中搜索
可执行文件。I仅当您希望运行可执行文件时,/才是必需的

如果任何软件抱怨缺少依赖项,您可以使用
ldd
检查这些依赖项。 首先确保您位于正确的目录,然后运行
ldd可执行文件

我在这里举个例子:

g@toolbox:~/Downloads/TeamSpeak3-Client-linux_x86$ ls
CHANGELOG     imageformats    libQt5Core.so.5     libQt5Sql.so.5      libquazip.so  platforms        qt.conf        sqldrivers    ts3client_linux_x86
error_report  libc++abi.so.1  libQt5Gui.so.5      libQt5Widgets.so.5  news          plugins          sound          styles        ts3client_runscript.sh
gfx           libc++.so.1     libQt5Network.so.5  libQt5XcbQpa.so.5   package_inst  plugin_sdk.html  soundbackends  translations  update
g@toolbox:~/Downloads/TeamSpeak3-Client-linux_x86$ ldd ts3client_linux_x86 
    linux-gate.so.1 (0xf770a000)
    libquazip.so => not found
    libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf76ea000)
    librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xf76e0000)
    libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xf76c3000)
    libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf767d000)
    libQt5Core.so.5 => /usr/lib/i386-linux-gnu/sse2/libQt5Core.so.5 (0xf7145000)
    libQt5Gui.so.5 => /usr/lib/i386-linux-gnu/sse2/libQt5Gui.so.5 (0xf6bc5000)
    libQt5Network.so.5 => /usr/lib/i386-linux-gnu/libQt5Network.so.5 (0xf6a36000)
    libQt5Widgets.so.5 => /usr/lib/i386-linux-gnu/libQt5Widgets.so.5 (0xf6337000)
    libQt5Sql.so.5 => /usr/lib/i386-linux-gnu/libQt5Sql.so.5 (0xf62ed000)
    libresolv.so.2 => /lib/i386-linux-gnu/i686/cmov/libresolv.so.2 (0xf62d5000)
    **libc++.so.1 => not found
    libc++abi.so.1 => not found**
    libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf62b7000)
    libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xf629b000)
    libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf60ee000)
    /lib/ld-linux.so.2 (0x56607000)
    libicui18n.so.52 => /usr/lib/i386-linux-gnu/libicui18n.so.52 (0xf5ecb000)
    libicuuc.so.52 => /usr/lib/i386-linux-gnu/libicuuc.so.52 (0xf5d47000)
    libglib-2.0.so.0 => /lib/i386-linux-gnu/libglib-2.0.so.0 (0xf5c1f000)
    libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf5b2d000)
    libpng12.so.0 => /lib/i386-linux-gnu/libpng12.so.0 (0xf5b00000)
    libharfbuzz.so.0 => /usr/lib/i386-linux-gnu/libharfbuzz.so.0 (0xf5aa3000)
    libGL.so.1 => /usr/lib/i386-linux-gnu/libGL.so.1 (0xf598b000)
    libgobject-2.0.so.0 => /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 (0xf592d000)
    libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf57db000)
    libicudata.so.52 => /usr/lib/i386-linux-gnu/libicudata.so.52 (0xf416e000)
    libpcre.so.3 => /lib/i386-linux-gnu/libpcre.so.3 (0xf40fa000)
    libfreetype.so.6 => /usr/lib/i386-linux-gnu/libfreetype.so.6 (0xf4048000)
    libgraphite2.so.3 => /usr/lib/i386-linux-gnu/libgraphite2.so.3 (0xf4020000)
    libnvidia-tls.so.340.102 => /usr/lib/i386-linux-gnu/tls/libnvidia-tls.so.340.102 (0xf401b000)
    libnvidia-glcore.so.340.102 => /usr/lib/i386-linux-gnu/libnvidia-glcore.so.340.102 (0xf1a87000)
    libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf1a72000)
    libffi.so.6 => /usr/lib/i386-linux-gnu/libffi.so.6 (0xf1a69000)
    libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf1a43000)
    libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf1a3f000)
    libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf1a39000)
g@toolbox:~/Downloads/TeamSpeak3-Client-linux_x86$ 
如您所见,我的ts3client_linux_x86可执行文件将丢失
libc++.so.1、libc++abi.so.1

您可以使用这些名称作为要安装的软件包的提示

LinuxMint使用类似Debian/Ubuntu的apt-get安装软件。这两个版本的文档比Mint上的要好一点(至少在数量和可访问性方面)。因此,如果在LinuxMint上搜索debian/ubuntu文档,您可能也会受益匪浅

回到你的问题: ldd不会告诉您比您知道的更多的信息,即您缺少此共享对象
libdart.so.6.1

我在standart debian jessie中找不到它,稍微搜索一下似乎表明您需要先配置ppa才能获得它。那有点乱

上述链接表明:

sudo apt-add-repository ppa:dartsim
sudo apt-get update
sudo apt-get install libdart-core5-dev
可用于添加上述ppa,并可能安装“libdart库”。可能是
libdart.so.5.1
但不是
libdart.so.6.1

然而,我不能纵火来约束自己;) 您现在可以做的是添加ppa,更新apt并尝试
apt获取安装libdart-core6-dev

也许你会幸运的。(只是不要遵循页面上的说明,它们可能与您的个人目标无关)


找到解决方案后效果不错:)

首先,感谢您的帮助!
最后,我访问了dart的页面,下载了dart.6.1.2,提取它,构建它,然后它开始工作。感觉有点像个白痴哈哈。你的建议对我帮助很大!T

嘿,您是否尝试过
lddgzserver
并检查那里缺少的lib的输出?您还可以添加您的操作系统,因为库包在每个分发版上通常有不同的名称dd:./gzserver:没有我正在使用的文件或目录。该错误告诉您ldd的参数“./gzserver”不在您查找它的位置。最好指定要运行的gzserver二进制文件的完整绝对路径。像
ldd/home/zujankaaa/gzserver/gzserver
。仅当您位于gzserver二进制文件所在的目录中时,您发出的命令才起作用。