只是分享知识。我希望我能节省一些时间。
如果您有Fedora Linux(我现在使用f25)但想使用Tizen Studio(官方它只适用于Ubuntu Linux),您可以在安装并启动Studio后遇到这些问题:
问题未启动 sdb 工具(~/tizen-studio/tools/sdb
)
要检查嫌疑人,您可以尝试启动sdb
,但必须失败并显示错误:sdb: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory
。
然后,如果您使用sdb
命令检查ldd
,您会看到找不到libcrypto.so.1.0.0
:
user@host$ ldd ~/tizen-studio/tools/sdb
linux-vdso.so.1 (0x00007ffc9dbf9000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fd8fc5be000)
libcrypto.so.1.0.0 => not found
libc.so.6 => /lib64/libc.so.6 (0x00007fd8fc1f8000)
/lib64/ld-linux-x86-64.so.2 (0x0000560aab3af000)
不幸的是,这个问题不能通过简单的symlink
到libcrypto.so
和libssl.so
以及Fedora 25来解决(我想,在Fedora 23和24上也是如此)。所以,最简单的方法是从Ubuntu repo获取这些库。我们需要包libssl1.0.0_1.0.2g-1ubuntu9_amd64.deb
(link for mirror.yandex repo),但不要忘记选择您的架构。解压缩此deb包并将({root}用户)文件libcrypto.so.1.0.0
和libssl.so.1.0.0
复制到/usr/lib64
(或/usr/lib
以获取i686 arch)。然后以root身份启动命令ldconfig
。
完成这些操作后,您可以启动sdb
命令:
user@host$ ~/tizen-studio/tools/sdb version
Smart Development Bridge version 2.2.91
重新启动Tizen Studio后,您可以连接到Tizen Devices。
答案 0 :(得分:1)
让root分区不受影响要好得多。您可以编写一个脚本来预加载所需的库并启动sdb二进制文件,如下所示:
$ cd ~/tizen-studio/tools/
$ mv ./sdb sdb.bin
$ mkdir ./lib
$ mv libcrypto.so.1.0.0 ./lib/
然后创建一个名为" sdb":
的脚本# sdb
LD_LIBRARY_PATH=./lib/ ./sdb.bin "$@"
$ chmod +x ./sdb
你已经完成了!
答案 1 :(得分:0)
我个人使用Steam中的库。
这是我的' / usr / local / bin / sdb'脚本:
#!/bin/bash
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${HOME}/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu
${HOME}/tizen-studio/tools/sdb "${@}"