I've been using Crossworks for ARM for seven years, but am now using it in a different way than past projects. So, I'm back at square one and have some "newbie" questions that I couldn't find answers to in the documentation.
One of the Crossworks project templates is "An externally built executable...". It allows the Rowley IDE to debug an .elf file generated by another compilation tool.
(I think it is an inspired decision on Rowley's part to include this feature, as it is the "thin end of the wedge" to help get the Crossworks IDE tried and adopted on projects presently using other tools. It should also be indispensable for non-flash ROM targets, such as mask ROM, where the program image has already been set in stone.)
There are a couple of UI issues with using this feature though, and I'm hoping that others might have encountered solutions?
Testing was done with 188.8.131.524063000.21472 Linux x86.
1) The "Project out of date: The project 'foo' is out of date and needs to be built. Build the project before debugging?" dialog box ALWAYS appears when starting debugging (F11 or Debug->Go). "touch"ing the .elf to change the time/date doesn't make the slightest difference. Crosswork's behavior seems the same whether the answer is yes or no. It just seems to be an artificial nuisance.
2) Every time execution branches to code in a new .c/.s file, Crossworks prompts the user to ask where to find that file. In a project with hundreds of files, this gets tiring. There does seem to be an undocumented "debugSearchFileMap" XML tag in the .hzs file that retains information gathered from the user. Is there a XML tag that provides a base directory to try finding the files before pestering the user? (Although clunky, perhaps the brute force workaround is for the user to write a script to generate the "debugSearchFileMap" tag for every single file in the project every time a new project is created.)
Please sign in to leave a comment.