Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XC8 compiler version #49

Open
lhupfeldt opened this issue Nov 20, 2022 · 3 comments
Open

XC8 compiler version #49

lhupfeldt opened this issue Nov 20, 2022 · 3 comments

Comments

@lhupfeldt
Copy link

The documentation here says to use version 1.45 of the XC8 compiler, but the latest (2.40) version seems to work fine now. Should I still use 1.45?

Output from XC8 v2.40 with Ide v6.05:

CLEAN SUCCESSFUL (total time: 58ms)
make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
make[1]: Entering directory '/home/lhn/extsrc/SmartEVSE-2/SmartEVSE2.X'
make  -f nbproject/Makefile-default.mk dist/default/production/SmartEVSE2.X.production.hex
make[2]: Entering directory '/home/lhn/extsrc/SmartEVSE-2/SmartEVSE2.X'
"/opt/microchip/xc8/v2.40/bin/xc8-cc"  -mcpu=18F26K22 -c    -fno-short-double -fno-short-float -memi=wordwrite -mrom=0-FCFB -O3 -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=default  -msummary=-psect,-class,+mem,-hex,-file  -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits   -std=c90 -gdwarf-3 -mstack=compiled:auto:auto:auto     -o build/default/production/EVSE.p1 EVSE.c 
"/opt/microchip/xc8/v2.40/bin/xc8-cc"  -mcpu=18F26K22 -c    -fno-short-double -fno-short-float -memi=wordwrite -mrom=0-FCFB -O3 -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=default  -msummary=-psect,-class,+mem,-hex,-file  -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits   -std=c90 -gdwarf-3 -mstack=compiled:auto:auto:auto     -o build/default/production/GLCD.p1 GLCD.c 
"/opt/microchip/xc8/v2.40/bin/xc8-cc"  -mcpu=18F26K22 -c    -fno-short-double -fno-short-float -memi=wordwrite -mrom=0-FCFB -O3 -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=default  -msummary=-psect,-class,+mem,-hex,-file  -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits   -std=c90 -gdwarf-3 -mstack=compiled:auto:auto:auto     -o build/default/production/bootloader.p1 bootloader.c 
"/opt/microchip/xc8/v2.40/bin/xc8-cc"  -mcpu=18F26K22 -c    -fno-short-double -fno-short-float -memi=wordwrite -mrom=0-FCFB -O3 -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=default  -msummary=-psect,-class,+mem,-hex,-file  -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits   -std=c90 -gdwarf-3 -mstack=compiled:auto:auto:auto     -o build/default/production/utils.p1 utils.c 
"/opt/microchip/xc8/v2.40/bin/xc8-cc"  -mcpu=18F26K22 -c    -fno-short-double -fno-short-float -memi=wordwrite -mrom=0-FCFB -O3 -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=default  -msummary=-psect,-class,+mem,-hex,-file  -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits   -std=c90 -gdwarf-3 -mstack=compiled:auto:auto:auto     -o build/default/production/modbus.p1 modbus.c 
"/opt/microchip/xc8/v2.40/bin/xc8-cc"  -mcpu=18F26K22 -c    -fno-short-double -fno-short-float -memi=wordwrite -mrom=0-FCFB -O3 -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=default  -msummary=-psect,-class,+mem,-hex,-file  -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits   -std=c90 -gdwarf-3 -mstack=compiled:auto:auto:auto     -o build/default/production/OneWire.p1 OneWire.c 
"/opt/microchip/xc8/v2.40/bin/xc8-cc"  -mcpu=18F26K22 -c    -fno-short-double -fno-short-float -memi=wordwrite -mrom=0-FCFB -O3 -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=default  -msummary=-psect,-class,+mem,-hex,-file  -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits   -std=c90 -gdwarf-3 -mstack=compiled:auto:auto:auto     -o build/default/production/font.p1 font.c 
"/opt/microchip/xc8/v2.40/bin/xc8-cc"  -mcpu=18F26K22 -c    -fno-short-double -fno-short-float -memi=wordwrite -mrom=0-FCFB -O3 -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -DXPRJ_default=default  -msummary=-psect,-class,+mem,-hex,-file  -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits   -std=c90 -gdwarf-3 -mstack=compiled:auto:auto:auto     -o build/default/production/font2.p1 font2.c 
::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2
modbus.c:640:44: warning: (373) implicit signed to unsigned conversion
modbus.c:640:129: warning: (373) implicit signed to unsigned conversion
modbus.c:643:40: warning: (373) implicit signed to unsigned conversion
modbus.c:656:27: warning: (373) implicit signed to unsigned conversion
modbus.c:657:31: warning: (373) implicit signed to unsigned conversion
modbus.c:658:27: warning: (373) implicit signed to unsigned conversion
modbus.c:672:15: warning: (373) implicit signed to unsigned conversion
modbus.c:688:99: warning: (373) implicit signed to unsigned conversion
modbus.c:798:36: warning: (373) implicit signed to unsigned conversion
modbus.c:841:60: warning: (373) implicit signed to unsigned conversion
::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2
EVSE.c:848:22: warning: (346) declaration of "serialnr" hides outer declaration
EVSE.c:856:22: warning: (373) implicit signed to unsigned conversion
EVSE.c:880:47: warning: (373) implicit signed to unsigned conversion
EVSE.c:897:47: warning: (373) implicit signed to unsigned conversion
EVSE.c:920:55: warning: (373) implicit signed to unsigned conversion
EVSE.c:956:44: warning: (373) implicit signed to unsigned conversion
EVSE.c:957:49: warning: (373) implicit signed to unsigned conversion
EVSE.c:959:42: warning: (373) implicit signed to unsigned conversion
EVSE.c:992:49: warning: (373) implicit signed to unsigned conversion
EVSE.c:992:54: warning: (373) implicit signed to unsigned conversion
EVSE.c:993:42: warning: (373) implicit signed to unsigned conversion
EVSE.c:1009:53: warning: (373) implicit signed to unsigned conversion
EVSE.c:1024:64: warning: (373) implicit signed to unsigned conversion
EVSE.c:1026:67: warning: (373) implicit signed to unsigned conversion
EVSE.c:1027:1: warning: (373) implicit signed to unsigned conversion
EVSE.c:1027:59: warning: (373) implicit signed to unsigned conversion
EVSE.c:1029:42: warning: (373) implicit signed to unsigned conversion
EVSE.c:1085:78: warning: (373) implicit signed to unsigned conversion
EVSE.c:1103:41: warning: (373) implicit signed to unsigned conversion
EVSE.c:1187:66: warning: (373) implicit signed to unsigned conversion
EVSE.c:1188:35: warning: (373) implicit signed to unsigned conversion
EVSE.c:1285:37: warning: (373) implicit signed to unsigned conversion
EVSE.c:1605:28: warning: (373) implicit signed to unsigned conversion
EVSE.c:1609:28: warning: (373) implicit signed to unsigned conversion
EVSE.c:1613:28: warning: (373) implicit signed to unsigned conversion
EVSE.c:1617:28: warning: (373) implicit signed to unsigned conversion
EVSE.c:1804:22: warning: (373) implicit signed to unsigned conversion
EVSE.c:2188:50: warning: (373) implicit signed to unsigned conversion
EVSE.c:2272:43: warning: (373) implicit signed to unsigned conversion
EVSE.c:2339:25: warning: (373) implicit signed to unsigned conversion
EVSE.c:2340:23: warning: (373) implicit signed to unsigned conversion
EVSE.c:2341:33: warning: (373) implicit signed to unsigned conversion
EVSE.c:2342:30: warning: (373) implicit signed to unsigned conversion
EVSE.c:2352:20: warning: (373) implicit signed to unsigned conversion
EVSE.c:2367:22: warning: (373) implicit signed to unsigned conversion
EVSE.c:3087:86: warning: (373) implicit signed to unsigned conversion
::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2
utils.c:39:28: warning: (373) implicit signed to unsigned conversion
utils.c:105:130: warning: (373) implicit signed to unsigned conversion
utils.c:139:28: warning: (373) implicit signed to unsigned conversion
::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2
OneWire.c:184:43: warning: (373) implicit signed to unsigned conversion
OneWire.c:205:40: warning: (373) implicit signed to unsigned conversion
OneWire.c:230:44: warning: (373) implicit signed to unsigned conversion
OneWire.c:263:22: warning: (373) implicit signed to unsigned conversion
::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2
GLCD.c:92:28: warning: (373) implicit signed to unsigned conversion
GLCD.c:99:35: warning: (373) implicit signed to unsigned conversion
GLCD.c:101:30: warning: (373) implicit signed to unsigned conversion
GLCD.c:138:22: warning: (373) implicit signed to unsigned conversion
GLCD.c:161:22: warning: (373) implicit signed to unsigned conversion
GLCD.c:165:18: warning: (373) implicit signed to unsigned conversion
GLCD.c:173:31: warning: (373) implicit signed to unsigned conversion
GLCD.c:177:18: warning: (373) implicit signed to unsigned conversion
GLCD.c:198:21: warning: (373) implicit signed to unsigned conversion
GLCD.c:201:29: warning: (373) implicit signed to unsigned conversion
GLCD.c:222:38: warning: (373) implicit signed to unsigned conversion
GLCD.c:271:40: warning: (373) implicit signed to unsigned conversion
GLCD.c:274:34: warning: (373) implicit signed to unsigned conversion
GLCD.c:288:58: warning: (373) implicit signed to unsigned conversion
::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2
::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2
::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2
"/opt/microchip/xc8/v2.40/bin/xc8-cc"  -mcpu=18F26K22 -Wl,-Map=dist/default/production/SmartEVSE2.X.production.map  -DXPRJ_default=default  -Wl,--defsym=__MPLAB_BUILD=1    -fno-short-double -fno-short-float -memi=wordwrite -mrom=0-FCFB -O3 -maddrqual=ignore -xassembler-with-cpp -mwarn=-3 -Wa,-a -msummary=-psect,-class,+mem,-hex,-file  -ginhx32 -Wl,--data-init -mno-keep-startup -mno-download -mdefault-config-bits -std=c90 -gdwarf-3 -mstack=compiled:auto:auto:auto      -Wl,--memorysummary,dist/default/production/memoryfile.xml -o dist/default/production/SmartEVSE2.X.production.elf  build/default/production/EVSE.p1 build/default/production/GLCD.p1 build/default/production/bootloader.p1 build/default/production/utils.p1 build/default/production/modbus.p1 build/default/production/OneWire.p1 build/default/production/font2.p1 build/default/production/font.p1     
::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2
Non line specific message::: advisory: (1492) using updated 32-bit floating-point libraries; improved accuracy might increase code size
modbus.c:759:: warning: (765) degenerate unsigned comparison

Memory Summary:
    Program space        used  DE19h ( 56857) of  FCFCh bytes   ( 87.8%)
    Data space           used   7BFh (  1983) of   F38h bytes   ( 50.9%)
    Configuration bits   used     7h (     7) of     7h words   (100.0%)
    EEPROM space         used     0h (     0) of   400h bytes   (  0.0%)
    ID Location space    used     8h (     8) of     8h bytes   (100.0%)

make[2]: Leaving directory '/home/lhn/extsrc/SmartEVSE-2/SmartEVSE2.X'
make[1]: Leaving directory '/home/lhn/extsrc/SmartEVSE-2/SmartEVSE2.X'

BUILD SUCCESSFUL (total time: 17s)
Loading code from /home/lhn/extsrc/SmartEVSE-2/SmartEVSE2.X/dist/default/production/SmartEVSE2.X.production.hex...
Program loaded with pack,PIC18F-K_DFP,1.7.134,Microchip
Loading completed
@lhupfeldt
Copy link
Author

Should I worry about ::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2?

@mstegen
Copy link
Member

mstegen commented Nov 21, 2022

2.40 should be fine. I'll update the website soon.
As long as it compiles, which it does. it should be ok.

@bobosch
Copy link
Collaborator

bobosch commented Nov 22, 2022

Should I worry about

No, the free version of the compiler produces less optimized code which consumes more memory. As long as it fit into RAM... I use the free version, too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants