Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
tools:xc16 [2016/04/05 14:52] – [Commercial edition] darron | tools:xc16 [2017/01/18 19:05] (current) – [Microchip XC16 compiler] darron | ||
---|---|---|---|
Line 1: | Line 1: | ||
==== Microchip XC16 compiler ==== | ==== Microchip XC16 compiler ==== | ||
+ | This is a C compiler for the dsPIC and PIC24 24-bit address word PICMicros. | ||
+ | |||
+ | Installation is comprised of two steps. The first step installs | ||
+ | the commercial compiler and the include files. The second step | ||
+ | is used to replace the compiler with the free edition. The | ||
+ | support files are needed in step 2 from step 1. | ||
=== Commercial edition === | === Commercial edition === | ||
Line 11: | Line 17: | ||
</ | </ | ||
- | == Fetch == | + | == Fetch and install == |
- | < | + | |
- | wget http:// | + | |
- | </ | + | |
- | + | ||
- | == Install | + | |
< | < | ||
- | chmod +x xc16-v1.25-full-install-linux-installer.run | + | wget " |
- | ./xc16-v1.25-full-install-linux-installer.run | + | chmod +x *.run |
+ | ./xc16-v1.30-full-install-linux-installer.run | ||
</ | </ | ||
== Include files == | == Include files == | ||
- | Version 1.25 is missing some important | + | Peripheral |
- | separately. | + | |
- | Method 1 | + | == Fetch and install == |
- | -------- | + | |
< | < | ||
- | wget xc16-v1.24-full-install-linux-installer.run | + | wget " |
- | chmod +x xc16-v1.24-full-install-linux-installer.run | + | chmod +x *.run |
- | ./xc16-v1.24-full-install-linux-installer.run | + | ./peripheral-libraries-for-pic24-and-dspic-v2.00-linux-installer.run |
- | cp -Rpa / | + | |
</ | </ | ||
- | Method 2 (untested) | + | Use /opt/microchip/xc16/v1.30 as the install directory. |
- | ------------------- | + | |
- | < | + | |
- | wget http://www.microchip.com/mymicrochip/filehandler.aspx? | + | |
- | </ | + | |
=== Free edition === | === Free edition === | ||
- | The free edition utilises header files and libraries from the commercial edition so perform the installation steps given above. The free edition has no limitations and does not require a license for optimisations. | + | The free edition utilises header files and libraries from the commercial edition so perform the installation steps given above first. The free edition has no limitations and does not require a license for optimisations. |
+ | |||
+ | The source code for the compiler needs a number of patches to build and operate. Patches were sourced from patches from the older c30 compiler and others created for XC16. The | ||
+ | resultant build has proven to produce binary objects that work on the target devices. | ||
== Initialise == | == Initialise == | ||
Line 54: | Line 52: | ||
</ | </ | ||
- | == Fetch == | + | The install process will apply a number of patches, build the compiler and tools and install everything in /opt/pic30-tools. |
- | < | + | |
- | wget http://ww1.microchip.com/ | + | |
- | </ | + | |
- | == Install | + | == Fetch and install |
< | < | ||
+ | wget " | ||
./install | ./install | ||
</ | </ | ||
+ | |||
+ | The install script expects the commercial compiler and includes files | ||
+ | to be installed so it may copy the support files to the build directory. | ||
+ | |||
+ | The final output of this process is not elegant and can do with more | ||
+ | work but this is not a high priority. | ||
=== Raspberry Pi === | === Raspberry Pi === | ||
Line 69: | Line 71: | ||
== Install emulator == | == Install emulator == | ||
- | [[tools: | + | [[tools: |
== Initialise == | == Initialise == | ||
< | < | ||
- | mkdir -p / | + | mkdir -p / |
- | cd / | + | cd / |
- | cp -Rp / | + | cp -Rp / |
mkdir -p / | mkdir -p / | ||
cd / | cd / | ||
Line 84: | Line 86: | ||
== Fetch == | == Fetch == | ||
< | < | ||
- | wget http:// | + | wget "http:// |
</ | </ | ||
== Enter emulator == | == Enter emulator == | ||
- | [[tools: | + | [[tools: |
== Install in emulator == | == Install in emulator == | ||
Line 109: | Line 111: | ||
=== Resources === | === Resources === | ||
- | [[http:// | + | [[http:// |
+ | [[http:// | ||