Languages

Menu
Sites
Language
Running Tizen studio & emulator on MacBook Pro 15" touch bar with macOS 10.13 High Sierra

I've spent last couple of days trying to get Tizen studio 2.2 up and running on given platform. As I have encountered multiple problems on my endeavour, I wanted to write down my findings in hope that they will help others facing the same issues.


My development environment is as follows
- MacBook Pro 15" with touch bar
- i7 / 16 GB RAM
- Radeon Pro 450 2 GB / Intel HD Graphics 530 1536 MB (OpenGL 4.1)
- 2 external monitors, 27" 4K Dell and 23" 1920x1080 HP
- MacOS High Sierra 10.13.3
- Tizen Studio 2.2

There were some failed installations and other (minor) issues which were solved by removing and reinstalling Tizen Studio. Since I was not able to reproduce those issues and can't really provide any meaningfull information about those issues, I'm not going to write about them. Instead, here are the issues I could reproduce and solve.

Java / Unable to select workspace

Some documentation mentioned that Java version should be 1.8.0_151. Symptoms for later version was


> When Tizen Studio runs, one can not click "OPEN" on workspace selection popup making it impossible to select one and proceed to actual Tizen Studio. 


Since it's generally a bad idea to globally downgrade your Java version, I solved the issue with following steps

  • Downloaded and installed Java 1.8.0_151 from Oracle archives
  • Edited the eclipse.ini found inside TizenStudio.app/Contents/Eclipse/eclipse.ini with forced VM version by following setting
    -vm
    /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/jre/bin
  • Note that Virtual Machine setting needs to be set before -vmargs option

This solved the "Unable to select workspace" problem

HAXM / Cannot initialize HAX.

Tizen Studio includes HAXM version 6.0.3. This is badly outdated and is the root cause for "Cannot initialize HAX" -error. Solution is to update HAXM to more appropriate version. By the time of writing this latest version is 7.1.0.


HAXM is now a open source project in github, releases are located here: https://github.com/intel/haxm/releases


Updating HAXM was not as straightforward as one might think. For me, update failed because older version failed to unload. I solved this by rebooting my laptop and manually uninstalling current HAXM version. I'm quite sure there are some steps you can do to solve "extension unload failed" -issue other than rebooting the laptop. Reboot was the fastest way for me so I took the shortcut here.


In recap, I solved the "Cannot initialize HAX" issue with following steps

  • Downloaded version 7.1.0 dmg from https://github.com/intel/haxm/releases
  • Rebooted laptop
  • Uninstalled HAXM by issuing command sudo /Library/Extensions/intelhaxm.kext/Contents/Resources/uninstall.sh
  • Installed version 7.1.0 from downloaded dmg

Now I was able to start Tizen Studio and get emulator up and running. Except for one issue

GPU Assist / Device Initialization Failed

15" MacBook pros have two GPUs. Integrated, Intel HD Graphics and additional Radeon Pro. Which GPU is active is up to the macOS and is based on running apps and other system variables. For example, my configuration has two external monitors, connected over Thunderbolt. When exteranal monitors are connected, macOS shuts down integrated graphics and activates Radeon automatically.


This seems to be fairly difficult scenario for the Tizen emulator as GPU assisted images fail to load when eternal monitors are connected, giving the mentioned error code. (I would have attached a screenshot, but could not figure out how to do that in this forum and editor.)


Apparently Tizen emulator GPU assistance is tied to first GPU found on the system, whether it's active or not. In my case, first GPU is Intel HD Graphics which is shut down when external monitors are connected. It should not be surprise to anyone that GPU assist does not work with GPUs that are shut down causing emulator to fail on start. 


It was easy to test this theory by just detaching external monitors. Alas, it's truly so. When intgrated graphics chip is active, GPU assistance works. When Radeon is active, it it does not. If GPU assitance is active in emulator settings the latter option fails to start completely.


So far I have not found solution to this. I'm missing documentation or tutorial how to configure emulator GPU assistance to Radeon GPU instead of integrated one.


Maybe someone can help me with this? Is there a way to define which GPU emulator is using for acceleration?

Edited by: Mika Lifflander on 26 Mar, 2018

Responses

9 Replies
Priyanka Jain

Hi,

How did you perform this:

  • Edited the eclipse.ini found inside TizenStudio.app/Contents/Eclipse/eclipse.ini with forced VM version by following setting
    -vm
    /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/jre/bin
  • Note that Virtual Machine setting needs to be set before -vmargs option

Would you mind explaining it little more? I'm having the same issue where Tizen is unresponsive while selecting the workspace.

 

Thanks

Priyanka

HyunJun Jung

Follow these steps to resolve your issue. This allows you to point the installer, tizen studio, certificate manager, and device manager to use JDK 8 as long as you have installed it :)

 

  • p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none}

    If you have JDK 8 with JDK 9+ you will get the following error when trying to install Tizen studio on a Mac.

  • Right click on the package installer within finder and select show package contents

  • Navigate to the Contents folder

  • Select all the contents and copy the files. Create a new directory on your desktop named TizenStudio and paste the contents in the newly created directory

  • Navigate to the MacOS folder and right click the installer exec and open with TextEdit and add the following export JAVA_HOME=`/usr/libexec/java_home -v 1.8` and save the file

  • Execute the installer package and leave the defaults for the installation directory. At the end of the installation the interface will prompt you to launch the package manager. You can install the SDK packages but in the following steps you will update the the Tizen Studio, certificate manager, and device manager to point to JDK 1.8 Home vs a current distribution

  • Open the Tizen Studio folder in Finder and right click to show package contents of the TizenStudio.app Navigate to the Contents directory and open the Info.pist in TextEdit. Add the following highlighted text and save the file e.g. <string>-vm</string><string>/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/bin/java</string> To find which version you have run the following command in terminal /usr/libexec/java_home -V That will list all versions of Java installed on your Mac, This will resolve the issue of running Tizen Studio but not being allowed to go past the workspace selection screen

  • Now open up the package manager folder within the tizen-studio folder in Finder

  • Right click on the package-manager.app and show package contents. Navigate to Contents —> MacOS 

  • Add the highlighted text to the file export JAVA_HOME=`/usr/libexec/java_home -v 1.8` and save the file. This will now allow you to run the package manager from Tizen Studio 

  • Now navigate to tizen-studio —> tools —> certificate manager. Right click on the certificate manager.app and show package contents 

  • Navigate to Contents  and open the Info.plist with Text Edit and add the following highlighted text. e.g. <string>-vm</string><string>/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/bin/java</string> To find which version you have run the following command in terminal /usr/libexec/java_home -V That will list all versions of Java installed on your Mac, This will resolve the issue of running Tizen Studio but not being allowed to go past the workspace selection screen Now the certificate manager should work within Tizen Studio 

  • Now navigate to tizen-studio —> tools —> device manager —> bin. Right click on the device manager.app and show package contents Navigate to Contents —> MacOS and edit the device-manager with TextEdit. You will add a # to the beginning of the following line:     #JAVA_DIR=$(dirname $(readlink $(which java))) Now add the following line: JAVA_DIR=`/usr/libexec/java_home -v 1.8` Now you can use the device manager within Tizen Studio

  •  

p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px 'Andale Mono'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none} span.s2 {font: 13.0px 'Andale Mono'; font-kerning: none} span.s3 {font: 11.0px 'Helvetica Neue'; font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px 'Andale Mono'; color: #000000; -webkit-text-stroke: #000000; min-height: 16.0px} p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Andale Mono'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none} span.s2 {font: 14.0px 'Andale Mono'; font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none} span.s2 {font: 13.0px 'Andale Mono'; font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px 'Andale Mono'; color: #000000; -webkit-text-stroke: #000000} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px 'Andale Mono'; color: #000000; -webkit-text-stroke: #000000; min-height: 16.0px} p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Andale Mono'; color: #000000; -webkit-text-stroke: #000000} p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Andale Mono'; color: #000000; -webkit-text-stroke: #000000; min-height: 12.0px} p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font: 11.0px 'Helvetica Neue'; font-kerning: none} span.s2 {font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} span.s1 {font-kerning: none} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px 'Helvetica Neue'; color: #000000; -webkit-text-stroke: #000000; min-height: 12.0px} p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px 'Andale Mono'; color: #000000; -webkit-text-stroke: #000000} p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px 'Andale Mono'; color: #000000; -webkit-text-stroke: #000000; min-height: 16.0px} span.s1 {font-kerning: none} span.s2 {font: 14.0px 'Andale Mono'; font-kerning: none} span.s3 {font: 11.0px 'Helvetica Neue'; font-kerning: none}
HyunJun Jung

Sorry better formatting on the solution

  • If you have JDK 8 with JDK 9+ you will get the following error when trying to install Tizen studio on a Mac.

  • Right click on the package installer within finder and select show package contents

  • Navigate to the Contents folder

  • Select all the contents and copy the files. Create a new directory on your desktop named TizenStudio and paste the contents in the newly created directory

  • Navigate to the MacOS folder and right click the installer exec and open with TextEdit and add the following export 

    JAVA_HOME=`/usr/libexec/java_home -v 1.8`

     and save the file

  • Execute the installer package and leave the defaults for the installation directory. At the end of the installation the interface will prompt you to launch the package manager. You can install the SDK packages but in the following steps you will update the the Tizen Studio, certificate manager, and device manager to point to JDK 1.8 Home vs a current distribution

  • Open the Tizen Studio folder in Finder and right click to show package contents of the TizenStudio.app Navigate to the Contents directory and open the Info.pist in TextEdit. Add the following highlighted text and save the file e.g. 

     <string>-vm</string><string>/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/bin/java</string> 

    To find which version you have run the following command in terminal /usr/libexec/java_home -V That will list all versions of Java installed on your Mac, This will resolve the issue of running Tizen Studio but not being allowed to go past the workspace selection screen

  • Now open up the package manager folder within the tizen-studio folder in Finder

  • Right click on the package-manager.app and show package contents. Navigate to Contents —> MacOS 

  • Add the highlighted text to the file export 

    JAVA_HOME=`/usr/libexec/java_home -v 1.8`

     and save the file. This will now allow you to run the package manager from Tizen Studio 

  • Now navigate to tizen-studio —> tools —> certificate manager. Right click on the certificate manager.app and show package contents 

  • Navigate to Contents  and open the Info.plist with Text Edit and add the following highlighted text. e.g. 

    <string>-vm</string><string>/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/bin/java</string>

     To find which version you have run the following command in terminal /usr/libexec/java_home -V That will list all versions of Java installed on your Mac, This will resolve the issue of running Tizen Studio but not being allowed to go past the workspace selection screen Now the certificate manager should work within Tizen Studio 

  • Now navigate to tizen-studio —> tools —> device manager —> bin. Right click on the device manager.app and show package contents Navigate to Contents —> MacOS and edit the device-manager with TextEdit. You will add a # to the beginning of the following line:     

    #JAVA_DIR=$(dirname $(readlink $(which java)))

     Now add the following line: 

    JAVA_DIR=`/usr/libexec/java_home -v 1.8` 

    Now you can use the device manager within Tizen Studio

Priyanka Jain

Hi,

I'm sorry but this is also not working. I'm not looking to open device manager or certificate manger within Tizen launcher. My Tizen launcher itself os freezing.

HyunJun Jung

The reason why the Tizen launcher fails is that it needs Oracle JDK 8 and not Open JDK. It also is an issue when you have multiple JDK's installed on your machine. If you are experiencing Tizen studio launching and hanging on the workspace screen, The proposed solution will resolve the issue.

 

Priyanka Jain

i followed the above steps but still my launcher is unresponsive. Certificate manager and Device Manager are working fine. Is there any other solution?

HyunJun Jung

The best thing to do is to delete the Tizen installed directories e.g. tizen-studio tizen-data etc. If you made any changes like the post suggests revert them back. There is no need to update the eclipse settings if you follow my steps in my solution. Once you do that let me know the following

1. run the following in the terminal 

/usr/libexec/java_home -v 1.8

and post the output

You will need that information to update the vm-settings in the info.plist later on.

Once I can confirm that you have the proper environment prerequisites I can help you troubleshoot further.

 

Priyanka Jain

Thanks

Issue is fixed, i was having 2 versions of Java so i deleted one of them and now using 1.8.0_151 and sdk is working with it. When can i be able to use latest version of java with sdk?

Priyanka

HyunJun Jung

If you follow my instructions you can run the IDE with multiple JDK's on your system. Thats why I requested you to run the java_home command. You shouldnt have to remove newer versions of Java. In any case, your envrionment is working! I am not sure when the Tizen group will update the installer to fix the package to be able to work with multiple versions.