Reputation: 1183
I’m running Tizen Studio 5.0 on a Windows 11 Pro PC. When I try to launch the TV emulator, I receive a popup error message “-enable-whpx: invalid option” and the emulator does not launch.
I've been following instructions from these links:
Installing TV SDK | Samsung Developers
Quick-start Guide | Samsung Developers
I am able to connect to a physical Samsung TV and deploy my app there, but I simply cannot get the emulator to run.
So far, I've verified:
I've tried running the emulator via the command line. I receive the same "-enable-whpx: invalid option" message box, and a bunch of console output. Here is the output:
C:\tizen-studio\tools\emulator\bin> .\em-cli.bat -v launch -n t-0214-1
[2023.2.14 17:59:47.86][WARNING][ProfileList.get] cannot find profile
[2023.2.14 17:59:47.89][WARNING][EMLogger.printStackTrace] java.lang.NoClassDefFoundError: org/tizen/emulator/manager/ui/item/CommonViewItemFactoryV3
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:757)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
at org.tizen.emulator.manager.plugin.EMPlugin.prepareLegacyEndpoint(EMPlugin.java:327)
at org.tizen.emulator.manager.plugin.EMPlugin.initEMPlugin(EMPlugin.java:171)
at org.tizen.emulator.manager.platform.Preparer.initializePlugin(Preparer.java:172)
at org.tizen.emulator.manager.platform.Preparer.initPlatformList(Preparer.java:139)
at org.tizen.emulator.manager.platform.Preparer.execute(Preparer.java:66)
at org.tizen.emulator.manager.EmulatorManager.initialize(EmulatorManager.java:61)
at org.tizen.emulator.manager.console.Main.startConsoleProcessor(Main.java:21)
at org.tizen.emulator.manager.console.Main.main(Main.java:65)
Caused by: java.lang.ClassNotFoundException: org.tizen.emulator.manager.ui.item.CommonViewItemFactoryV3
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
... 19 more
[2023.2.14 17:59:47.215][INFO][VMWorkerCommon.<init>] called VMWorkerCommon.
[2023.2.14 17:59:47.215][INFO][VMWorkerCommon.initLauncher] called initLauncher of VMWorkerCommon.
[2023.2.14 17:59:47.220][INFO][HelperClass.runProcess] Try to run external process: [C:\tizen-studio\tools\emulator\bin\check-gl.exe]
[2023.2.14 17:59:47.220][INFO][HelperClass.runProcess] -- Working dir : C:\tizen-studio\tools\emulator\bin
[2023.2.14 17:59:47.458][INFO][CheckGPU.work] Support GPU: true
[2023.2.14 17:59:47.458][INFO][CheckGPU.work] Gallium: false
[2023.2.14 17:59:47.458][INFO][HelperClass.runProcess] Try to run external process: [C:\tizen-studio\tools\emulator\bin\check-whpx.exe, hyper-v]
[2023.2.14 17:59:47.459][INFO][HelperClass.runProcess] -- Working dir : C:\tizen-studio\tools\emulator\bin
[2023.2.14 17:59:47.489][INFO][HelperClass.runProcess] Try to run external process: [C:\tizen-studio\tools\emulator\bin\check-hax.exe]
[2023.2.14 17:59:47.489][INFO][HelperClass.runProcess] -- Working dir : C:\tizen-studio\tools\emulator\bin
[2023.2.14 17:59:47.521][INFO][CheckVT.work] Support HW virtualization: true
[2023.2.14 17:59:47.521][INFO][CheckVT.work] non-UG: false
[2023.2.14 17:59:47.525][INFO][HelperClass.runProcess] Try to run external process: [C:\tizen-studio\tools\emulator\bin\check-whpx.exe, hyper-v]
[2023.2.14 17:59:47.525][INFO][HelperClass.runProcess] -- Working dir : C:\tizen-studio\tools\emulator\bin
[2023.2.14 17:59:47.554][INFO][HelperClass.runProcess] Try to run external process: [C:\tizen-studio\tools\emulator\bin\check-net.exe, --proxy]
[2023.2.14 17:59:47.554][INFO][HelperClass.runProcess] -- Working dir : C:\tizen-studio\tools\emulator\bin
[2023.2.14 17:59:47.584][INFO][NetworkProxy.getHostProxy] check-net result : MODE:None
[2023.2.14 17:59:47.584][WARNING][NetworkProxy.getHostProxy] Can't find host proxy setting.
Launch command : "C:\tizen-studio\platforms/tizen-7.0/tv-samsung/emulator\bin\emulator.cmd" --conf "C:\tizen-studio-data\emulator\vms\t-0214-1\vm_launch.conf" -j "C:\tizen-studio\jdk\bin\java"
[2023.2.14 17:59:47.584][INFO][VMLauncher.getCommand] Starting Emulator Command :
[2023.2.14 17:59:47.585][INFO][VMLauncher.getCommand] "C:\tizen-studio\platforms/tizen-7.0/tv-samsung/emulator\bin\emulator.cmd" --conf "C:\tizen-studio-data\emulator\vms\t-0214-1\vm_launch.conf" -j "C:\tizen-studio\jdk\bin\java"
[2023.2.14 17:59:47.585][INFO][VMLauncher.launchInternal] Command list for ProcessBuilder
[2023.2.14 17:59:47.585][INFO][VMLauncher.launchInternal] [C:\tizen-studio\platforms/tizen-7.0/tv-samsung/emulator\bin\emulator.cmd, --conf, C:\tizen-studio-data\emulator\vms\t-0214-1\vm_launch.conf, -j, C:\tizen-studio\jdk\bin\java]
[2023.2.14 17:59:47.770][WARNING][LaunchingMonitor.executeInternal] Emulator has been terminated in 8seconds.
The VM is launched
[2023.2.14 17:59:47.772][INFO][Main$EMShutdownHook.run] EMShutdownHook called
Any advice on what to try next?
==== UPDATE AFTER FOLLOWING ADVICE ====
After following advice from @Sangwook Lee, I no longer receive the "-enable-whpx: invalid option" error. However, my emulator still does not start. Trying to start it produces two log files, emulator.log
and emulator.klog
. The .klog
file is empty, and here is the content of the .log
file:
21:06:32.817|32784|I| osutil| 396|Running with elevated integrity level. Try to respawn.
21:06:32.821|32784|I| osutil| 427|Respawning success. Waiting for child process.
21:06:32.832|20244|I| main| 345|Start emulator...
qemu args: =========================================
"C:\tizen-studio\platforms\tizen-7.0\tv-samsung\emulator\bin\\emulator-x86_64" "-drive" "file=C:\tizen-studio-data\emulator\vms\T-samsung-7.0-x86\emulimg-T-samsung-7.0-x86.x86,if=none,index=0,cache.no-flush=on,id=drive" "-device" "virtio-blk-pci,drive=drive" "-drive" "file=C:\tizen-studio-data\emulator\vms\T-samsung-7.0-x86\swap-T-samsung-7.0-x86.img,if=none,index=1,id=swap" "-device" "virtio-blk-pci,drive=swap" "-enable-hax" "-device" "vigs,backend=gl,wsi=vigs_wsi" "-device" "yagl,wsi=vigs_wsi" "-smp" "4" "-m" "1024" "-device" "maru-virtual-tuner,system=ATSC,country=USA,table=C:\tizen-studio-data\emulator\vms\T-samsung-7.0-x86\tuner_default.cfg,stillimg=C:\tizen-studio\platforms\tizen-7.0\tv-samsung\emulator-resources\images,wsi=vigs_wsi" "-net" "nic,model=virtio" "-net" "user" "-chardev" "file,path=C:\tizen-studio-data\emulator\vms\T-samsung-7.0-x86\logs\emulator.klog,id=con0" "-device" "isa-serial,chardev=con0" "-device" "virtio-serial" "-L" "C:\tizen-studio\platforms/tizen-7.0/tv-samsung/emulator\data\bios" "-kernel" "C:\tizen-studio\platforms/tizen-7.0/tv-samsung/emulator\data\kernel\bzImage.x86" "-append" "vm_name=T-samsung-7.0-x86 video=LVDS-1:1920x1080-32@60 dpi=72 clocksource=hpet consoleblank=0 host_ip=10.0.2.2 console=ttyS0 model=4ksero yagl=1 force_pat" "-device" "virtio-maru-touchscreen-pci,max_point=10" "-nodefaults" "-device" "virtio-maru-esm-pci" "-device" "virtio-maru-hwkey-pci" "-device" "virtio-maru-evdi-pci" "-device" "virtio-maru-motor-pci" "-device" "virtio-maru-keyboard-pci" "-rtc" "base=utc" "-M" "maru-x86-machine" "-soundhw" "all" "-usb" "-vga" "none" "-device" "maru-external-input-pci,stillimg=C:\tizen-studio\platforms\tizen-7.0\tv-samsung\emulator-resources\images,wsi=vigs_wsi" "-display" "maru_qt,rendering=onscreen,resolution=1920x1080,dpi=72"
====================================================
21:06:32.835|20244|I| main| 348|qemu main start...
21:06:32.835|20244|I|emul_state| 733|initial display resolution: 1920x1080
21:06:32.835|20244|I|qt5_consol| 171|display density: 72
21:06:33.009|20244|I|qt5_supple| 515|* Qt version (compile time): 5.6.0
21:06:33.009|20244|I|qt5_supple| 516|* Qt version (runtime): 5.6.0
21:06:33.009|20244|I|qt5_supple| 517|* working path: "C:/tizen-studio/platforms/tizen-7.0/tv-samsung/emulator/bin"
21:06:33.009|20244|I|qt5_supple| 518|* binary path: "C:/tizen-studio/platforms/tizen-7.0/tv-samsung/emulator/bin"
21:06:33.009|20244|I|qt5_supple| 519|* Qt plugin library path: ("C:/tizen-studio/platforms/tizen-7.0/tv-samsung/emulator/bin")
21:06:33.009|20244|I|qt5_consol| 153|Display Type: QT5 Onscreen
ram_size 0x40000000
device fd:000000000000068c
21:06:33.019|20244|I| main| 157|* Board name : Maru
21:06:33.019|20244|I| main| 158|* Package Version: 2.8.0.26
21:06:33.019|20244|I| main| 159|* Package Maintainer: Jingjing geng <[email protected]>
21:06:33.019|20244|I| main| 160|* Git Head :
21:06:33.019|20244|I| main| 161|*
21:06:33.019|20244|I| main| 162|* User name : paulf
21:06:33.019|20244|I| main| 163|* Host name : TURING
21:06:33.019|20244|I| main| 166|* Build date : 2022-12-09 10:28:33 IST
21:06:33.019|20244|I| main| 175|* Current time : 2023-02-21 21:06:33
21:06:33.019|20244|I| main| 179|* Host Qt version : 5.6.0
21:06:33.019|20244|I| main| 192|* Host SDL version : 2.0.4
21:06:33.020|20244|I| osutil| 165|* Windows
21:06:33.020|20244|I| osutil| 166|* LibPNG Version : 1.6.21
21:06:33.020|20244|I| osutil| 173|* MajorVersion : 6, MinorVersion : 2, BuildNumber : 9200, PlatformId : 2, CSDVersion :
21:06:33.020|20244|I| osutil| 193|* Total Ram : 66807272 kB, Free: 50237628 kB
21:06:33.020|20244|I|net_helper| 178|Emulator base port is 26100.
21:06:33.020|20244|I|net_helper| 715|start sdb noti server thread.
21:06:33.020|20244|I|net_helper| 740|success to bind port[127.0.0.1:26103/udp] for sdb noti server in host
21:06:33.020|20244|I| main| 239|kernel commandline : vm_name=T-samsung-7.0-x86 video=LVDS-1:1920x1080-32@60 dpi=72 clocksource=hpet consoleblank=0 host_ip=10.0.2.2 console=ttyS0 model=4ksero yagl=1 force_pat sdb_port=26100, vm_resolution=1920x1080
dsound: Registering endpoint notification callback succeeded.
dsound: (dsound_create_thread) Done
dsound: (dsound_initialization_thread) CoInitializeEx succeeded
dsound: (dsound_audio_in_init) success
dsound: (dsound_audio_init) finished
Failed to sync vcpu reg
Failed to sync vcpu reg
Failed to sync vcpu reg
Failed to sync vcpu reg
Failed to sync vcpu reg
Failed to sync HAX vcpu context
dsound: (dsound_audio_fini)
dsound: (dsound_initialization_thread)thread exiting ...
dsound: (dsound_audio_fini)end uninitialize to free
21:06:33.081|20244|I|net_helper| 704|shutdown sdb notification server.
21:06:33.081|20244|I| main| 91|Exit emulator...
Upvotes: 2
Views: 3341
Reputation: 1183
Thanks to Sangwook Lee and Jianhua Bi for their assistance. Here is what worked for me.
Environment
Steps
dism /Online /Disable-Feature:Microsoft-Hyper-V-All
bcdedit /set hypervisorlaunchtype Off
sc config vmickvpexchange start= disabled
sc config vmicguestinterface start= disabled
sc config vmicshutdown start= disabled
sc config vmicheartbeat start= disabled
sc config vmicvmsession start= disabled
sc config vmicrdv start= disabled
sc config vmictimesync start= disabled
sc config vmicvss start= disabled
reg add HKLM\System\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity /v Enabled /t REG_DWORD /d 0 /f
Upvotes: 6
Reputation: 167
This is Sangwook Lee. Thank you for showing the new logs. When I see it, I am thinking that you need to check if the haxm driver is installed well. Let me update the guide https://docs.tizen.org/application/tizen-studio/setup/hardware-accelerated-execution-manager/ I think you can follow the steps in the guide. If you are still in trouble, please say it again. Thank you very much for interesting in then Tizen activity.
Upvotes: 1
Reputation: 167
Thank you very much for updating it. I am writing our comments right now.
Your window is enabled whpx option. but the Tizen TV emulator has not supported it yet. That's why the error happens.
We are planning to support whpx option next time internally.
1). Disable Windows Hypervisor Option
- Enter windows features in the Windows search box.
- In the Windows Features dialog,disable both Hyper-V and Windows Hypervisor
- Platform: 1_3)PC reboot
2). Install the Intel Haxm driver
After installation https://download.tizen.org/sdk/haxm/7.0.0/win/, please reboot the pc again.
3). Try to launch the TV emulator.
If you need more help from us, please feel free to contact us at any time. Thanks
Upvotes: 1