|
|
View previous topic :: View next topic |
Author |
Message |
JAM2014
Joined: 24 Apr 2014 Posts: 138
|
Installing compiler updates... |
Posted: Wed Jan 28, 2015 11:26 am |
|
|
Hi,
I know this has been covered before but I can't seem to find the info I'm looking for in the forum archives. I run several of the command line compilers (PCM & PCH), and I'd like to keep old versions available as I upgrade the compiler. What is the best way to do this, so that reverting to older versions is as seamless as possible?
Jack |
|
|
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Wed Jan 28, 2015 12:00 pm |
|
|
Quote: | I run several of the command line compilers (PCM & PCH) |
I keep older command line versions (hundreds of them) in a directory, like this:
Code: |
.
.
.
pcm4140.exe
pch4140.exe
pcm4141.exe
pch4141.exe
.
.
.
pcm5037.exe
pch5036.exe
pcm5037.exe
pch5036.exe
pcm5037.exe
pch5036.exe |
I don't use the CCS uninstall. I use this batch file to clean out the
installation. I name the batch file "CCS_clean.bat" and keep it on
my desktop. This is on an XP system. This batch file doesn't touch
the registry, but it apparently doesn't matter. I get a clean install
if I do it this way. The only problem is that part of the time, depending
on the compiler version, I must install both PCM and PCH, or MPLAB 8.92
will give me an error. I always install identical version numbers
for PCM and PCH.
Code: |
@echo off
cd "c:\Program Files\PICC"
deltree /y DLL
deltree /y Examples
deltree /y Devices
deltree /y Drivers
deltree /y ico
del UNWISE.EXE
del Default.mcp
del Suite_CCSPic.dll
del CCSCON.exe
del Readme.txt
del Ccsc.chm
del Ccsc.exe
del ccsuninstall.exe
del install.log
del Checkgdiplus.exe
del *.dat
del *.pjt
del *.ini
cd "c:\Documents and Settings\***Me***\Application Data\PICC"
del pcw.ini
del ccsc.ini
del dll.ini
cd "c:\Program Files\PICC"
dir
pause |
Note: in place of ***Me*** enter your computer name. You can find
your computer name (set by you during Windows installation) by right-
clicking on the My Computer icon and look under "registered to".
These instructions are for Windows XP.
I keep the .CRG files in a folder in MyDocuments, called "CRG files".
If the CCS installer asks for the CRG's, I point it to a file (ex. pch.crg)
in that folder.
XP doesn't come with deltree.exe. You have to download it from
the web. For example, this site has it:
https://www.raymond.cc/blog/download/did/1707/
Put it in the c:\Windows directory. Then the above batch file will work.
Edit:
Added note about ***Me***.
Added del dll.ini to the list of deleted files in the Application Data folder.
Note that the Application Data folder is normally hidden. You have to
select View hidden files in File Options to see it.
Last edited by PCM programmer on Fri Jul 29, 2016 4:37 pm; edited 1 time in total |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19539
|
|
Posted: Wed Jan 28, 2015 4:02 pm |
|
|
I have many dozens of different IDE versions also installed in separate directories like this. I install manually to the different directories, and before running, I delete the file that now comes with the compiler to do automatic updating. This way they run as separate compilers. I have probably twenty currently 'in use' available as shortcuts from a single folder.
Then for any code I want to compile, I just delete the CCSPJT file, and PJT file, run the compiler I want to use, open the main file from it's browser and compile. Since there is no project, it pulls the 'local' include files for the compiler version selected, and creates a new CCSPJT/PJT file for this compiler.
All of my code versions have text headers, saying what compilers they have been built with. So I have some going back perhaps a hundred compiler versions. I re-compiling I'll probably try my current favourite version, and if this gives problems switch back to the 'last known good'. Currently I have versions going back to 3.226 'in use'.
So on a current project started when V5 was 'young', the text header says:
Code: |
//V1.0 Using 4.141 (interrupt problems V5).
//V1.1. Now fixed V5 problem, using 5.010.
//V1.2 Using 5.019. Linearisation fix for R6 change. #define R6R82 to use.
//V1.3 Using 5.028. New ADC map, now 81264.65 steps/volt.
//V2.0 Added V44 #define to change pin mapping for new V1.2 board
//remove if compiling for old hardware
|
As you can see, lists compiler versions, hardware changes etc.. Also generally if changing a value for a hardware change, I'll make the changes switchable with a #define so I can always step back by removing these to compile for systems with old hardware.
Being able to instantly compile with the 'known last working' version, is vital.
I also tend not to jump on the 'latest version' bandwagon. Been bitten too many times. I tend to stick with a version I'm finding reliable, until a particular new chip is needed or something similar. |
|
|
guy
Joined: 21 Oct 2005 Posts: 297
|
|
Posted: Thu Jan 29, 2015 5:36 am |
|
|
LOL! The good ol' days...
Is that deltree.exe or deltree.com ? |
|
|
JAM2014
Joined: 24 Apr 2014 Posts: 138
|
|
Posted: Thu Jan 29, 2015 2:27 pm |
|
|
Hi All,
Thanks for all the help and suggestions! Unfortunately, I'm not quite out of the woods just yet!
I've run the CCS-supplied updater to update my v4.121 PCH compiler to the latest PCH version, v5.039, and now I can no longer invoke the compiler using MPLAB.... When I click the 'Build All' button, the compiler is invoked, but immediately shows a error dialog indicating that the Source file can't be found.
Here is the compiler output:
Quote: |
Executing: "C:\Program Files\PICC\Ccsc.exe" +FH "Remote_BlinkLED1.c" +DF +LN +T +A +M +Z +Y=9 +EA #__18F25K50=TRUE
|
Note that there is no full path name to the Source file. I don't think there ever was before the update, but I'm not really sure. Clearly, if it's needed, it's not there now.
I don't see an obvious setting in MPLAB v8.90 that allows me to change this. I've also created a completely new project using the 'Project Wizard', and the problem remains. I've also re-run the CCS MPLAB Plugin code, and the problem remains.
So far, CCS support hasn't been able to help with this issue. Does anyone have any ideas to try?
Thanks,
Jack |
|
|
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Thu Jan 29, 2015 4:15 pm |
|
|
Quote: | I've run the CCS-supplied updater |
I have never used that thing. I just download the command line updates
manually and rename them from pchupd and pcmupd to something useful
such as pch5040.exe and pcm5040.exe.
- Can you post the full path to your file ? We need to check it.
See these threads that relate to your problem:
In this one, I say that wiping the compiler installation and re-installing,
fixed it:
http://www.ccsinfo.com/forum/viewtopic.php?t=52768
Ttelmah and Jeremiah have thoughts on this:
http://www.ccsinfo.com/forum/viewtopic.php?t=47705
Notice that in this one, he also used "the installer and did the latest
updates". That may be the problem.
http://www.ccsinfo.com/forum/viewtopic.php?t=50326 |
|
|
JAM2014
Joined: 24 Apr 2014 Posts: 138
|
|
Posted: Thu Jan 29, 2015 4:49 pm |
|
|
Hi,
It's some kind of a Windows 7 issue. CCS sent me a version of the compiler that shows the full path where the compiler is expecting the Source file to be located. That path is: 'C:\Program Files\PICC\PIC Projects\Remote OnOff\Remote_BlinkLED1.c'. This is where MPLAB thinks the file is located - if I do a 'Save As', that's the location it opens. But, if I use the Explorer to see if the file exists, it's actually *not* there! Searching the HDD, I find that the actual file location is 'Admin\AppData\Local\VirtualStore\Program Files\PICC\PIC Projects\Remote OnOff'.
So, it appears that the full path that MPLAB is displaying is just an alias, but that the compiler seems to be taking it literally...... This didn't happen before with the older compiler version.
The problem is now known, but I'm not sure I see a solution yet? Ideas?
Jack |
|
|
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
|
gpsmikey
Joined: 16 Nov 2010 Posts: 588 Location: Kirkland, WA
|
|
Posted: Thu Jan 29, 2015 8:51 pm |
|
|
Yes, "virtual store" is another case of M$ knows what is best for you and no need to bother you with the details. Got bitten with that a while ago installing my key direct from the email from CCS. There some days I like to go over and play on the command line of my Linux system just for the shear pleasure of having things do just what they are told to do without "helping" me !!!
mikey _________________ mikey
-- you can't have too many gadgets or too much disk space !
old engineering saying: 1+1 = 3 for sufficiently large values of 1 or small values of 3 |
|
|
JAM2014
Joined: 24 Apr 2014 Posts: 138
|
|
Posted: Mon Feb 02, 2015 10:17 am |
|
|
Hi All,
I've finally sorted out my compiler issues with the help posted here, and with some suggestions from CCS support! Thanks to all!!
My *basic* problem is that all my development was being done in the 'C:\Program Files\PICC' directory. That was fine for older versions of Windows, such as Windows XP, but Windows 7 is decidedly NOT happy about that. Windows 7 will actually give the appearance that files are going there, but in fact they are relocated to the 'VirtualStore' directory. My development stuff was simply recreated in the same file locations when we migrated to Windows 7, and that was the 'gotcha'! For some reason the v4 compiler was OK with this, but the v5 version was not!
The solution was to move all my development files to a folder in 'My Document' (the compiler itself stays in the original location), and recreate the MPLAB project files to specify the new locations!
Thanks again!
Jack |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|