RTL_ENTRY_POINT value and dlsym error number set problem

박형식 hspark at satreci.com
Mon Aug 18 07:50:27 UTC 2014



When link application, I pass entry symbol for application(ex. rtems-ld -e
app_main). But in “rtems_rap_load()” function, Call dlsym() function like

ini = dlsym (app->handle, RTL_ENTRY_POINT);

fini = dlsym (app->handle, RTL_ENTRY_POINT);


and RTL_ENTRY_POINT is defined like this.

#if (RTL_GLUE(__USER_LABEL_PREFIX__, 1) == RTL_GLUE(_, 1))

  #define RTL_ENTRY_POINT "_rtems"


  #define RTL_ENTRY_POINT "rtems"



Why pass entry symbol of application when application link?


And second,

If can’t find entry point symbol when rap loading, any error is not set. 

In rtems_rap_load function,

init = dlsym (app->handle, RTL_ENTRY_POINT);

    if (!init)


      rtems_rap_get_rtl_error ();

      rtems_rap_app_free (app);

      rtems_rap_unlock ();

      return false;



When failed search RTL_ENTRY_POINT, any error is not set. But call


Please check this problem. 


Thank you for your answer!



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20140818/0a72ba61/attachment-0001.html>

More information about the users mailing list