Linking error


#1

Hi all, i´m geting the flowwing error while compiling my poject:

… Link gcc_Rastel_32.bin …

/cygdrive/C/OpenAT/Tools/GCC/bin/arm-elf-nm: gcc_Rastel_32.elf: No such file or directory
make: *** [make_single_bin] Error 1

i´m trying to use the wm_osDeleteAllFlashData() function. the header file wm_os.h is included in my project and is located in the gcc/out directory.

any ideas?

Sérgio


#2

Hi Sérgio,
Are you using ADL mode/ OAT standard mode? I am asking this because, the API, wm_osDeleteAllFlashData() is available for Open-AT standard mode. It is not available in ADL mode. From the compilation log, it can be seen that the problem is during the linking process. To find the exact cause of the problem, please open the gcc_projectname_32_err_lnk.tmp file present in the project_workspace/gcc/out directory. This file will indicate the cause of the linking error.

Best Regards,
Open-AT Fan.


#3

Hi Open-AT Fan, I´m using ADL… Is there anythig that i could do to erase flash from ADL?

Best regards,
Sérgio


#4

Hi Sérgio,
To erase the flash objects from your Open-AT application, you can use adl_flhErase () API. This would erase the flash objects. Please note that for each flash subscription, that has been done in the application, a separate adl_flhErase () has to be called. You can use ADL_FLH_ALL_IDS to erase all the objects associated with a handler.
It should be noted that the handle will not be erased when you call adl_flhErase () API. Only the flash objects (which are associated with a handle) will be erased. To erase the flash handle itself you have to use AT+WOPEN=3 command.
This command cannot be executed from within the Open-AT application as it would return +CME ERROR: 532.

Hence, using ADL, you can erase the flash objects (for which you know the flash handle value), but you cannot erase the handles itself.
Let’s hope that Wavecom will incorporate APIs to erase the flash handles too in next releases of Open-AT.

Best Regards,
Open AT Fan.