I am using microvision on Windows and I am surprised that the packs install to User\Appdata\Local\....
Is there a way to tell the pack installer to install to a different directory? I would think that I would like to install to a more "global" directory so that the entire software tree is visible to multiple users on my team - and not have each person install fundamental files to a unique location on each of their machines. The situation is made worse in that the vendor has placed the RTE_Device.h (and other files) in this location and has instructed me to edit them for certain configurations. I feel like I am missing something fundamental about the pack as I can't see User\Appdata\Local\.... as a useful place to store code that will be edited as part of a development/production process.
So ... is there a way to change the pack installation directory? And ... how do others handle pack installation and distribution for a team development environement?
In the normal case -
Install Keil in C:\Keil_V5
Packs will install in C:\Keil_V5\ARM\PACK\...
When you create a new project, files that you need to modify for you project will likely be copied to the project directory. Best not to modify items in the PACK directory. IF you need to modify something, you should copy it to your project and edit it from there.
Can you clarify what you mean by "normal case?" I am running a fresh install of uVision5.33.0 ... It did install in C:\Keil_v5 ...
However, when I run the Pack Installer, it comes up at the top with: Pack Installer - C:\Users\username\AppData\Local\Arm\Packs - and then, as far as I can find, no option to change this. It does appear that I can "Manage Local Repositories" and set up a development repo to sort of do what I want ... but again, I am mostly surprised that Keil picking my directory is the standard operation.
I expect that it should be easy to have my project software all installed to a standard network location that makes it easy for me to share it with team members and include it in multiple different projects.
How do people normally handle this in a production environment? What is the easiest/best way to get every file I need exposed to my version control software and standardized among my team?
And I agree that I shouldn't have to edit anything in there - but that is where my vendor put files (like RTE_Device.h). Is it standard procedure to just copy files you want to edit into the project? And then the compile knows to take them from the local project before the pack? I am guessing that must be in the include directory order specified somewhere?
If it was a fresh install, it asked on the 1st screen where you wanted the tools and where you wanted the packs. This is stored in the TOOLS.INI file. You can always change the path and then copy the packs to where you changed this too.
You are going to want to actually create a new project using your processor of interest (if you have more than 1, just pick one) before you to go far. This will clear some things up for you. Where the PACKS are stored is not an issue.
If you create a new keil project you will see why you don't need to edit RTE_Device.h in the PACK folders. (And it will probably highlight why you would never want too).
Thanks for the info on the TOOLS.INI file. That is very helpful.
As to editing RTE_Device.h - could you please expand on why I don't need to edit it? And by edit - I mean use the configuration wizard - because it has to be writable for me to use the configuration wizard - and as far as I can tell, that is certainly required - at least on a board by board basis.
What you should not do is edit the RTE_Device.h file in the PACK directory. Create a new project and place it where you want to (not in the PACK directory). Feel free to run the configuration wizard and change the RTE_Device.h for your project. The reason they install these are read-only is so that people don't accidentally change the files in the PACK directory.
I am assuming that you have not actually tried to create your own project but are maybe looking at example projects that are in the PACK directory.
If you are using an example project from the PACK, don't try and edit it in the PACK area. You can copy a whole set of examples to some place that is yours and you can feel free to edit them there. If they are still read-only after copying them you can modify them so they are read-write.. You may use the configuration wizard on these files.
Thanks again - to be clear, I have made new projects as well as copied example projects. I agree that one shouldn't edit the files in the pack. I guess that is why I am so confused about how the pack is distributed and how the pack install directory isn't easily changeable. If I want to have my entire team to share the same codebase - then this pack needs to be placed in an area that isn't isolated on a single machine (neither the Appdata/Local nor the tool install directory C:\Keil_v5). I guess I will change the directory using the TOOLS.INI and have everyone on the team do the same.
I am curious how others are handling this is they want to have production code where they can revision control and archive the entire build. Again - I figured this would be such a standard thing to do - and I was looking for the "proper" way to do it. Somehow, editing TOOLS.INI seems like a bit of a hack.
This solution is also useful is your Windows username changes. You have to go into TOOLS.INI and update the username in the path.
Our Video Tutorial "Setup Arm Keil MDK" explains how to configure the Pack installation path during the installation of Keil MDK.
The video is offered at: http://www2.keil.com/video
Goto 1:30 min to see the possibility.