Hi Shawn,

On 12/21/2011 04:08 PM, Shawn Ferris wrote:
> On Wed, Dec 21, 2011 at 7:55 AM, Daniel Wagner<[email protected]>  wrote:
>> Nothing really obviously wrong. Could you post the output of 'nm
>> /root/panda/build-root/git/output/target/usr/lib/connman/plugins/SOME_PLUGIN'
>
> I wasn't able to use nm on the target location:
>
> # nm target/usr/lib/connman/plugins/bluetooth.so
> nm: target/usr/lib/connman/plugins/bluetooth.so: no symbols
>
> But here it is from the build directory itself:

Hmm, the symbols are there, all looks okayish. 

int __connman_plugin_init(const char *pattern, const char *exclude)
{

[...]
        dir = g_dir_open(PLUGINDIR, 0, NULL);
        if (dir != NULL) {
                while ((file = g_dir_read_name(dir)) != NULL) {
                        void *handle;
                        struct connman_plugin_desc *desc;

                        if (g_str_has_prefix(file, "lib") == TRUE ||
                                        g_str_has_suffix(file, ".so") == FALSE)
                                continue;

                        filename = g_build_filename(PLUGINDIR, file, NULL);

                        handle = dlopen(filename, PLUGINFLAG);
                        if (handle == NULL) {
                                connman_error("Can't load %s: %s",
                                                        filename, dlerror());
                                g_free(filename);
                                continue;
                        }
[...]
}

dlopen bails out with a NULL pointer which results in the error you posted
at the beginning. I looked over the man page of dlopen but didn't find any
idea what could go wrong. 

cheers,
daniel

_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman

Reply via email to