首 页 | 新 闻 | Symbian | Android| Windows Mobile | J2ME | 下载中心 | 游戏策划招聘与求职 | 购书指南 | 视频教程
您现在的位置: 开发视界 >> Symbian英文资料 >> Tools SDK >> 正文
How to install UIQ SDK for Metrowerks CodeWarrior and Borland C++BuilderX on a single machine
作者:佚名    文章来源:不详    更新时间:2006-5-7 11:22:12

Installing several IDEs with their corresponding SDKs on the same machine is still a little bit "experimental" when working with Symbian OS development toolchain. And a complete loss of your SDK configuration is a common surprise. Here is a little fix when working on the UIQ platform with both Metrowerks Codewarrior and Borland/Microsoft IDEs.

The Problem seems to be that UIQ Technology use the same Kit ID in the InstallShield installer for different installation packages, so by default it isn’t possible to install both SDKs on the same machine. You have to decide between Metrowerks CodeWarrior and BorlandCBuilderX. Thats not a option for me!!

Furthermore, I had problems with the Windows XP Professional SP2 "Data Execution Prevention" feature (aka DEP) - the UIQ_21 installer will loop infinitely at the and, so you have to kill them, the embedded Perl installer will hang. Also the deinstaller doesn’t work correctly, may it loops and hangs , may it runs. There was some strange installer behaviour until i switched off the XP SP2 DEP feature. Switching of DEP does solve some problems, but not all. There are also problems with the new designed RPC stuf in XP SP2, this will also cause some installer hangups. It seems to me that a Symbian developer in the near future needs some VMWare installations on his machine to run the "old" SDKs.

1. Prepare

1.1 Switch off DEP if you use XP SP2
  open cmd.exe
  type "C:"
  type "cd \"
  type "attrib boot.ini -r -h -s"
  edit the boot.ini file and change /NoExecute=OptIn to /NoExecute=AllwaysOff
  type "attrib boot.ini +r +h +s"

1.2 Install Perl

I use the actuall version ActivePerl-5.8.4.810-MSWin32-x86.msi

1.3 Install JRE 1.3.1_01

Install exact j2re-1_3_1_01-win-i.exe. This is the one that comes with your UIQ v2.1 SDK. So if you haven’t this one installed on your system, you have to install it to the path

"%ProgramFiles%\JavaSoft\JRE\1.3.1"

*Replace %ProgramFiles% with your localized name, e.g. C:\Program Files.

The reason for doing this is because I had problems to install Java from within the UIQ_21 installer. The UIQ_21 installer uses exactly JRE 1.3.1_01 (not 1.3.1_01a). You can download the international version from the webform http://java.sun.com/products/archiv..., and select 1.3.1_01 in the pull down menu "J2RE".

1.4 Reboot

I had promlems if I didn’t reboot after installing Perl and the JRE 1.3.1_01!

2. UIQ v2.1 SDK for Metrowerks CodeWarrior

2.1 Install UIQ_21 SDK for Metrowerks Code Warrior

Upload the UIQ SDK from Symbian ftp site (ftp://ftp.symbian.com). I used the "june04" version which was the latest at time of writing. They have also older UIQ_21 installers from oct03, don’t use them - use the newer one from june04, the contain the Update1 for UIQ_21 (newer docus, and other stuff). You can also download the UIQ_21 SDKs from this webform: http://www.symbian.com/developer/sc....

Note my InstallPath is: "C:\Symbian\7.0e\UIQ_v21_CW"

Don’t select Perl and Java int the InstallShield Window. If the InstallShield pops up after 85-95% a Java Window select all CheckBoxes, but not the first one.

2.2 Change Registry Settings

After the Installation of this first SDK, you have to do two changes in the registry. So open regedit.exe and change the following two Values


[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{F0CD9140-BE75-11D5-9229-00C04F179241}_0]

"KitID"="UIQ_21" -> "KitID"="UIQ_v21_CW"
"DisplayName"="Symbian OS Kit Installer UIQ_21" -> "DisplayName"="Symbian OS Kit Installer UIQ_v21_CW"

2.3 Change devices.xml and installed2.xml

Change "%CommonFiles%\Symbian\devices.xml" [1] from:

<?xml version="1.0" encoding="UTF-8"?>
<devices version="1.0">
 <device id="UIQ_21" name="com.symbian.UIQ">
   <epocroot>C:\Symbian\7.0e\UIQ_v21_CW\</epocroot>
 </device>
</devices>

to:

<?xml version="1.0" encoding="UTF-8"?>
<devices version="1.0">
 <device id="UIQ_v21_CW" name="com.symbian.UIQ">
   <epocroot>C:\Symbian\7.0e\UIQ_v21_CW\</epocroot>
 </device>
</devices>

Change "%CommonFiles%\Symbian\installed2.xml" from:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE installed-sdks SYSTEM "installed2.dtd">
<installed-sdks version="2.0">
 <sdk id="UIQ_21">
   <sdk-path>C:\Symbian\7.0e\UIQ_v21_CW</sdk-path>
 </sdk>
</installed-sdks>

to:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE installed-sdks SYSTEM "installed2.dtd">
<installed-sdks version="2.0">
 <sdk id="UIQ_v21_CW">
   <sdk-path>C:\Symbian\7.0e\UIQ_v21_CW</sdk-path>
 </sdk>
</installed-sdks>

2.4. Fix ide_cw.pm (This is a Bug!)

In the file \epoc32\tools\ide_cw.pm file change this line (in the addSystemSearchPaths function, not the addUserSearchPaths one)

code>&textSetting($accesspath, "Recursive", "true");

to

&textSetting($accesspath, "Recursive", "false");

3. UIQ v2.1 SDK for Borland C++BuilderX

3.1 Install UIQ_21 SDKForBorlandCBuilderX

Download the C++BuilderX version of the UIQ SDK and install it in a different location. My InstallPath is: "C:\Symbian\7.0e\UIQ_v21_MS"

Don’t select Perl and Java int the InstallShield Window. If the InstallShield pops up after 85-95% a Java Window select all CheckBoxes, but not the first one.

3.2 Change Registry Settings

Like for the Codewarrior SDK, you know have to tweak the registry. So open regedit.exe and change the following two values

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{F0CD9140-BE75-11D5-9229-00C04F179241}_1]

"KitID"="UIQ_21" -> "KitID"="UIQ_v21_MS"
"DisplayName"="Symbian OS Kit Installer UIQ_21" -> "DisplayName"="Symbian OS Kit Installer UIQ_v21_MS"

3.3 Change devices.xml and installed2.xml

Change "%CommonFiles%\Symbian\devices.xml" from:

<?xml version="1.0" encoding="UTF-8"?>

<devices version="1.0">
 <device id="UIQ_v21_CW" name="com.symbian.UIQ" default="no" userdeletable="no">
   <epocroot>C:\Symbian\7.0e\UIQ_v21_CW\</epocroot>
 </device>
 <device id="UIQ_21" name="com.symbian.UIQ">
   <epocroot>C:\Symbian\7.0e\UIQ_v21_MS\</epocroot>
 </device>
</devices>

to:

<?xml version="1.0" encoding="UTF-8"?>

<devices version="1.0">
 <device id="UIQ_v21_CW" name="com.symbian.UIQ" default="no" userdeletable="no">
   <epocroot>C:\Symbian\7.0e\UIQ_v21_CW\</epocroot>
 </device>
 <device id="UIQ_v21_MS" name="com.symbian.UIQ">
   <epocroot>C:\Symbian\7.0e\UIQ_v21_MS\</epocroot>
 </device>
</devices>

Change "%CommonFiles%\Symbian\installed2.xml" from:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE installed-sdks SYSTEM "installed2.dtd">
<installed-sdks version="2.0">
 <sdk id="UIQ_21">
   <sdk-path>C:\Symbian\7.0e\UIQ_v21_MS</sdk-path>
 </sdk>
 <sdk id="UIQ_v21_CW">
   <sdk-path>C:\Symbian\7.0e\UIQ_v21_CW</sdk-path>
 </sdk>
</installed-sdks>

to:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE installed-sdks SYSTEM "installed2.dtd">
<installed-sdks version="2.0">
 <sdk id="UIQ_v21_CW">
   <sdk-path>C:\Symbian\7.0e\UIQ_v21_CW</sdk-path>
 </sdk>
</installed-sdks>

Conclution:

That’s it! Note: Before you deinstall or modify some Package you have to restore its install values, cause the installer won’t work correctly! I don’t have the time to figure out how this works. Maybe you?



[1] %CommonFiles% have to be localiced in the following Text, e.g. "C:\Program Files\Common Files" for english Windows or "C:\Programme\Gemainsame Dateien" for german Windows

相关文章:
How to provide the Multi-Language support at runtime for Series 60.
How to provide the Multi-Language support at runtime for Series 60.
Using multiple SDKs
Use of the devices command
A few notes about the CommDb
Installation Instructions for the Nokia Developer Suite and Series 60 SDKs
Using multiple SDKs
Use of the devices command
 

站点地图 | 加入收藏 | 联系站长 | 广告服务 |
QQ:280529124  Tel:0592-8271361 辽ICP备05021703号