Author Topic: The problem of SE+Keil C51  (Read 15160 times)

koji

  • Community Member
  • Posts: 23
  • Hero Points: 0
The problem of SE+Keil C51
« on: September 17, 2009, 07:04:14 AM »
OS:WinXP
SE:V14.0.2.2
Keil:uV3, V8.17

I write a small program and built by SE, it is normal and shows "OBJECT TO HEX CONVERSION COMPLETED." .
When I build my product program(about 58K) by SE, the output window shows that:
*** FATAL ERROR L204: INVALID KEYWORD
    POS: 29
    D:\KEIL\C51\BIN\BL51.EXE RELEASE\LCD.O RELEASE\MAIN.O #
Unable to remove file 'E:\Work of Forsafe\Software\AFN-8A809WV21-source\SE_project\Release\'
*** Errors occurred during this build ***

PS:my product program built by Keil is normal.

koji

  • Community Member
  • Posts: 23
  • Hero Points: 0
Re: The problem of SE+Keil C51
« Reply #1 on: September 21, 2009, 04:45:42 AM »
nobody know this? :'( :'( :'( :'( :'( :'( :'( :'(

chrisant

  • Senior Community Member
  • Posts: 1410
  • Hero Points: 131
Re: The problem of SE+Keil C51
« Reply #2 on: September 21, 2009, 06:44:30 AM »
Have you checked the Keil reference material to look up L204?
What does POS 29 correspond to?
Those appear to be coming from Keil, not from SE.
So presumably there is some configuration/environment information that is present when you compile outside of SE, and that information has not yet been input into SE.
« Last Edit: September 21, 2009, 06:46:15 AM by chrisant »

Graeme

  • Senior Community Member
  • Posts: 2796
  • Hero Points: 347
Re: The problem of SE+Keil C51
« Reply #3 on: September 21, 2009, 12:12:53 PM »
The "unable to remove file" error message probably comes from slick, and since the "file" is actually a pathname it suggests there's something wrong with the way you've configured the project in slickedit.  What kind of project did you create and how do you invoke the compiler?  What build option did you select?  What commands does slickedit issue in the build window?

Graeme

koji

  • Community Member
  • Posts: 23
  • Hero Points: 0
Re: The problem of SE+Keil C51
« Reply #4 on: September 22, 2009, 01:38:05 AM »
Thank chrisant and Graeme.

I prefer to think the error message comes from the SE, because the product program buit by keil is normal.

Some addition information:
1. The small program built by SE normally only have one c file and one head file in the project. The product program have six C files and eight head files.
2. The build windows show (when the small program built successfully):
Program Size: data=32.0 xdata=0 code=264
LINK/LOCATE RUN COMPLETE.  0 WARNING(S),  0 ERROR(S)
Build successful
D:\Keil\C51\BIN\oh51.EXE "series_com.abs"  HEXFILE("series_com.hex")

OBJECT TO HEX FILE CONVERTER OH51 V2.6
COPYRIGHT KEIL ELEKTRONIK GmbH 1991 - 2001

GENERATING INTEL HEX FILE: series_com.hex

From this two point, I think the error occur in the linking process.

Hereinafter some configuration in the SE which I donnot know these mean and just copy from the internet.

Compile
command line: %(KEIL_C)\BIN\c51.exe  "%f"   OBJECT (%bd%n.o)  BROWSE DEBUG OBJECTEXTEND
Run from dir: %rw

Link
command line: %(KEIL_C)\BIN\BL51.EXE  %f TO "%rn.abs"

Build
command line: "%(VSLICKBIN1)vsbuild" build "%w" "%r"
run from dir: %rw

Rebuild
command line: "%(VSLICKBIN1)vsbuild" rebuild "%w" "%r"
run from dir: %rw
« Last Edit: September 22, 2009, 01:39:41 AM by koji »

Graeme

  • Senior Community Member
  • Posts: 2796
  • Hero Points: 347
Re: The problem of SE+Keil C51
« Reply #5 on: September 22, 2009, 03:19:27 AM »
I meant just the "unable to remove file" error message was slickedit.

L204 is a KEIL error message
http://www.keil.com/support/man/docs/bl51/bl51_l204.htm

also see this
http://www.keil.com/forum/docs/thread10676.asp
and check if you have any spaces in pathnames.

Graeme

koji

  • Community Member
  • Posts: 23
  • Hero Points: 0
Re: The problem of SE+Keil C51
« Reply #6 on: September 22, 2009, 09:01:44 AM »
I meant just the "unable to remove file" error message was slickedit.

L204 is a KEIL error message
http://www.keil.com/support/man/docs/bl51/bl51_l204.htm

also see this
http://www.keil.com/forum/docs/thread10676.asp
and check if you have any spaces in pathnames.

Graeme

I visited the link(http://www.keil.com/support/man/docs/bl51/bl51_l204.htm) before, because my product program can be built directly by keil, so I thought the error not from keil.

The pathnames of the files authentically have spaces(You can see that from "E:\Work of Forsafe\Software\AFN-8A809WV21-source\SE_project\Release\").

But I copy the files to another catalog which havenot the spaces in the pathnames last, and then Build the files, the build window still show this error:
*** FATAL ERROR L204: INVALID KEYWORD
    POS: 29
    D:\KEIL\C51\BIN\BL51.EXE RELEASE\LCD.O RELEASE\MAIN.O #
Unable to remove file 'E:\test\Release\'
*** Errors occurred during this build ***
« Last Edit: September 22, 2009, 10:57:19 AM by koji »

Graeme

  • Senior Community Member
  • Posts: 2796
  • Hero Points: 347
Re: The problem of SE+Keil C51
« Reply #7 on: September 22, 2009, 09:44:37 AM »
If you look at this thread
http://community.slickedit.com/index.php?topic=4590.0
and this
http://community.slickedit.com/index.php?topic=2374.0
you'll see the linker expects comma separated filenames but %f generates space separated names.

You could try the solutions suggested in those threads.

I'm also wondering whether RELEASE\LCD.O is going to be handled by the keil linker.

Graeme

koji

  • Community Member
  • Posts: 23
  • Hero Points: 0
Re: The problem of SE+Keil C51
« Reply #8 on: September 24, 2009, 03:55:20 AM »
Thanks, Graeme. I'll refer to these.