Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-22 Thread Alex
On 2018-03-23 02:00, Henri Beauchamp wrote:
> #elif defined(__linux__)
> CefString(_subprocess_path) = "dullahan_host";
> #endif
> 
> 
> Henri.


Well that certainly got me further! Thank you! Its' at least _trying_ to 
start dullahan_host now, but some strange behavour:

alex@desktop:~/ivyviewer$ grep dullahan trace.txt | pcregrep -o1 
'.*(execve\([a-z0-9\/_\"]+),'
execve("/usr/local/sbin/dullahan_host"
execve("/usr/local/bin/dullahan_host"
execve("/usr/sbin/dullahan_host"
execve("/usr/bin/dullahan_host"
execve("/sbin/dullahan_host"
execve("/bin/dullahan_host"
execve("/usr/games/dullahan_host"
execve("/usr/local/games/dullahan_host"
execve("/snap/bin/dullahan_host"

It is trying to launch it from the wrong place... lol! I am guessing I 
have failed to set some setting for dullahan somewhere or something 
silly like that.

Looks like I have some more debugging to do.

-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-22 Thread Alex
On 2018-03-23 02:00, Henri Beauchamp wrote:
> On Fri, 23 Mar 2018 01:48:08 +1000, Alex wrote:
> 
>> It does indeed sound like the viewer is subsequently spawning another
>> SLPlugin instead of dullahan_host, you are right. I have no idea why 
>> the
>> viewer would be doing that. From what I am aware, the viewer _should_
>> start one instance of SLPlugin and dullahan_host when its at the login
>> screen.
>> 
>> Do you have a rough idea (assuming the standard LL viewer behavior)
>> where these processes get launched from on startup (which part of the
>> viewer code)?
> 
> In fact, the viewer (and SLPlugin) code itself got no knowlegde of
> dullahan_host: the latter is launched (and gets passed arguments) by
> CEF, from a setting given in dullahan_impl.cpp, in 
> dullahan_impl::init()
> 
> My guess is that your plugin lacks a #elif defined(__linux__) and the
> corresponding CefString(_subprocess_path) there.
> Here is what I put in mine:
> #elif defined(__linux__)
> CefString(_subprocess_path) = "dullahan_host";
> #endif
> 
> Henri.

Ahhh!!! Thats going to be what it is for sure! I am missing that part in 
mine.. and it explains why I found no reference to the dullahan_host in 
my strace data.. Not even attempt to start it. It all makes sense now.

Thank you so much! I'll rebuild the plugin and the viewer and see how 
that goes.

-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-22 Thread Henri Beauchamp
On Fri, 23 Mar 2018 01:48:08 +1000, Alex wrote:

> It does indeed sound like the viewer is subsequently spawning another 
> SLPlugin instead of dullahan_host, you are right. I have no idea why the 
> viewer would be doing that. From what I am aware, the viewer _should_ 
> start one instance of SLPlugin and dullahan_host when its at the login 
> screen.
> 
> Do you have a rough idea (assuming the standard LL viewer behavior) 
> where these processes get launched from on startup (which part of the 
> viewer code)?

In fact, the viewer (and SLPlugin) code itself got no knowlegde of
dullahan_host: the latter is launched (and gets passed arguments) by
CEF, from a setting given in dullahan_impl.cpp, in dullahan_impl::init()

My guess is that your plugin lacks a #elif defined(__linux__) and the
corresponding CefString(_subprocess_path) there.
Here is what I put in mine:

bool dullahan_impl::init(dullahan::dullahan_settings& user_settings)
{
DLNOUT("dullahan_impl::init()");

#ifdef WIN32
CefMainArgs args(GetModuleHandle(nullptr));
#else
CefMainArgs args(0, nullptr);
#endif

CefSettings settings;

// point to host application
#ifdef WIN32
CefString(_subprocess_path) = "dullahan_host.exe";
#elif __APPLE__
NSString* appBundlePath = [[NSBundle mainBundle] bundlePath];
CefString(_subprocess_path) =
[[NSString stringWithFormat:
  
@"%@/Contents/Frameworks/DullahanHelper.app/Contents/MacOS/DullahanHelper", 
appBundlePath] UTF8String];
#elif defined(__linux__)
CefString(_subprocess_path) = "dullahan_host";
#endif

// Do not bother with the stupid sandbox which keeps failing under Windows
// and which must be set UID root under Linux...
settings.no_sandbox = true;

.../...


Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-22 Thread Henri Beauchamp
On Thu, 22 Mar 2018 16:31:29 +0100, Henri Beauchamp wrote:

> In my viewer, SLPlugin is never passed any other argument than the port,
> so maybe these arguments you see passed are an "extension" to Firestorm's
> plugin system...

In fact, looking at the processes for a viewer on at login sceen step, I get:

 4283 ?S  0:00 /bin/bash 
/usr/local/CoolVLViewer-1.26.21/cool_vl_viewer
 4309 ?SLl0:02 ./bin/cool_vl_viewer-bin
 4326 ?Sl 0:00 
/usr/local/CoolVLViewer-1.26.21/bin/llplugin/SLPlugin 41321
 4330 ?S  0:00 
/usr/local/CoolVLViewer-1.26.21/bin/llplugin/dullahan_host --type=zygote 
--no-sandbox --log-file=/root/.secondlife/ --product-version=(Dullahan:1.1.1080 
[64bit] - SecondLife/1.26.21.14 (Cool VL Viewer; default skin))  
Chrome/65.0.3325.146 [64bit] -
 4356 ?Sl 0:00 
/usr/local/CoolVLViewer-1.26.21/bin/llplugin/dullahan_host --type=renderer 
--no-sandbox --disable-gpu-compositing 
--service-pipe-token=3FECC7FC7B452E7F87FF8F85FB58EB32 --lang=en-US 
--log-file=/root/.secondlife/ --product-version=(Dullahan:1.1.1080 
 4357 ?Sl 0:00 dullahan_host --type=gpu-process --no-sandbox 
--log-file=/root/.secondlife/ --product-version=(Dullahan:1.1.1080 [64bit] - 
SecondLife/1.26.21.14 (Cool VL Viewer; default skin))  Chrome/65.0.3325.146 
[64bit] --lang=en-US --gpu-preferences=KA


So, the argument you are seeing are actually dullahan_host ones !

Could it be that your viewer launches SLPlugin instead of dullahan_host ?

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-22 Thread Henri Beauchamp
On Thu, 22 Mar 2018 23:39:51 +1000, Alex wrote:

> 2018-03-22T10:08:12Z llplugin/slplugin/slplugin.cpp(194) : error
> 2018-03-22T10:08:12Z ERROR: llplugin/slplugin/slplugin.cpp(194) : main: 
> port number must be numeric
> .../...
> 4589 execve("/home/alex/ivyviewer/bin/SLPlugin", 
> ["/home/alex/ivyviewer/bin/SLPlugin", "38655"], [/ 66 vars /]
> 
> 4592 execve("/home/alex/ivyviewer/bin/SLPlugin", 
> ["/home/alex/ivyviewer/bin/SLPlugin", "--type=zygote", "--lang=en-US", 
> "--log-file=/home/alex/ivyviewer/bin/debug.log", 
> "--product-version=(Dullahan:1.1.820 [64bit] - SecondLife/5.1.3.54978 
> (Firestorm-private-x64build; firestorm skin)) Chrome/59.0."...], [/ 69 
> vars /]
> 
> I am seeing SLPlugin called once correctly, with the port number it 
> expects, then it is being called a second time with data that it is not 
> expecting, thus the error condition is triggered in slplugin.cpp
> 
> I know this is a bit of a shot in the dark but can you think of any 
> possibilities why this could happen?

Hard to tell without having the sources to look at, but to me, it would
appear like an arguments quoting or missing argument issue in the command
line passed to SLPlugin...

In my viewer, SLPlugin is never passed any other argument than the port,
so maybe these arguments you see passed are an "extension" to Firestorm's
plugin system...

You'll have to follow the track in the code, starting from LLViewerMedia,
then LLPluginClassMedia, LLPluginProcessParent, LLProcessLauncher, etc...

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-22 Thread Alex
On 2018-03-21 19:30, Henri Beauchamp wrote:
> Yes, under Linux, ld uses the provided library  and searches for
> , lib.so, lib.a, etc...
> 
> But your problem was related to a bad call in your plugin (did you read
> my message dated Wed, 21 Mar 2018 00:43:41 +0100 ?).

Hi Henri,

I saw it. Ive resolved the loading issues of the plugin not loading. I 
no longer see symbol errors.

I have no working media still which is strange. I did notice an error in 
the log which looked suspicious so hopefully I am going down the right 
path here with troubleshooting it...

I notice there are no instances of SLPlugin running when my viewer 
starts, or any instance of dullahan_host, that immediately got me 
suspicious.

This is the error I saw in the log:

2018-03-22T10:08:12Z llplugin/slplugin/slplugin.cpp(194) : error
2018-03-22T10:08:12Z ERROR: llplugin/slplugin/slplugin.cpp(194) : main: 
port number must be numeric


I've looked at the code in slplugin.cpp and see this:
#elif LL_DARWIN || LL_LINUX
 if(argc < 2)
 {
 LL_ERRS("slplugin") << "usage: " << argv[0] << " 
launcher_port" << LL_ENDL;
 }

 U32 port = 0;
 if(!LLStringUtil::convertToU32(argv[1], port))
 {
 LL_ERRS("slplugin") << "port number must be numeric" << 
LL_ENDL;
 }

So the argc count is being satisfied... and obviously some parameter is 
being sent that obviously is not numeric and throwing the error.

I ran the viewer under strace and observed some interesting behavior:


4589 execve("/home/alex/ivyviewer/bin/SLPlugin", 
["/home/alex/ivyviewer/bin/SLPlugin", "38655"], [/ 66 vars /]

4592 execve("/home/alex/ivyviewer/bin/SLPlugin", 
["/home/alex/ivyviewer/bin/SLPlugin", "--type=zygote", "--lang=en-US", 
"--log-file=/home/alex/ivyviewer/bin/debug.log", 
"--product-version=(Dullahan:1.1.820 [64bit] - SecondLife/5.1.3.54978 
(Firestorm-private-x64build; firestorm skin)) Chrome/59.0."...], [/ 69 
vars /]

I am seeing SLPlugin called once correctly, with the port number it 
expects, then it is being called a second time with data that it is not 
expecting, thus the error condition is triggered in slplugin.cpp

I know this is a bit of a shot in the dark but can you think of any 
possibilities why this could happen?

Just thought I would ask since I am all out of ideas at this point.


-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-21 Thread Henri Beauchamp
On Wed, 21 Mar 2018 16:59:58 +1000, Alex wrote:

> Just a quick question about the above. In the list for 
> target_link_libraries, the first two make sense to me, but what is 'cef' 
> referring to? is it libcef.so?

Yes, under Linux, ld uses the provided library  and searches for
, lib.so, lib.a, etc...

But your problem was related to a bad call in your plugin (did you read
my message dated Wed, 21 Mar 2018 00:43:41 +0100 ?).

In media_plugin_cef.cpp, simply replace the calls to:
set*Callback(boost:bind(::on*Callback..., _1, ...))
with:
set*Callback(std:bind(::on*Callback,
  std::placeholders::_1, ...))

Or (to keep the boost interface and C++98 compatibility) use my plugin
and Dullahan versions, but you can't mix LL's C++11 Dullahan with the old
boost-wrapped calls in the CEF plugin.

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-21 Thread Alex
On 2018-03-20 23:28, Henri Beauchamp wrote:
> Or... This could be an issue in how you linked libdullahan.a and/or
> dullahan_host... In the Dullahan Cmake file, check for the proper
> ordering in target link libraries:
> 
> target_link_libraries(dullahan_host cef_dll_wrapper cef)

Just a quick question about the above. In the list for 
target_link_libraries, the first two make sense to me, but what is 'cef' 
referring to? is it libcef.so?

-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Wed, 21 Mar 2018 09:38:07 +1000, Alex wrote:

> libmedia_plugin_cef.so:00114cd0 T 
> dullahan::setOnStatusMessageCallback(boost::function (std::string)>)
> libmedia_plugin_cef.so: U 
> dullahan::setOnStatusMessageCallback(std::function)

The problem is that the dullahan::setOnStatusMessageCallback() definition
is using  ***boost::function*** and the plugin is calling
dullahan::setOnStatusMessageCallback(***std::function***)

So, the plugin is searching for another method than the one linked together
with libdullhana.a...

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
On 2018-03-21 09:33, Henri Beauchamp wrote:
> 
> It lists:
> U _ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE
> 
> So it indeed shows that the libdullahan.a library did not get properly
> linked to your plugin...
> 
> Henri.

Ah! You're right:

nm --print-file-name -C libmedia_plugin_cef.so | grep 
setOnStatusMessageCallback
libmedia_plugin_cef.so:0011ecf0 T 
dullahan_callback_manager::setOnStatusMessageCallback(std::function)
libmedia_plugin_cef.so:00114cd0 T 
dullahan::setOnStatusMessageCallback(boost::function)
libmedia_plugin_cef.so: U 
dullahan::setOnStatusMessageCallback(std::function)

A lot easier to read.

Would this suggest that the libdullahan.a library itself I am trying to 
link against is fine and there is a problem with the viewer build 
configuration somewhere?


-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Wed, 21 Mar 2018 08:58:55 +1000, Alex wrote:

> On 2018-03-21 07:57, monty wrote:
>
> > 'nm' that thing and see what is definition and what is reference.
> 
> I pasted the result here:
> 
> https://pastebin.com/BZyKEJf2
> 
> command used: nm --print-file-name -u libmedia_plugin_cef.so

With the -C option you would get more readable, demangled symbols...

> Lots of undefined symbols... So this means there is a reference but no 
> definition?

It lists:
U _ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE

So it indeed shows that the libdullahan.a library did not get properly
linked to your plugin...

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Wed, 21 Mar 2018 07:32:08 +1000, Alex wrote:

> On 2018-03-21 04:10, Henri Beauchamp wrote:
> > But only twice... I get it listed thrice in my plugin...
> > strings 
> > /usr/local/CoolVLViewer-1.26.21/bin/llplugin/media_plugin_cef.so |
> > grep _ZN8dullahan26setOnStatusMessageCallback
> > _ZN8dullahan26setOnStatusMessageCallbackEN5boost8functionIFvSsEEE
> > _ZN8dullahan26setOnStatusMessageCallbackEN5boost8functionIFvSsEEE
> > _ZN8dullahan26setOnStatusMessageCallbackEN5boost8functionIFvSsEEE
> > 
> > (there's "boost" because I "re-boostified" Dullhan's interface for
> > C++98 compatibility).
> 
> Ah. But in the case of boost and dullahan, it was making use of header 
> only parts of boost right?

Yes, only templates from the three boost/function.hpp, boost/bind.hpp and
boost/move/unique_ptr.hpp headers are used.

> Relinking libcef twice didnt help sadly.. I gave up for the night and 
> went to sleep hehe. Do you have any ideas what else might be causing it?

Beside a linking problem (either in libdullahan.a itself or in the plugin),
I'm short of ideas...


> On 3/20/2018 17:32, Alex wrote:
>
> > Interesting that that symbol is defined 3 times in your library.
> 
> 'nm' that thing and see what is definition and what is reference.

AFAIK, nm only lists exported symbols (i.e. the entries for the
definitions), not their invocations from another linked module (the
references).

nm -C /usr/local/CoolVLViewer-1.26.21/bin/llplugin/media_plugin_cef.so | grep 
setOnStatusMessageCallback
000ed710 T 
dullahan_callback_manager::setOnStatusMessageCallback(std::function)
000e4090 T dullahan::setOnStatusMessageCallback(boost::function)

These correspond to the two definitions of the homonymous methods in
the Dullahan's library classes 'dullahan' and 'dullahan_callback_manager',
but nm does not list the call to dullahan::setOnStatusMessageCallback()
from media_plugin_cef.cpp, which should correspond to the third string
in media_plugin_cef.so.

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
> On 2018-03-21 07:57, monty wrote:
>> 'nm' that thing and see what is definition and what is reference.

nm --print-file-name libmedia_plugin_cef.so | grep 
setOnStatusMessageCallback
libmedia_plugin_cef.so:0011ecf0 T 
_ZN25dullahan_callback_manager26setOnStatusMessageCallbackESt8functionIFvSsEE
libmedia_plugin_cef.so:00114cd0 T 
_ZN8dullahan26setOnStatusMessageCallbackEN5boost8functionIFvSsEEE
libmedia_plugin_cef.so: U 
_ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE

-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
On 2018-03-21 07:57, monty wrote:
> On 3/20/2018 17:32, Alex wrote:
>> 
>> Interesting that that symbol is defined 3 times in your library.
>> 
> 
> 'nm' that thing and see what is definition and what is reference.

I pasted the result here:

https://pastebin.com/BZyKEJf2

command used: nm --print-file-name -u libmedia_plugin_cef.so

Lots of undefined symbols... So this means there is a reference but no 
definition?



-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread monty
On 3/20/2018 17:32, Alex wrote:
> 
> Interesting that that symbol is defined 3 times in your library.
> 

'nm' that thing and see what is definition and what is reference.

___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
On 2018-03-21 04:10, Henri Beauchamp wrote:
> But only twice... I get it listed thrice in my plugin...
> strings 
> /usr/local/CoolVLViewer-1.26.21/bin/llplugin/media_plugin_cef.so |
> grep _ZN8dullahan26setOnStatusMessageCallback
> _ZN8dullahan26setOnStatusMessageCallbackEN5boost8functionIFvSsEEE
> _ZN8dullahan26setOnStatusMessageCallbackEN5boost8functionIFvSsEEE
> _ZN8dullahan26setOnStatusMessageCallbackEN5boost8functionIFvSsEEE
> 
> (there's "boost" because I "re-boostified" Dullhan's interface for
> C++98 compatibility).

Ah. But in the case of boost and dullahan, it was making use of header 
only parts of boost right?

Relinking libcef twice didnt help sadly.. I gave up for the night and 
went to sleep hehe. Do you have any ideas what else might be causing it? 
:)

Interesting that that symbol is defined 3 times in your library.

-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Tue, 20 Mar 2018 22:30:14 +1000, Alex wrote:

> On 2018-03-20 22:00, Alex wrote:
> > 2018-03-20T11:53:39Z WARNING: LLPluginInstance::load: apr_dso_load of
> > /home/alex/ivyviewer/bin/llplugin/libmedia_plugin_cef.so failed with
> > error 20019 , additional info string:
> > /home/alex/ivyviewer/bin/llplugin/libmedia_plugin_cef.so: undefined
> > symbol: _ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE
> > 
> > Any ideas what might be behind this one?
> 
> Something I noticed:
> 
> alex@desktop:~/ivyviewer/bin/llplugin$ strings libmedia_plugin_cef.so | 
> grep ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE
> _ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE
> _ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE
> 
> The symbol is there...

But only twice... I get it listed thrice in my plugin...
strings /usr/local/CoolVLViewer-1.26.21/bin/llplugin/media_plugin_cef.so |
grep _ZN8dullahan26setOnStatusMessageCallback
_ZN8dullahan26setOnStatusMessageCallbackEN5boost8functionIFvSsEEE
_ZN8dullahan26setOnStatusMessageCallbackEN5boost8functionIFvSsEEE
_ZN8dullahan26setOnStatusMessageCallbackEN5boost8functionIFvSsEEE

(there's "boost" because I "re-boostified" Dullhan's interface for
C++98 compatibility).

So, it looks indeed like a linking issue even though:

On Tue, 20 Mar 2018 23:20:59 +1000, Alex wrote:
 
> gcc/g++ version 4.9.4
> GNU ld (GNU Binutils for Ubuntu) 2.29.1

Using the same versions here, for personal builds, with no issue
whatsoever.

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
On 2018-03-20 23:28, Henri Beauchamp wrote:
> On Tue, 20 Mar 2018 14:15:09 +0100, Henri Beauchamp wrote:
> 
>> Looks fine to me... Putting the blame on a buggy ld, you could try 
>> this
>> trick (specifying libcef.so twice for linking) in CEFPlugin.cmake:
> 
> Or... This could be an issue in how you linked libdullahan.a and/or
> dullahan_host... In the Dullahan Cmake file, check for the proper
> ordering in target link libraries:
> 
> target_link_libraries(dullahan_host cef_dll_wrapper cef)

The ordering in the dullahan cmake file looks the same as above :)

I'll try the trick with linking libcef twice and see what happens :)

Thank you :)



-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Tue, 20 Mar 2018 14:15:09 +0100, Henri Beauchamp wrote:

> Looks fine to me... Putting the blame on a buggy ld, you could try this
> trick (specifying libcef.so twice for linking) in CEFPlugin.cmake:

Or... This could be an issue in how you linked libdullahan.a and/or
dullahan_host... In the Dullahan Cmake file, check for the proper
ordering in target link libraries:

target_link_libraries(dullahan_host cef_dll_wrapper cef)


Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
On 2018-03-20 23:15, Henri Beauchamp wrote:
> What is your Linux build system ?

Ubuntu 17.10 64 bit

gcc/g++ version 4.9.4
GNU ld (GNU Binutils for Ubuntu) 2.29.1

-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Tue, 20 Mar 2018 22:48:05 +1000, Alex wrote:

> I couldn't spot a problem in either of those files, but my eyes might 
> have missed something.
> 
> Does anything stand out at you:
> 
> https://pastebin.com/c7wRQik8 (indra/cmake/CEFPlugin.cmake)
> https://pastebin.com/ZhytizN8 (indra/media_plugins/cef/CMakeLists.txt)

Looks fine to me... Putting the blame on a buggy ld, you could try this
trick (specifying libcef.so twice for linking) in CEFPlugin.cmake:

.../...
elseif (LINUX)
  set(CEF_PLUGIN_LIBRARIES
  ${ARCH_PREBUILT_DIRS_RELEASE}/libcef.so
  -Wl,-whole-archive
  ${ARCH_PREBUILT_DIRS_RELEASE}/libcef_dll_wrapper.a
  ${ARCH_PREBUILT_DIRS_RELEASE}/libdullahan.a
  -Wl,-no-whole-archive
  ${ARCH_PREBUILT_DIRS_RELEASE}/libcef.so
  )
endif (WINDOWS)

What is your Linux build system ?

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
On 2018-03-20 22:33, Henri Beauchamp wrote:
> 
> Apparently a failure to properly link libdullahan.a to your plugin
> (the library should be statically linked and so apr_dso_load() should
> not search for this method symbol at all)...
> 
> Still something wrong in indra/cmake/CEFPlugin.cmake, or perhaps a
> failure to specify the $CEF_PLUGIN_LIBRARIES in
> indra/media_plugins/cef/CMakeLists.txt
> 
> Watch out for (similar) lines in it:
> 
> set(media_plugin_cef_LINK_LIBRARIES
>   ${LLPLUGIN_LIBRARIES}
>   ${MEDIA_PLUGIN_BASE_LIBRARIES}
>   ${CEF_PLUGIN_LIBRARIES}
>   ${LLCOMMON_LIBRARIES}
>   ${PLUGIN_API_LIBRARIES}
> )
> 
> Henri.

I couldn't spot a problem in either of those files, but my eyes might 
have missed something.

Does anything stand out at you:

https://pastebin.com/c7wRQik8 (indra/cmake/CEFPlugin.cmake)
https://pastebin.com/ZhytizN8 (indra/media_plugins/cef/CMakeLists.txt)



-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Tue, 20 Mar 2018 22:30:14 +1000, Alex wrote:

> The symbol is there... I'm not seeing any 'not found' errors when I 
> check that plugin with ldd.

Depending on your ld version (old ones are very sensitive to the library
link order), this could be an issue with not linking the libraries in the
proper order...

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Tue, 20 Mar 2018 22:00:36 +1000, Alex wrote:

> Well, I am a little closer :)
> 
> I have a different error now.
> 
> 2018-03-20T11:53:39Z WARNING: LLPluginInstance::load: apr_dso_load of 
> /home/alex/ivyviewer/bin/llplugin/libmedia_plugin_cef.so failed with 
> error 20019 , additional info string: 
> /home/alex/ivyviewer/bin/llplugin/libmedia_plugin_cef.so: undefined 
> symbol: _ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE
> 
> Any ideas what might be behind this one?

Apparently a failure to properly link libdullahan.a to your plugin
(the library should be statically linked and so apr_dso_load() should
not search for this method symbol at all)...

Still something wrong in indra/cmake/CEFPlugin.cmake, or perhaps a
failure to specify the $CEF_PLUGIN_LIBRARIES in
indra/media_plugins/cef/CMakeLists.txt

Watch out for (similar) lines in it:

set(media_plugin_cef_LINK_LIBRARIES
  ${LLPLUGIN_LIBRARIES}
  ${MEDIA_PLUGIN_BASE_LIBRARIES}
  ${CEF_PLUGIN_LIBRARIES}
  ${LLCOMMON_LIBRARIES}
  ${PLUGIN_API_LIBRARIES}
)

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
On 2018-03-20 22:00, Alex wrote:
> 2018-03-20T11:53:39Z WARNING: LLPluginInstance::load: apr_dso_load of
> /home/alex/ivyviewer/bin/llplugin/libmedia_plugin_cef.so failed with
> error 20019 , additional info string:
> /home/alex/ivyviewer/bin/llplugin/libmedia_plugin_cef.so: undefined
> symbol: _ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE
> 
> Any ideas what might be behind this one?

Something I noticed:

alex@desktop:~/ivyviewer/bin/llplugin$ strings libmedia_plugin_cef.so | 
grep ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE
_ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE
_ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE

The symbol is there... I'm not seeing any 'not found' errors when I 
check that plugin with ldd.

I have no idea what it might be. Strange.


-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
On 2018-03-20 20:34, Henri Beauchamp wrote:
> Yes, obviously, libcef.so did not get linked with your plugin...
> 
> Check your indra/cmake/CEFPlugin.cmake: the library names changed 
> there,
> from libllceflib.a to libdullahan.a. Note also the bit of vodoo magic
> needed under Linux to avoid seeing ld "optimizing out" the functions 
> that
> are needed in libcef_dll_wrapper.a and libdullahan.a. It should look 
> like
> this (note the -Wl,-[no-]whole-archive options):
> 
> if (LINUX)
>   set(CEF_PLUGIN_LIBRARIES
>   -Wl,-whole-archive
>   ${ARCH_PREBUILT_DIRS_RELEASE}/libcef_dll_wrapper.a
>   ${ARCH_PREBUILT_DIRS_RELEASE}/libdullahan.a
>   -Wl,-no-whole-archive
>   ${ARCH_PREBUILT_DIRS_RELEASE}/libcef.so
>   )
> endif ()
> 
> Henri.

Well, I am a little closer :)

I have a different error now.

2018-03-20T11:53:39Z WARNING: LLPluginInstance::load: apr_dso_load of 
/home/alex/ivyviewer/bin/llplugin/libmedia_plugin_cef.so failed with 
error 20019 , additional info string: 
/home/alex/ivyviewer/bin/llplugin/libmedia_plugin_cef.so: undefined 
symbol: _ZN8dullahan26setOnStatusMessageCallbackESt8functionIFvSsEE

Any ideas what might be behind this one?

-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
On 2018-03-20 20:34, Henri Beauchamp wrote:
> 
> Yes, obviously, libcef.so did not get linked with your plugin...
> 
> Check your indra/cmake/CEFPlugin.cmake: the library names changed 
> there,
> from libllceflib.a to libdullahan.a. Note also the bit of vodoo magic
> needed under Linux to avoid seeing ld "optimizing out" the functions 
> that
> are needed in libcef_dll_wrapper.a and libdullahan.a. It should look 
> like
> this (note the -Wl,-[no-]whole-archive options):
> 
> if (LINUX)
>   set(CEF_PLUGIN_LIBRARIES
>   -Wl,-whole-archive
>   ${ARCH_PREBUILT_DIRS_RELEASE}/libcef_dll_wrapper.a
>   ${ARCH_PREBUILT_DIRS_RELEASE}/libdullahan.a
>   -Wl,-no-whole-archive
>   ${ARCH_PREBUILT_DIRS_RELEASE}/libcef.so
>   )
> endif ()
> 
> Henri.

Ah!! Yes! That will do it... I just checked that cmake file and that 
section was wrong (and missing things). I'll try another rebuild with 
that. I have a feeling thats going to fix it! Now how can I send you a 
nice bottle of wine? :D

Thank you so much! appreciate it!

-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Tue, 20 Mar 2018 19:58:49 +1000, Alex wrote:

> This is what I get:
> alex@desktop:~/ivyviewer$ LD_LIBRARY_PATH="./lib:$LD_LIBRARY_PATH" ldd 
> ./bin/llplugin/libmedia_plugin_cef.so
>  linux-vdso.so.1 =>  (0x7ffcedd68000)
>  librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 
> (0x7f07a805e000)
>  libaprutil-1.so.0 => ./lib/libaprutil-1.so.0 
> (0x7f07a7e15000)
>  libapr-1.so.0 => ./lib/libapr-1.so.0 (0x7f07a7be5000)
>  libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 
> (0x7f07a785f000)
>  libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 
> (0x7f07a7509000)
>  libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 
> (0x7f07a72f2000)
>  libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 
> (0x7f07a70d3000)
>  libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 
> (0x7f07a6cf3000)
>  /lib64/ld-linux-x86-64.so.2 (0x7f07a867)
>  libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 
> (0x7f07a6aee000)
>  libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 
> (0x7f07a68b6000)
>  libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 
> (0x7f07a66b2000)
> 
> alex@desktop:~/ivyviewer$ find . -name 'libcef.so'
> ./lib/libcef.so
> 
> I would have expected to see a 'not found' in the ldd output if it had 
> not been copied or it was sitting somewhere outside of LD_LIBRARY_PATH. 
> Is it likely has gotten screwed up during the link of 
> libmedia_plugin_cef.so?

Yes, obviously, libcef.so did not get linked with your plugin...

Check your indra/cmake/CEFPlugin.cmake: the library names changed there,
from libllceflib.a to libdullahan.a. Note also the bit of vodoo magic
needed under Linux to avoid seeing ld "optimizing out" the functions that
are needed in libcef_dll_wrapper.a and libdullahan.a. It should look like
this (note the -Wl,-[no-]whole-archive options):

if (LINUX)
  set(CEF_PLUGIN_LIBRARIES
  -Wl,-whole-archive
  ${ARCH_PREBUILT_DIRS_RELEASE}/libcef_dll_wrapper.a
  ${ARCH_PREBUILT_DIRS_RELEASE}/libdullahan.a
  -Wl,-no-whole-archive
  ${ARCH_PREBUILT_DIRS_RELEASE}/libcef.so
  )
endif ()

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex
> Hi Henri!
> 
> Thank you for responding.
> 
> This is what I get:
> alex@desktop:~/ivyviewer$ LD_LIBRARY_PATH="./lib:$LD_LIBRARY_PATH" ldd
> ./bin/llplugin/libmedia_plugin_cef.so
>  linux-vdso.so.1 =>  (0x7ffcedd68000)
>  librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1
> (0x7f07a805e000)
>  libaprutil-1.so.0 => ./lib/libaprutil-1.so.0
> (0x7f07a7e15000)
>  libapr-1.so.0 => ./lib/libapr-1.so.0 (0x7f07a7be5000)
>  libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6
> (0x7f07a785f000)
>  libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6
> (0x7f07a7509000)
>  libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1
> (0x7f07a72f2000)
>  libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
> (0x7f07a70d3000)
>  libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6
> (0x7f07a6cf3000)
>  /lib64/ld-linux-x86-64.so.2 (0x7f07a867)
>  libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1
> (0x7f07a6aee000)
>  libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1
> (0x7f07a68b6000)
>  libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2
> (0x7f07a66b2000)
> 
> alex@desktop:~/ivyviewer$ find . -name 'libcef.so'
> ./lib/libcef.so
> 
> I would have expected to see a 'not found' in the ldd output if it had
> not been copied or it was sitting somewhere outside of LD_LIBRARY_PATH.
> Is it likely has gotten screwed up during the link of
> libmedia_plugin_cef.so?

Interestingly if I run ldd against a pre dullahan era instance of FS:

alex@desktop:~/fs_avx2/bin/llplugin$ ldd libmedia_plugin_cef.so
 linux-vdso.so.1 =>  (0x7fff637d2000)
 libllceflib.so => not found
 librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 
(0x7f341b9ed000)
 libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 
(0x7f341b7c2000)
 libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 
(0x7f341b43c000)
 libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 
(0x7f341b0e6000)
 libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 
(0x7f341aecf000)
 libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 
(0x7f341aaef000)
 /lib64/ld-linux-x86-64.so.2 (0x7f341bffd000)
 libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 
(0x7f341a8d)

The 'not found' is probably just due to LD_LIBRARY_PATH not being set. 
But at least the dependency is there! In my problematic install it seems 
the dependency is completely missing!

I'm guessing something has gone bad during the link of 
libmedia_plugin_cef

Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Alex

On 2018-03-20 19:35, Henri Beauchamp wrote:
> On Tue, 20 Mar 2018 10:24:24 +0100, Henri Beauchamp wrote:
> 
>> On Tue, 20 Mar 2018 10:22:43 +0100, Henri Beauchamp wrote:
>> 
>> > LD_LIRABRY_PATH="./lib:$LD_LIRABRY_PATH" ldd ./path 
>> > bin/llplugin/libmedia_plugin_cef.so
>> 
>> I meant:
>> LD_LIRABRY_PATH="./lib:$LD_LIRABRY_PATH" ldd 
>> ./bin/llplugin/libmedia_plugin_cef.so
> 
> And without the typos in "library", it actually is:
> LD_LIBRARY_PATH="./lib:$LD_LIBRARY_PATH" ldd
> ./bin/llplugin/libmedia_plugin_cef.so
> 
> * drinks a cup of strong expresso, slaps his face twice and re-reads 
> thrice *
> Should be OK, this time...
> 
> Henri.
> ___
> Policies and (un)subscribe information available here:
> http://wiki.secondlife.com/wiki/OpenSource-Dev
> Please read the policies before posting to keep unmoderated posting 
> privileges

Hi Henri!

Thank you for responding.

This is what I get:
alex@desktop:~/ivyviewer$ LD_LIBRARY_PATH="./lib:$LD_LIBRARY_PATH" ldd 
./bin/llplugin/libmedia_plugin_cef.so
 linux-vdso.so.1 =>  (0x7ffcedd68000)
 librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 
(0x7f07a805e000)
 libaprutil-1.so.0 => ./lib/libaprutil-1.so.0 
(0x7f07a7e15000)
 libapr-1.so.0 => ./lib/libapr-1.so.0 (0x7f07a7be5000)
 libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 
(0x7f07a785f000)
 libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 
(0x7f07a7509000)
 libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 
(0x7f07a72f2000)
 libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 
(0x7f07a70d3000)
 libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 
(0x7f07a6cf3000)
 /lib64/ld-linux-x86-64.so.2 (0x7f07a867)
 libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 
(0x7f07a6aee000)
 libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 
(0x7f07a68b6000)
 libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 
(0x7f07a66b2000)

alex@desktop:~/ivyviewer$ find . -name 'libcef.so'
./lib/libcef.so

I would have expected to see a 'not found' in the ldd output if it had 
not been copied or it was sitting somewhere outside of LD_LIBRARY_PATH. 
Is it likely has gotten screwed up during the link of 
libmedia_plugin_cef.so?

Kind Regards,
Alex.

-- 
Kind Regards,
Alex.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Tue, 20 Mar 2018 10:24:24 +0100, Henri Beauchamp wrote:

> On Tue, 20 Mar 2018 10:22:43 +0100, Henri Beauchamp wrote:
> 
> > LD_LIRABRY_PATH="./lib:$LD_LIRABRY_PATH" ldd ./path 
> > bin/llplugin/libmedia_plugin_cef.so
> 
> I meant:
> LD_LIRABRY_PATH="./lib:$LD_LIRABRY_PATH" ldd 
> ./bin/llplugin/libmedia_plugin_cef.so

And without the typos in "library", it actually is:
LD_LIBRARY_PATH="./lib:$LD_LIBRARY_PATH" ldd 
./bin/llplugin/libmedia_plugin_cef.so

* drinks a cup of strong expresso, slaps his face twice and re-reads thrice *
Should be OK, this time...

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Tue, 20 Mar 2018 10:22:43 +0100, Henri Beauchamp wrote:

> LD_LIRABRY_PATH="./lib:$LD_LIRABRY_PATH" ldd ./path 
> bin/llplugin/libmedia_plugin_cef.so

I meant:
LD_LIRABRY_PATH="./lib:$LD_LIRABRY_PATH" ldd 
./bin/llplugin/libmedia_plugin_cef.so

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges


Re: [opensource-dev] Linux x64 - libmedia_plugin_cef.so error

2018-03-20 Thread Henri Beauchamp
On Tue, 20 Mar 2018 18:45:54 +1000, Alex wrote:

> I am working to try and get a Linux version of the FS viewer running and 
> I have been successful for the most part after fixing a bunch of build 
> issues.. however I seem to have an issue with CEF failing in the new 
> viewer, this can be seen in the logs:
> 
> 2018-03-20T07:44:13Z WARNING: LLPluginInstance::load: apr_dso_load of 
> /home/alex/fsivy/bin/llplugin/libmedia_plugin_cef.so failed with error 
> 20019 , additional info string: 
> /home/alex/fsivy/bin/llplugin/libmedia_plugin_cef.so: undefined symbol: 
> AtomicOps_Internalx86CPUFeatures
> 
> Some Googling reveals that AtomicOps_Internalx86CPUFeatures is part of 
> CEF? Has something gone wrong with linking somewhere?
> 
> What might have gone wrong for this to happen? I am out of ideas as to 
> what it might be. Any thoughts appreciated.

When typed from a terminal pointing in your viewer directory, what does

LD_LIRABRY_PATH="./lib:$LD_LIRABRY_PATH" ldd ./path 
bin/llplugin/libmedia_plugin_cef.so

tells you ?

If it can't find libcef.so, then it would explain it...

Make sure your viewer_manifest.py script does properly copy all the CEF
libraries, binaries and resources in the right places.

Also, you will find a working Dullahan Linux plugin on the Cool VL Viewer
site (in http://sldev.free.fr/libraries/ ), as well as the corresponding
sources (in http://sldev.free.fr/libraries/sources/ ). Note however that
this is a modified version with extended parameters for CEF (to learn how to
use them, have a look at indra/media_plugins/libvlc/media_plugin_libvlc.cpp
in the sources for the Cool VL Viewer v1.26.21.x). This plugin can also be
used to compile the viewer with a non C++11 compliant compiler (e.g. with
gcc v4.6, even though you will still need to link the viewer to a version
of libstdc++.so v6.0.19 or newer (shipped with gcc v4.8 or newer), since
this is what libcef.so expects), unlike LL's version.

Regards,

Henri.
___
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges