RTL_ENTRY_POINT value and dlsym error number set problem
박형식
hspark at satreci.com
Mon Aug 18 07:50:27 UTC 2014
Hi~
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
this.
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"
#else
#define RTL_ENTRY_POINT "rtems"
#endif
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
rtems_rap_get_rtl_error().
Please check this problem.
Thank you for your answer!
Regards,
-------------- 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