I am using the command line to allow me to create batch files to build my projects. The build command (-b) is working correctly. However I would like to clean the project first. In the documentation (http://www.keil.com/support/man/docs/uv4/uv4_commandline.htm) the example shows this 'UV4 -c PROJECT1.uvprojx' so I am doing 'UV4 -c Vick4610MCI.uvproj' (interestingly my project isnt a uvprojX.. i assume this is version 5?). But when I run this instead of cleaning the project it launches uvision!
An ideas why this is happening? Also are there other undocumented commands that can be used? Like a 'Rebuild all target files'?
Many thanks.
>But when I run this instead of cleaning the project it launches uvision!
Yes, it always launches uVision to build, rebuild or clean a project. After invoking uVision this way, all LST and OBJ files should be deleted and uVision closes automatically. If uVision should not be visible, you can use -j0 in the invocation line. See http://www.keil.com/support/man/docs/uv4/uv4_commandline.htm for more details.
I just checked this again with a *.uvproj project file (not *.uvprojx) and it works as expected. As long as you don't specify -j0 uVision always opens with all windows and after the job is done, it closes automatically. If you have a small project maybe not all windows are updated before the build-process is executed. I don't know why you only see the build-window.
Can you duplicate this issue only with your project or also with one of our standard examples? What uVision version do you use and for which processor core?
I don't believe this is correct. When I do a build using the -b command uVision does not really open, just the build window appears and closes at the end. However using the -c command the whole uVision IDE starts up with the specified project and does nothing else. It does not clean it.
I have currently got around this problem by doing a windows 'del .\Objects\*.* /q' which is working fine for me, so might help others. I would still be interested to know why -c does not work though!
MDK 4.11 is 5 years old. I am sorry but I don't have such an old version installed on my PC to duplicate this problem. Since I tested this with the latest version I am quite sure that it works now. Can you use the latest version 5.17? As far as I see, your license allows this.
Yes it appears to do the same with the 'Hello' example. My batch file for that is this:
UV4 -c Hello.uvproj UV4 -b Hello.uvproj
The first line launches the IDE with the Hello project then nothing happens. I then manually close the IDE and the second command in the batch file starts which successfully builds the project but only showing the build output window (not the whole IDE).
I am using: uVision: V4.03q Toolchain: V4.11 C Compiler: V4.0.0.728 CPU DLL: V4.11 Dialog DLL: V1.16a Target DLL: V1.56 Dialog DLL: V1.13
There is no need to test the old version, since -c clearly is a feature that first appeared in 5.16, see: http://www.keil.com/support/man/docs/uv4/uv4_rev_hist516.htm
This explains a lot, thanks for confirming. I will continue with my batch file 'del' command.
Thanks.
View all questions in Keil forum