Problems with 9.1 SDK tools

I’m just documenting what we have done here. These are not cookbook like. YMMV. Handle with care.

  • err_formatter.pl does not handle arguments in spaces in them correctly.

    The line that puts together the command must be changed to

    my $command = join(' ', map { '"' . $_ . '"' } @ARGV);

  • ide_cw.pm uses library names incompatible with command line builds, leading to KErrCorrupt on the device, creates resource XML files that use the same language for all generated resources, references non-existent DEF files for DLLs with EXPORTUNFROZEN, adds references to non-existent paths that generate warnings in CodeWarrior and uses optimization in debug builds with GCCE.

    See ide_cw_pm.diff for all the changes. It includes a couple of local hacks, and assumes that you either use DEF files and EXPORTUNFROZEN (not both), so be careful with it.

  • The XML files generated with abld makefile cw_ide don’t work for on-device debugging. You have to manually add the necessary options for SIS file creation each time you recreate the project. You can modify your cw_project_template_v4.xml to fix that.
  • If you want dependencies between projects in CodeWarrior, you have to manually add the sub projects each time you create the project. You can use something like cw.pl to automate the references. Again, it’s a bit hacky and you probably have to modify it to make it work with your projects.
This entry was posted in Symbian. Bookmark the permalink.

3 Responses to Problems with 9.1 SDK tools

  1. Anonymous Hero says:

    Actually I’m surprised how sloppily some Symbian’s tools are put together. Take stringtable.pl, for example. String entries can’t handle spaces n it, so you can’t have:

    EFoo “foo bar baz”

    only

    EFoo foo

    And fixing it is only a matter of changing one regular expression!