【问题标题】:Tizen emulator not working on mac (Maveriks)Tizen 模拟器无法在 mac 上运行(小牛队)
【发布时间】:2016-08-17 07:04:12
【问题描述】:

我在创建 Tizen Emulator Wearable (2.3.1) 的虚拟机时遇到问题。一切都已正确安装,但一旦我想创建一个新的虚拟机,它就会返回错误 133。我正在运行 Mac OS X (10.9.5)。

JAVA HOME: /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/jre
JAVA VENDOR: Oracle Corporation
JAVA VERSION: 1.8.0_40
OS ARCH: x86_64
OS NAME: Mac OS X
OS VERSION: 10.9.5
SWT PLATFROM: cocoa
SWT VERSION: 4527
[2016.8.17 9:1:45.269][INFO][About.printSystemInformation] EmulatorManager Information
Version: 2.4.0_Rev8
Build time: 20160608-1400 (GMT)
Git version: fatal: Not a git repository (or any of the parent directories): .git
Workspace path: /Users/xruiz/tizen-sdk-data/emulator/vms
Package version: 2.4.199
[2016.8.17 9:1:45.286][INFO][EmulatorManager.main] Start Emulator Manager!!
[2016.8.17 9:1:45.306][INFO][CheckGPU.work] Support GPU: true
[2016.8.17 9:1:45.306][INFO][CheckGPU.work] Gallium: false
[2016.8.17 9:1:45.306][INFO][Overseer$1.run] Overseer [Checkers] is done...
[2016.8.17 9:1:49.844][INFO][NameItem.checkVMName] If you do not need this VM(), delete VM folder.
[2016.8.17 9:1:50.486][INFO][TemplateLoader.loadTemplate] 2.3.1-wearable-circle-template-v2.xml is loaded for 2.3.1-wearable-circle
[2016.8.17 9:1:50.504][WARNING][StandardPlatform.makeItemList] Fail to load ItemListFactory. Image : 2.3.1-wearable-circle
[2016.8.17 9:1:50.504][INFO][StandardPlatform.makeItemList] Use CommonItemListFactory.
[2016.8.17 9:1:50.552][INFO][TemplateLoader.loadTemplate] 2.3.1-wearable-circle-template-v2.xml is loaded for 2.3.1-wearable
[2016.8.17 9:1:50.552][WARNING][StandardPlatform.makeItemList] Fail to load ItemListFactory. Image : 2.3.1-wearable
[2016.8.17 9:1:50.552][INFO][StandardPlatform.makeItemList] Use CommonItemListFactory.
[2016.8.17 9:1:55.643][WARNING][QemuImgProc$1.run] Failed check base image...(from qemu-img)
dyld: Library not loaded: @rpath/libz.1.2.8.dylib
[2016.8.17 9:1:55.644][WARNING][QemuImgProc$1.run] Failed check base image...(from qemu-img)
  Referenced from: /Users/xruiz/tizen-sdk/tools/emulator/bin/qemu-img
[2016.8.17 9:1:55.644][WARNING][QemuImgProc$1.run] Failed check base image...(from qemu-img)
  Reason: image not found
[2016.8.17 9:1:56.29][WARNING][QemuImgProc.RunningForCheckImg] Error while running 'qemu-img'. Exit value : 133
[2016.8.17 9:1:56.32][WARNING][Creator.createInternal] Failed to create the VM: Error while running 'qemu-img'. Exit value : 133
You can get more information in log file (/Users/xruiz/tizen-sdk-data/emulator/vms/emulator-manager)
[2016.8.17 9:1:56.35][WARNING][CreateVMTableViewer.createEmulator] Failed to create Emulator (w-0817-1) 
Error while running 'qemu-img'. Exit value : 133

知道如何进行吗?

【问题讨论】:

  • 如果 tizen-sdk-data>emulator>vms 中存在 .lock 文件,请尝试删除。删除日志。还要检查是否正确安装了必要的 IDE。如果它不起作用,请删除模拟器并重新安装模拟器。
  • @enedebe - 这些都没有帮助。您还有什么可以建议的吗?安装 tizen sdk 2.4 后出现同样的错误。看起来根本原因是:dyld:未加载库:@rpath/libz.1.2.8.dylib。如何在 Mac 上安装该库?

标签: tizen tizen-wearable-sdk tizen-emulator tizen-studio


【解决方案1】:

发生该错误是因为仿真器可执行文件 (qemu-img) 使用运行路径 (rpath) 来查找动态库:

otool -L qemu-img 
qemu-img:
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 855.17.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
@rpath/libz.1.2.8.dylib (compatibility version 1.0.0, current version 1.2.8)
@rpath/libgthread-2.0.0.dylib (compatibility version 4801.0.0, current version 4801.1.0)
@rpath/libglib-2.0.0.dylib (compatibility version 4801.0.0, current version 4801.1.0)
@rpath/libintl.8.dylib (compatibility version 10.0.0, current version 10.4.0)
/usr/lib/libutil.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)

其中@rpath 定义为:

Load command 23
      cmd LC_RPATH
  cmdsize 32
     path @executable_path (offset 12)

@executable_path 在 Mac 上又具有特殊含义,与 qemu-img 所在的路径不一样。

要解决问题,请执行以下操作:

cd <root>/tizen-sdk/tools/emulator/bin
install_name_tool -add_rpath "<root>/tizen-sdk/tools/emulator/bin/" qemu-img

其中 是安装 tizen-sdk 的目录。

验证您的@rpath 列表是否已被修改:

otool -l qemu-img

你应该在底部看到:

Load command 24
      cmd LC_RPATH
  cmdsize 56
     path <root>/tizen-sdk/tools/emulator/bin/

现在重新启动您的模拟器管理器,它应该可以工作了。

另一种修复方法是将库 (*.dylib) 从 /tizen-sdk/tools/emulator/bin/ 复制到 /usr/local/lib,但要小心这种方法,不要覆盖一个库(如果它已经存在)。就我而言,我需要复制:

libglib-2.0.0.dylib
libgthread-2.0.0.dylib
libiconv.2.dylib
libintl.8.dylib
libpcre.1.dylib
libz.1.2.8.dylib

第二种方法有风险,因为它会影响其他应用程序,我不推荐它。

TIZEN STUDIO 更新 我刚刚下载了新的 Tizen Studio 1.0,发现它的模拟器也有同样的问题。幸运的是,同样的修复也适用于这个,但您需要修补两个可执行文件:

<root>/tizen-studio/tools/emulator/bin/qemu-img
<root>/tizen-studio/platforms/tizen-2.3.2/common/emulator/bin/emulator-x86_64

第一个使用与旧 tizen sdk 相同的命令(见上文),第二个使用这个:

cd <root>/tizen-studio/platforms/tizen-2.3.2/common/emulator/bin
install_name_tool -add_rpath "<root>/tizen-studio/platforms/tizen-2.3.2/common/emulator/bin" emulator-x86_64 

更新 2019/08/16: 在较新版本的 Tizen Studio 版本中不存在此问题。 3+。如果你仍然体验它,你可能有旧的 SDK。手动删除旧 SDK 并安装 Tizen Studio 版本附带的新 SDK。 3+

【讨论】:

  • 嘿,我尝试为 Tizen 工作室遵循这个并得到同样的错误。请问有什么帮助吗? [2019.8.16 12:42:5.490][WARNING][QemuImgProc.running] 运行“qemu-img”时出错。退出值:132 [2019.8.16 12:42:5.499][WARNING][Creator.createLocked] 无法创建 VM:由于 qemu-img 处理失败,无法创建 VM。您可以在日志文件(/Users/vavdav/tizen-studio-data/emulator/vms/emulator-manager)中获取更多信息
  • @Dawe - 该修复适用于旧版本,即版本 1。切换到版本 3 及更高版本后,我不再看到此问题。我建议删除所有旧的 Tizen SDK 并安装新版本。
【解决方案2】:

刚刚在 Tizen Studio 1.0.2 中偶然发现了类似的错误。错误仍然存​​在,使用 install_name_tool 的建议解决方案对我有用。

省点打字的小技巧:

cd <root>/tizen-studio/platforms/tizen-2.3.2/common/emulator/bin
install_name_tool -add_rpath $(pwd) emulator-x86_64 

【讨论】:

    猜你喜欢
    • 2013-11-01
    • 2017-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多