User to user discussion and support for UltraEdit, UEStudio, UltraCompare, and other IDM applications.

Building, compiling, or debugging issues
3 posts Page 1 of 1
I ported a Silab project, (using Keil Version 8 compiler), but could not link the project correctly. I then saw that the file names are truncated to the old DOS style. However if the file names are short (less than eight) this causes no problem, but with file names with an underscore or longer it does. I need a linker setting "CODE (?PR?*?LOADER_F33X(7000H))" for instance, but the file is now "LOADER_1" instead of "LOADER_F33X". The second problem is that if I want to compile a single file with "shift F7", and the file name is long or with an underscore in, it only replies with.

"--------------------Configuration: romeo - Debug--------------------
don't know how to make 'eeprom_i2c.obj'
eeprom_i2c.obj - 0 error(s), 0 warning(s).


The third problem is that these names is also in the debugging info.

These files however if build, does compile with no error.

Why are the file names truncated to DOS format, or how can I force "long file names"?

Thanks in Advance


Old system output (correct)
//---------------------------------------
BL51 BANKED LINKER/LOCATER V6.02, INVOKED BY:
C:\SILABS\KEIL\C51\BIN\BL51.EXE C:\8051\integrat\romeo\var.obj, C:\8051\integr
>> at\romeo\checksum.obj, C:\8051\integrat\romeo\eeprom_i2c.obj, C:\8051\integ
>> rat\romeo\loader_F33x.obj, C:\8051\integrat\romeo\main.obj, C:\8051\integra
>> t\romeo\romeo_hw_init.obj, C:\8051\integrat\romeo\uart.obj, C:\8051\integra
>> t\romeo\util.obj, C:\8051\integrat\romeo\main_modem.obj, C:\8051\integrat\r
>> omeo\gprintf.obj, C:\8051\integrat\romeo\modem.obj TO C:\8051\integrat\rome
>> o\romeo RS (256) PL (68) PW (78) CODE (?PR?*?LOADER_F33X (7000H))

// New project output
BL51 BANKED LINKER/LOCATER V6.02, INVOKED BY:
BL51 CHECKSUM.OBJ, EEPROM~1.OBJ, LOADER~1.OBJ, MAIN.OBJ, ROMEO_~1.OBJ, UART.OB
>> J, VAR.OBJ, UTIL.OBJ, MODEM.OBJ, MAIN_M~1.OBJ, GPRINTF.OBJ TO ROMEO.O51 RS
>> (256) PL (68) PW (78) CODE (?PR?*?LOADER_1 (7000H))
Click on Build - Set Compiler Options and look if you can see a setting for using old DOS format for file names or not.

If there is no such setting do following:

Click on Build - Select Compiler and verify having selected the correct compiler.

Click in this dialog on button Edit Configuration. The dialog increases and shows you now on right side the compiler config file.

Scroll down in the config file to the section [General] and search there for following line:

UseDosNames=1

Change the value to 0, press button Make Configuration Local and then Save Configuration.

Hopefully your compiler is really a 32 bit console application supporting long file names.
Best regards from Austria
Thanks, yes that did the trick.

Regards
3 posts Page 1 of 1