This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Undefined symbol

I can not compile a very simple PWM program on Keil
The same program is compiled on Energia
The message that I get is below:
For your information main.c is in the source file and I use C not C++.

µVision Build Log

Project:

C:\Keil\MyPojects\PortF\Led.uvproj
Project File Date: 04/24/2018

Output:

Build target 'PWithM'
assembling startup_TM4C123.s...
compiling main.c...
linking...
.\LedMain.axf: Error: L6218E: Undefined symbol GPIOPinConfigure (referred from main.o).
.\LedMain.axf: Error: L6218E: Undefined symbol GPIOPinTypePWM (referred from main.o).
.\LedMain.axf: Error: L6218E: Undefined symbol PWMGenConfigure (referred from main.o).
.\LedMain.axf: Error: L6218E: Undefined symbol PWMGenEnable (referred from main.o).
.\LedMain.axf: Error: L6218E: Undefined symbol PWMGenPeriodSet (referred from main.o).
.\LedMain.axf: Error: L6218E: Undefined symbol PWMOutputState (referred from main.o).
.\LedMain.axf: Error: L6218E: Undefined symbol PWMPulseWidthSet (referred from main.o).
.\LedMain.axf: Error: L6218E: Undefined symbol SysCtlDelay (referred from main.o).
.\LedMain.axf: Error: L6218E: Undefined symbol SysCtlPWMClockSet (referred from main.o).
.\LedMain.axf: Error: L6218E: Undefined symbol SysCtlPeripheralEnable (referred from main.o).
Not enough information to list image symbols.
Finished: 1 information, 0 warning and 10 error messages.
".\LedMain.axf" - 10 Error(s), 0 Warning(s).
Target not created

  • Suggests you're missing a bunch of source files, or a library, that you supplied with Energia.

    The Linker will get closure when you supply all the pieces.

  • Energia is TI's Arduino-alike - isn't it?

    So I guess - like Arduino - it hides a lot of necessary detail from you. Like providing necessary libraries.

    Now you're moving to Keil, You're going to have to do all that yourself.

    You should probably look to TI for support in taking an Energia project into a "conventional" development environment.
    Perhaps they have a tool in their Code Composer Studio ... ?
    (rather like Atmel do for importing Arduino stuff into Atmel Studio).

    But you would have to ask TI about that.

  • I added all c files and now it builds correctly

    µVision Build Log

    Project:

    C:\Keil\MyPojects\PortF\Led.uvproj
    Project File Date: 04/26/2018

    Output:

    Build target 'PWithM'
    compiling main.c...
    compiling gpio.c...
    compiling pwm.c...
    compiling sysctl.c...
    compiling interrupt.c...
    compiling cpu.c...
    linking...
    Program Size: Code=6712 RO-data=1900 RW-data=620 ZI-data=612
    ".\LedMain.axf" - 0 Error(s), 0 Warning(s).

    But when I want to debug by step over I have :

    *** error 65: access violation at 0x400FE608 : no 'write' permission
    *** error 65: access violation at 0x400FE640 : no 'write' permission
    *** error 65: access violation at 0x400FE060 : no 'read' permission
    *** error 65: access violation at 0x400FE060 : no 'write' permission
    *** error 65: access violation at 0x40025520 : no 'write' permission
    *** error 65: access violation at 0x40025524 : no 'read' permission
    *** error 65: access violation at 0x40025524 : no 'write' permission
    *** error 65: access violation at 0x400FE06C : no 'read' permission

    do you have any idea

  • All the other "Error 65" posts are from people using the Simulator on parts Keil does not support simulation on. Use the debugger on real hardware.