64-bit Opera + 32-bit plugins SOLUTION!

Forums » Opera for Windows/Mac/Linux » Opera for *nix - Linux/FreeBSD

You need to be logged in to post in the forums. If you do not have an account, please sign up first.

Go to last post

21. September 2007, 18:31:26

Chewi

Posts: 82

64-bit Opera + 32-bit plugins SOLUTION!

Hey guys. I decided to give the new 64-bit Opera a go and thought I'd try my luck with nspluginwrapper. No joy there as other people have found but just as I went back to the 32-bit version, I had a brilliant idea. Opera effectively runs its plugins in a wrapper anyway - operapluginwrapper. So what if I take operapluginwrapper from the 32-bit version and replace the 64-bit version? It was certainly worth a shot. I replaced both operapluginwrapper and operaplugincleaner, fired up 64-bit Opera and... IT WORKS!! party

Am I the first person to try this? I don't see it mentioned here. Doing this will prevent any 64-bit plugins from working but there aren't exactly many of those around. But I could reckon I could write a script that would somehow allow both to work. A wrapper for the wrapper! I'll let you know if I try that.

21. September 2007, 22:15:23

Soleen

Posts: 397

hey nice trick smile Worked here!
---
LifE iS BeauTiful smile

21. September 2007, 22:54:05

Chewi

Posts: 82

That script was easier to write than I thought. Turns out the 64-bit operaplugincleaner works with either. Rename the 64-bit operapluginwrapper to operapluginwrapper64. Grab the 32-bit operapluginwrapper and call that operapluginwrapper32. Then create a new file called operapluginwrapper and insert the code below. Don't forget to chmod 755 it.

#!/bin/sh

if [[ -n `echo ${@} | egrep "\/[^ ]*64"` ]]; then
        exec ${OPERA_BINARYDIR}/operapluginwrapper64 ${@}
else
        exec ${OPERA_BINARYDIR}/operapluginwrapper32 ${@}
fi


Any plugins with 64 in the path will use the 64-bit version. Anything else will use the 32-bit version. If you use nspluginwrapper for Firefox, make sure you put the 32-bit paths above the 64-bit ones or just disable the 64-bit ones entirely. Also remember that Flash must be picked up from a folder without "netscape" in the path otherwise things like YouTube won't work properly.

22. September 2007, 14:43:33

feld

Posts: 27

I attempted to make this work before you went as far as using the script for 64bit/32bit and just replaced them with the 32bit ones, right? Well flash didn't work. All I got was a grey box. The plugin showed up in opera:plugins, but it just wouldn't work. What flash version are you using?

22. September 2007, 15:22:11

Ledah

Posts: 18

Thank you. It works, though the performance isn't very good.

Originally posted by Chewi:

If you use nspluginwrapper for Firefox, make sure you put the 32-bit paths above the 64-bit ones or just disable the 64-bit ones entirely.


What paths do you mean? Currently Opera shows only the 32-bit plugins, but I want to use the 64-bit plugins, too.
Sidux Γαια 64bit | Xorg 7.3 | Opera 9.50 Alpha Build 1600

22. September 2007, 15:44:28

Case1

Posts: 136

Originally posted by feld:

I attempted to make this work before you went as far as using the script for 64bit/32bit and just replaced them with the 32bit ones, right? Well flash didn't work. All I got was a grey box. The plugin showed up in opera:plugins, but it just wouldn't work. What flash version are you using?



In my experience it doesnt work with the latest (yesterdays) weekly, but it does with the previous two...

22. September 2007, 16:12:45

Ledah

Posts: 18

I have the latest weekly installed and it works (half-way).
Sidux Γαια 64bit | Xorg 7.3 | Opera 9.50 Alpha Build 1600

22. September 2007, 18:37:31

Chewi

Posts: 82

I'm using Opera build 1859 and Flash 9.0.48. Performance doesn't appear to be any worse than with the 32-bit Opera. I wouldn't say it's great but that's Flash 9's fault apparently.

The paths you should use and the order you should put them in may depend on your distro and where you have your plugins installed. I'm on Gentoo and have libflashplayer.so and nppdf.so in /opt/netscape/plugins with symlinks in /usr/lib32/nsbrowser/plugins. I also have nspluginwrapper in /usr/lib64/nsbrowser/plugins. My order is...

/usr/lib32/nsbrowser/plugins
/usr/lib64/nsbrowser/plugins
/opt/opera/lib/opera/plugins
/home/chewi/.netscape6/plugins
/home/chewi/.netscape/plugins
/opt/netscape/plugins

I have /usr/lib64/nsbrowser/plugins disabled since I don't have any 64-bit plugins besides nspluginwrapper (which is useless for Opera) and I have /opt/netscape/plugins disabled because all the plugins there are symlinked in /usr/lib32/nsbrowser/plugins. Enabling these doesn't break anything though since the order ensures that the right plugins are loaded from the right locations.

22. September 2007, 18:40:02

Case1

Posts: 136

Ah, so it's a bit more complicated in my case, as I've found out. Only the latest flashplayer beta (r60) works here with the latest weekly (build 1589), be it with 32bit or 64bit build. Tested on Arch and Ubuntu Gutsy.

22. September 2007, 19:05:05

rwf

Posts: 2109

Originally posted by Chewi:

I'm on Gentoo



Just curious.
Does the 64-bit mplayerplug-in work w/ Opera 1589. I'm strictly x86 and the emerge of mplayerplug-in works w/ Opera 1589 i.e. no need to compile mplayerplug-in it w/ --enable-x.

Please add [solved] to the initial post's subject line if you feel your problem is resolved.

22. September 2007, 19:43:16

Ledah

Posts: 18

Hmm, on whatever position I set the paths, only the Flash plugin is recognised by Opera. All the others (all 64-bit) aren't recognised.
Sidux Γαια 64bit | Xorg 7.3 | Opera 9.50 Alpha Build 1600

23. September 2007, 06:02:29

Superkuh

Posts: 27

I'm sorry to ask for such explicit help, but I cannot seem to get what you describe to work (mostly because I do no know the source of the files or which are which). If someone could post a directory listing of files with the file binaries themselves linked to / hosted online in an unordered list or something I'd be damn near eternally grateful.

Distribution doesn't matter so much, I can figure some thing out from interence, but being a newbie, as one might guess I run ubuntu and help with that type of debian filestructure would be most useful.

23. September 2007, 13:00:37

Ledah

Posts: 18

The directory for 64-bit operapluginwrapper is /usr/lib/opera/9.50-20070920.2 (for my installation and the latest weekly). For the 32-bit version you have to download a 32-bit package (*.tar.gz for example) and extract it from there.
Sidux Γαια 64bit | Xorg 7.3 | Opera 9.50 Alpha Build 1600

23. September 2007, 20:20:08

Superkuh

Posts: 27

Thank you so much! It worked just as you said. I took a new install of build 1589, used the automagic nspluginwrapper install script from the ubuntu forums (http://ubuntuforums.org/showthread.php?t=476924), downloaded "opera-9.50-20070920.9-static-qt.i386-1589.tar.gz" and took it's operapluginwrapped (32bit) and replaced the 64bit operapluginwrapper in '/usr/lib/opera/9.50-20070920.2' just as you described. Flash works perfectly in both multiple opera tabs and firefox open cocurrently now. A waste of post, but I wanted to add another confirmation and point out the ease of the method.

23. September 2007, 22:31:16

Chewi

Posts: 82

Originally posted by rwf:


Just curious.
Does the 64-bit mplayerplug-in work w/ Opera 1589. I'm strictly x86 and the emerge of mplayerplug-in works w/ Opera 1589 i.e. no need to compile mplayerplug-in it w/ --enable-x.


Good god! You're right! I haven't seen mplayerplug-in work in Opera for years and now it's working better than I've ever seen! Wow. I'm happy! bigsmile

Case, I'm puzzled over how you could be using the r60 beta, I can't get it to work in Opera at all and from what I've seen, neither can anyone else.

23. September 2007, 22:58:33

Case1

Posts: 136

Originally posted by Chewi:


Case, I'm puzzled over how you could be using the r60 beta, I can't get it to work in Opera at all and from what I've seen, neither can anyone else.



Well, that makes two of us, then smile However no other flash version works for me in 1589 build, 32bit or 64bit. Tested in Arch64 and Ubuntu Gutsy, as I've said. Beats me.

24. September 2007, 00:00:18

rwf

Posts: 2109

Originally posted by Chewi:


Good god! You're right! I haven't seen mplayerplug-in work in Opera for years and now it's working better than I've ever seen! Wow. I'm happy! bigsmile



gecko-mediaplayer and gnome-mplayer work even better on my x86 system. cvs version.

One question: Since you run Gentoo and have 64-bit Opera, does 64-bit java java work with Opera ? The ebuild says something about plugins not workking, but Opera doesn't use the java plugin. Just curious.



Please add [solved] to the initial post's subject line if you feel your problem is resolved.

24. September 2007, 01:26:59

Chewi

Posts: 82

Nope. Opera does use the Java plugin, it's just handled separately from the other plugins.

24. September 2007, 16:49:13

Ledah

Posts: 18

It seems that the script doesn't work for me. If I deactivate the directory for the Flash plugin (the only 32-bit plugin), there's no plugin detected.
Sidux Γαια 64bit | Xorg 7.3 | Opera 9.50 Alpha Build 1600

24. September 2007, 18:55:16

Chewi

Posts: 82

Well of course you need to keep the directory with the plugin activated. Where exactly do you have Flash installed?

I meant to mention earlier that it would probably make sense for the Opera guys to officially add this capability to Opera. Instead of choosing a wrapper based on the plugin path, they could query the binary format of each plugin or perhaps they could simply try both wrappers and see which one works. We can't do the latter ourselves because Opera expects operapluginwrapper to only run once for each call.

24. September 2007, 19:16:33

Ledah

Posts: 18

I just wanted to see, if the 64-bit plugins would work, if there's no 32-bit plugin available.

The Flash plugin is in /usr/lib/flashplugin-nonfree. The 64-bit plugins are in /usr/lib/firefox/plugins. The order makes no difference.
Sidux Γαια 64bit | Xorg 7.3 | Opera 9.50 Alpha Build 1600

24. September 2007, 19:49:44

I'm impressed. It works smile

Thanks for the hack!
Best Regards, Jack
Linux User #264449
Powered By Debian Sid on AMD64

24. September 2007, 20:36:33

Chewi

Posts: 82

Originally posted by Chewi:

Any plugins with 64 in the path will use the 64-bit version. Anything else will use the 32-bit version.


Maybe I should have made that clearer. Presumably you have a /usr/lib64 symlink? On Gentoo, /usr/lib is the symlink. Either way, you need to add the path as /usr/lib64/firefox/plugins in order for it to work.

25. September 2007, 20:16:43

paladin

Posts: 2

Wow, works great. Thanks for it Chewi smile

27. September 2007, 16:08:27

Ledah

Posts: 18

Originally posted by Chewi:

Originally posted by Chewi:

Any plugins with 64 in the path will use the 64-bit version. Anything else will use the 32-bit version.


Maybe I should have made that clearer. Presumably you have a /usr/lib64 symlink? On Gentoo, /usr/lib is the symlink. Either way, you need to add the path as /usr/lib64/firefox/plugins in order for it to work.


Sorry, I don't get it.
In which directory is a symbolic (?) link necessary and to which directory should it point? The only symbolic links, which I found are this one, which are in /usr/lib/firefox/plugins and point to /usr/lib/mozilla/plugins. The content of /usr/lib/ and /usr/lib64/ is the same.

Sorry for my thick-wittedness ^^
Sidux Γαια 64bit | Xorg 7.3 | Opera 9.50 Alpha Build 1600

27. September 2007, 19:11:18

Chewi

Posts: 82

No symbolic links are actually necessary, the path just has to have 64 somewhere in it. By that I literally mean it can be /foo/bar64/plugins or /foo64/bar/plugins or /foo/bar/plugins64 or whatever. It doesn't matter. You say that /usr/lib and /usr/lib64 have the same contents so one of those is a symlink. It doesn't matter which. The point is that you have /usr/lib64. So all you need to do is edit the path entry in Opera and change /usr/lib/firefox/plugins to /usr/lib64/firefox/plugins.

27. September 2007, 23:40:01

krushia

Posts: 192

+1 :-)

If any Opera employees are reading this, I'm wondering what your personal thoughts are on making this work "out of the box".

28. September 2007, 17:19:24

feld

Posts: 27

same here using the new build 1600. flash works for me now, yay! but nothing else does even with your bash script trick.

28. September 2007, 19:00:37

paladin

Posts: 2

Well, I modified it like this for (debian) (/usr/lib/mozilla is not replacable with the symlink /usr/lib64/mozilla here, opera readds /usr/lib/mozilla and the original script does not work), by adding /usr/lib32/mozilla/ to the plunginpath.ini

[Paths]
/usr/lib/opera/plugins=1
/usr/lib32/mozilla/plugins=1
/usr/lib/mozilla/plugins=1

and grepping 32 instead of 64 now:

if [[ -n `echo ${@} | egrep "\/[^ ]*32"` ]]; then
exec ${OPERA_BINARYDIR}/operapluginwrapper32 ${@}
else
exec ${OPERA_BINARYDIR}/operapluginwrapper64 ${@}
fi

1. October 2007, 00:56:22

I managed to download and install Opera 9.5 amd64 alpha on my Ubuntu Feisty amd64 computer:

Version: 9.50 Alpha
Build: 1567
Platform: Linux
System: x86_64, 2.6.20-16-generic
Qt library: 3.3.7
Java: Java Runtime Environment installed

I used to have 32-bit Opera 9.0 installed with --force-architecture, but it was never very stable. I used it only because I managed to get flash working in it, plus Amazon doesn't let me log in with "that other alternative browser" because it thinks cookies are not enabled (they are). Today I needed to order a book for a class, so I went to Amazon with Opera, and Opera crashed on the main Amazon page. In desperation I installed 9.23 32-bit, but it won't launch -- error messages about wrong ELF class. Eventually I decided that the 32-bit Opera was always so unstable that I might as well try the 64-bit alpha version. It installed fine, runs fine, and I got the book ordered.

But now I want to get flash working again. I have read this whole thread, but I don't even understand where to start. I'm just a desktop user and I don't know what a symlink is. I also have no idea what versions are still installed, although I know I am typing this using the version listed above, which I copied and pasted from the Help > About. I'd be really grateful if someone could please translate the instructions in explicit step-by-step language.

1. October 2007, 09:36:34

Chewi

Posts: 82

I'm sorry that the script doesn't work for many of you. Maybe you'll have more luck by making 32-bit plugins the exception like paladin has.

John Jason Jordan, if you're not sure, I would suggest waiting until this is officially sorted in Opera, though I must admit that we haven't yet seen any indication that this will happen. If you want to have a go, download the 32-bit version and copy the operapluginwrapper file over the one in your 64-bit installation. All that symlink stuff doesn't come into it unless you're trying to use the script.

1. October 2007, 10:41:45

Chewi

Posts: 82

Just tried the Flash beta with Opera build 1600. It actually starts displaying and the right-click menu works but it doesn't get much further than the first few frames. That's progress, I guess. wait

1. October 2007, 15:46:29

I finally got flash working in my Opera 9.5 amd64 alpha on Feisty amd64. The subject is also discussed on the Ubuntu forums and someone there gave me a step by step that got it working for me. Here is a link to it:

http://ubuntuforums.org/showthread.php?p=3457000#post3457000

1. October 2007, 16:18:25

Chewi

Posts: 82

Heh I would have taken the time to explain it that thoroughly but I'm avoiding my work too much as it is. Glad it worked out for you.

Tried the newest Flash beta with Opera build 1600. Nothing appears at all. Damn.

2. October 2007, 01:04:29

ronacc

Posts: 139

I just tried your workaround and script. it works only too well on my system wink the first thing I was presented with was a flash add on one of the pages I load at startup. I'm ubuntu gutsy 64bit here , and opera build 1600.

4. October 2007, 19:05:47 (edited)

deustech

Posts: 2

here is my Ubuntu 7.04 amd64 WORKING SOLUTION
opera x86_64-linux build 1600
(flash plugin version 9 r48 works, tested on youtube)

$ ls /usr/lib32/mozilla/plugins
flashplayer.xpt libflashplayer.so

$cat ~/.opera/pluginpath.ini
[Paths]
/usr/lib/opera/plugins=1
/usr/lib32/mozilla/plugins=1
/usr/lib/mozilla/plugins=1



modified wrapper script above to work fine with 64bit plugins in ubuntu

$cat /usr/lib/opera/9*/operapluginwrapper
#!/bin/sh

VER=`echo ${@} | egrep "\/[^ ]*32"`
if [ -n "$VER" ]; then
exec ${OPERA_BINARYDIR}/operapluginwrapper32 ${@}
else
exec ${OPERA_BINARYDIR}/operapluginwrapper64 ${@}




you allso need to put all another 32-bit plugins like realplayer and etc in /usr/lib32/mozilla/plugins

5. October 2007, 00:23:27

kyleabaker

mr. kyleabaker

Posts: 207

Just curious, are you all able to fullscreen youtube videos? I've done this nifty trick as well and flash is working pretty good (Ubuntu Feisty Fawn x64), but when I try to fullscreen videos it just stops the video and I have to click play again and start from the beginning. I wasn't sure if I did something wrong or if there was a fix for this. Thanks for the trick by the way!
<a href="http://www.kyleabaker.com/">kyleabaker.com</a>
<a href="http://www.bimmermania.com/">bimmermania.com</a>
<a href="http://www.operawatch.com/">operawatch.com</a>

5. October 2007, 16:24:49

netimen

Posts: 37

yeah, this worked for me also - thank you!!!

10. October 2007, 09:32:58

Odegard

Posts: 122

Alright, got this finally working. BUT, I can't play games on kongregate.com. Problem is, that when you load a game, it also loads a chatroom. I don't know how these two flash apps are connected, but they both start to load, then when the chatroom is finished loading, the game part goes light grey.

The same thing happened in previous version of opera. Works fine in firefox. I guess it has to do with how opera manages the plugins, perhaps not being able to initialize two instances of the same plugin or something?

Can anyone confirm this behavious? You don't have to be a member to check this out. Just go to kongregate.com and click on any game.

Thanks.
www.vitnytt.no - hvis du er interessert i astronomi og skjønner hva som står her smile

17. October 2007, 13:25:30

Thruth

Posts: 2325

it works but I've extra concern.
Would the 64bit cleaner clean the operapluginwrapper32 in mem?

18. October 2007, 05:23:35

Thruth

Posts: 2325

This trick does not seem to work on the latest 1633

18. October 2007, 05:54:30

tomdkat

Posts: 140

Originally posted by Chewi:

That script was easier to write than I thought. Turns out the 64-bit operaplugincleaner works with either. Rename the 64-bit operapluginwrapper to operapluginwrapper64. Grab the 32-bit operapluginwrapper and call that operapluginwrapper32. Then create a new file called operapluginwrapper and insert the code below. Don't forget to chmod 755 it.

Sweet! Thanks! Just got this working on my system. smile

Peace...

18. October 2007, 21:51:35

kyleabaker

mr. kyleabaker

Posts: 207

@Thruth
Working for me in 1633 and in 1636 in Ubuntu 7.04 x64.

However, I do encounter the problem that Odegard mentioned (flash disappears and turns light grey) from time to time. It usually only happens when I have a few windows open that are using flash content. Ex. 2-3 youtube videos open or something. They all turn grey.

Could some asnwer my question from above..

Originally posted by kyleabaker:

Just curious, are you all able to fullscreen youtube videos? I've done this nifty trick as well and flash is working pretty good (Ubuntu Feisty Fawn x64), but when I try to fullscreen videos it just stops the video and I have to click play again and start from the beginning. I wasn't sure if I did something wrong or if there was a fix for this. Thanks for the trick by the way!

<a href="http://www.kyleabaker.com/">kyleabaker.com</a>
<a href="http://www.bimmermania.com/">bimmermania.com</a>
<a href="http://www.operawatch.com/">operawatch.com</a>

22. October 2007, 16:21:53

Chewi

Posts: 82

Originally posted by Thruth:

it works but I've extra concern.
Would the 64bit cleaner clean the operapluginwrapper32 in mem?


I think it just kills off some processes using PIDs or something. It shouldn't be a problem.

The script in general is still working for me in 1636 but, unfortunately, mplayerplug-in has stopped working. I get sound but no video. It's still working in Firefox so I guess it must be Opera.

I've had the "Flash turning light grey" (or purple in my case) problem ever since Flash 9 came out. It's always been unstable for me both in 32-bit and 64-bit.

22. October 2007, 18:14:30

rwf

Posts: 2109

Originally posted by Chewi:


The script in general is still working for me in 1636 but, unfortunately, mplayerplug-in has stopped working. I get sound but no video. It's still working in Firefox so I guess it must be Opera.



For me -- 32-bit system -- it got broken at 1633. I copied the operapluginwrapper from 1629 into 1633 (and 1636) .directorie(s) to get around the problem.

Please add [solved] to the initial post's subject line if you feel your problem is resolved.

25. October 2007, 17:04:11

henrikkirk

Posts: 4

hmm, stil cant get it to work.

I have copied operapluginwrapper and operaplugincleaner from opera-9.50-20071024.6-shared-qt.i386-1643/usr/lib/opera/9.50-20071024.6 to /usr/lib64/opera/9.50-20070903.2/ to override the once lying there before.
Then installed the flashplugin-nonfree and fired opera up and I still only get a gray box.

Im using debian unstable, but cant se what that should matter.

Any suggestions?

26. October 2007, 05:53:51

The beta1 released yesterday works just fine with nsplugin wrapper out of the box. I am on Debian Sid as well.
Just grab the .deb from the ftp server and check that everything is there in opera:plugins.

I was almost in tears when I saw that even the mplayer plugin worked!
Best Regards, Jack
Linux User #264449
Powered By Debian Sid on AMD64

26. October 2007, 20:42:45

deustech

Posts: 2

yes, yes. it's works! no more shell wrapper!!

30. October 2007, 20:25:46

kokoko3k

Posts: 2

Hi Chewi, great idea.
For me, beta1 version still didn't work with nspluginwrapper, i'm on gentoo too, so i've modified your script.
Using readelf, it is no more necessary to rename your plugins:
#!/bin/sh
RIGHT=/$(echo ${@}|cut -d "/" -f 2-)
BIT=$(readelf -h $RIGHT |grep "Class:"|cut -d "F" -f 2)
if [[ $BIT = 64 ]]; then
        exec ${OPERA_BINARYDIR}/operapluginwrapper64 ${@}
else
        exec ${OPERA_BINARYDIR}/operapluginwrapper32 ${@}
fi

Cheers ;-)

4. November 2007, 17:50:45

Chewi

Posts: 82

Smart. smile I figured they'd do something like that if they added this officially.

6. November 2007, 18:28:33

Kronykus

Posts: 12

I'm on gentoo also. I'm running 9.5 beta1 build 1643. Thanks for this excellent thread, but I can't seem to get mplayerplug-in to work. I re-installed (ver 3.45) but not working. I lost the link but there was a thread that said some people were having luck with mozplugger so I emerged that but no luck there either although I'm not familiar with it so there may be something extra or some configuring there to be done that I'm not aware of. I also emerged the gecko and gnome players but again I'm not familiar with them. Mplayerplug-in works in firefox so it's not that big a deal, I can always use ff for media sites, but I would prefer to just use Opera. Everythhing else works flawlessly though thanks to this thread smile
If somebody could tell me how to make use of any of these options to get media going in opera I'd much appreciate it. TIA.

Forums » Opera for Windows/Mac/Linux » Opera for *nix - Linux/FreeBSD