Library Expansion

Be forewarned: Flash Player 10 for Linux will have more external library dependencies. These are very new requirements that were not required in either of the 2 released FP10 beta builds publicly released so far.

To what end? Most notably, the Linux Flash Player binary will no longer need to rely on a separate module called flashsupport in order to support secure connections. Supporting OpenSSL was the original motivation for creating the flashsupport library. We are moving to Mozilla’s NSS which ought to be installed alongside Mozilla.

Will libflashsupport continue to be supported? Partially. Flash Player 10 will no longer care what libflashsupport.so has to say about SSL. However, it will still pay attention to the sound output functions (fpx_soundoutput_*) so that end users can continue to implement support for an ever-growing number of Linux audio APIs. The camera input functions (fpx_videoinput_*) were never implemented and that will not change now. Hopefully, the revised Video4Linux camera support in Flash Player 10 will solve many Linux camera problems (V4L1 will be supported in the final and V4L2 will no longer chew up all the CPU time).

Thanks to the many people who reported camera information in my last blog post. I guess YUYV is the most important colorspace out there. Here’s another end user query: What glibc version do you have on your current Linux system(s)? And what distro is it? And how on earth did you figure out what glibc version you have? For such an important part of the system, it sure is hard to find a consistent method to query this information. A little searching has revealed these 2 methods:

  • DEB-based systems: ‘dpkg -l | grep libc6’
  • RPM-based systems: ‘rpm -q glibc’

83 Responses to Library Expansion

  1. Michael says:

    Will there be a beta 3 before the final release? I’d like to be able to see if my UVC compliant Logitech Quickcam 9000 Pro will work before the final release. Also, inb4 64-bit request.As for your query:glibc-2.8Fedora 9 x86_64rpm -q glibcInstead of relying on 3rd party programs to detect glibc versions, I recommend a file name lookup. Each glibc shared object has the version in its name, example:/lib64/libc-2.8.soThis is on my glibc 2.8 64-bit system. I only run 64-bit systems./lib64/libc-2.4.soThis would be a glibc 2.4 version.

  2. James Ward says:

    jamesw@dos:~$ /lib/libc.so.6GNU C Library development release version 2.8.90, by Roland McGrath et al.Distro: Ubuntu IntrepidThanks Mike for all your hard work on making Flash Player rock on Linux!-James [ Hey, I never knew you could just “run” a library to find its version. Thanks. -Mike M. ]

  3. Bernhard Walle says:

    There is a portable way to find out the glibc version:/lib/libc.so.6Yes, that library can be executed! [ Glad I asked. -Mike M. ]

  4. hype says:

    dpkg -l | grep libc6ii libc6 2.7-10ubuntu3 GNU C Library: Shared librariesii libc6-dev 2.7-10ubuntu3 GNU C Library: Development Libraries and Heaii libc6-i686 2.7-10ubuntu3 GNU C Library: Shared libraries [i686 optimiUbuntu hardy HeronGood luck for Flash Player 10!

  5. SvdB says:

    “We are moving to Mozilla’s NSS which ought to be installed alongside Mozilla.”So if you’re an Opera user it won’t be enough to just run the Flash installer anymore; you have to install NSS too.”And how on earth did you figure out what glibc version you have?”Start /lib/libc.so.6 as an executable. I’m not kidding. ๐Ÿ™‚

  6. Ian says:

    You can ask glibc what version it is … sample codehttp://www.wienand.org/junkcode/checknptl/glibc-version.c

  7. brenn says:

    glibc-2.8_p20080602gentoogenlop glibc

  8. Haegar says:

    Simplest way to find the glibc version if you are not interested in distribution patchlevels:execute /lib/libc.so.6The used glibc versions on the machines around me range from 2.3.6 (debian etch) to 2.7 (debian unstable), where the etch machines are mostly servers.And your dpkg statement above:dpkg-query -W -f ‘${Version}\n’ libc6outputs exactly the version of the libc6 package, without big parsing-needs.

  9. Asa says:

    2.7-10ubuntu3Ubuntu Hardy Heron

  10. David R says:

    glibc version 2.7-10distro: Debian unstable

  11. slithy says:

    slithy@mentat ~ $ /lib/libc.so.6GNU C Library stable release version 2.6.1, by Roland McGrath et al.

  12. bd_ says:

    Here’s a portable way to find the libc version:$ /lib/libc.so.6GNU C Library stable release version 2.7, by Roland McGrath et al.Copyright (C) 2007 Free Software Foundation, Inc.[…]Yes, you can execute libc as an executable ๐Ÿ™‚

  13. hannes says:

    hannes@miles:~/Desktop$ dpkg -l | grep libc6ii libc6 2.7-10ubuntu3running ubuntu hardy here.

  14. IceWil says:

    ii libc6 2.7-10ubuntu3 GNU C Library: Shared librariesii libc6-dev 2.7-10ubuntu3 GNU C Library: Development Libraries and Header Filesii libc6-i386 2.7-10ubuntu3 GNU C Library: 32bit shared libraries for AMD6464-bit support ?

  15. LuisManson says:

    /lib/libc.so.6GNU C Library stable release version 2.8ALSO:Available extensions:C stubs add-on version 2.1.2crypt add-on version 2.1 by Michael Glad and othersGentoo snapshot 20080602Gentoo patchset 2GNU Libidn by Simon JosefssonNative POSIX Threads Library by Ulrich Drepper et alSupport for some architectures added on, not maintained in glibc core.BIND-8.2.3-T5BDistro: GentooNice to see a “disclaimer” about the post, but pleeease, an AMD64 version ๐Ÿ™‚

  16. andrew says:

    Hey Mike, I think I read somewhere that you can just launch the library to get the version info ;-)”GNU C Library stable release version 2.7, by Roland McGrath et al.”

  17. Polar says:

    Version 2.7 – Slackware 12.1

  18. Neil says:

    [neil@lx-dt:~]$ /lib/libc.so.6 (08-08 21:06)GNU C Library stable release version 2.7, by Roland McGrath et al.Copyright (C) 2007 Free Software Foundation, Inc.This is free software; see the source for copying conditions.There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR APARTICULAR PURPOSE.Compiled by GNU CC version 4.2.3 (Ubuntu 4.2.3-2ubuntu7).Compiled on a Linux >>2.6.24-14-server.

  19. There’s also a somewhat more intuitive portable approach: ldd –version .

  20. scorcher says:

    scorcher@uss-enterprise:~$ apt-cache show libc6 | grep VerVersion: 2.7-10ubuntu3Distro: Ubuntu 8.04.1

  21. bassmadrigal says:

    glibc version 2.7Slackware 12.1Initially I just did a locate on glibc which showed docs for glibc-2.7, which I then verified by running /lib/libc.so.6Great job on the work and on keeping us updated on the progress.

  22. amir says:

    I’m using debian lenny amd64 kde4.1ii libc6 2.7-13 GNU C Library: Shared librariesii libc6-dev 2.7-13 GNU C Library: Development Libraries and Header Filesii libc6-i386 2.7-13 GNU C Library: 32bit shared libraries for AMD64

  23. JordanN says:

    Fedora9:[jordan@localhost ~]$ rpm -q glibcglibc-2.8-8.x86_64glibc-2.8-8.i386

  24. Anonymous says:

    Using the “/lib/libc.so.6” method, I have version 2.7 on Fedora 8.Does this cleaning up of glibc possibly mena less crashes? On all 3 of my computers (Fedora 8 Latop, 9 Work PC and 10 alpha home PC) Firefox is unusable as Flash brings it down on a regular basis. For some reason Opera seems to cope better ๐Ÿ™

  25. Trevor says:

    Minimyth 0.21.0-56GNU C Library stable release version 2.8

  26. rawthorne says:

    GNU C Library stable release version 2.7, by Roland McGrath et al.Mandriva 2008 Spring.

  27. XioNoX says:

    libc6 : 2.7-10ubuntu3andlibc6-i386 2.7-10ubuntu3 (32bit shared libraries for AMD64)I’m running ubuntu 8.04 64bits

  28. phini says:

    glibc: 2.8distro: Arch Linux

  29. Michael says:

    Distro : debian sid$ dpkg -l | grep libc6ii libc6 2.7-13

  30. rawsausage says:

    Hopefully Pulseaudio will be supported flawlessly out of the box. That’s what all the distributions have switched into using. Also, I hope there will be 64-bit version so I don’t have to use the Gnash anymore…

  31. miltiad says:

    Ubuntu Intrepid Ibex (8.10):ii libc6 2.8~20080505-0ubuntu6 GNU C Library: Shared librariesii libc6-dev 2.8~20080505-0ubuntu6 GNU C Library: Development Libraries and Heaii libc6-i686 2.8~20080505-0ubuntu6 GNU C Library: Shared libraries [i686 optimi

  32. Dom says:

    Here you can find all the versions of glibc in Debian: http://packages.debian.org/search?keywords=libc6

  33. Andre Costa says:

    Running Fedora 9 here:rpm -q glibcglibc-2.8-8.i686glibc-2.8-8.x86_64Looking forward to Flash 10 on Linux ;-)Regards,Andre

  34. Mark says:

    GNU C Library stable release version 2.8, by Roland McGrath et al.gentoo

  35. Ana says:

    ii libc6 2.7-10ubuntu3 GNU C Library: Shared librariesii libc6-dev 2.7-10ubuntu3 GNU C Library: Development Libraries and Header Filesii libc6-i686 2.7-10ubuntu3 GNU C Library: Shared libraries [i686 optimized]DISTRO: Linux Mint ElyssaIm having lots of problems with SWFObject or similar methods not detecting my flashplayer as version 8+ :(It doesnt work with sIFR (Fonts in websites) nor with tubemogul.com flash reports, there are more sites that doesn’t detect my flash version properly but those I remember right now. [ Are you sure you don’t have a rogue copy of Flash Player 7 running around your system? ‘locate libflashplayer.so’ to hunt it down. -Mike M. ]

  36. E. Perduel says:

    Sorry but I have to ask: why are you constantly relying to Mozilla stuff (first Mozilla-specific xembed which isn’t the real xembed and now another mozilla library).Ok, mozilla is probably in most cases in default install but still it is stupid to rely on stuff which comes from _one_ of many browser manufacturers…You’re just making flash support damn hard for other browser manufacturers and that might kill whole flash. [ Do you have a better proposal for SSL support? -Mike M. ]

  37. tmy says:

    2.7Debian unstable

  38. bassmadrigal says:

    glibc version 2.7Slackware 12.1Initially I just did a locate on glibc which showed docs for glibc-2.7, which I then verified by running /lib/libc.so.6Great job on the work and on keeping us updated on the progress.

  39. Marko says:

    marko@earth:~$ /lib/libc.so.6GNU C Library stable release version 2.7, by Roland McGrath et al.Compiled by GNU CC version 4.2.3 (Ubuntu 4.2.3-2ubuntu7).Compiled on a Linux >>2.6.24-15-server.Any word on a 64 bit-version? I would like to show my friends how great linux is, but as long as I have to download Youtube-movies to play with VLC, nobody cares :-S

  40. trey says:

    Slackware 12.0$ /lib/libc.so.6GNU C Library stable release version 2.5, by Roland McGrath et al.

  41. Tim Goh says:

    glibc version 2.8-2Distro: Arch Linux

  42. bassmadrigal says:

    glibc version 2.7Slackware 12.1Initially I just did a locate on glibc which showed docs for glibc-2.7, which I then verified by running /lib/libc.so.6Great job on the work and on keeping us updated on the progress.

  43. Johan says:

    Hello,Good luck on the flashplayer 10 for Linux!Very much need that, hope you can release the final soon.Hhere is my glibc version:”glib-2.14.2″ “glib 2.14.2: C support library” on “BuildingBlock 944K” \ โ”‚”glibc-2.6.1-1″ “glibc 2.6.1-1:And i am using Puppy Linux!Best regards,Johan

  44. Nille says:

    /lib/libc.so.6GNU C Library stable release version 2.7, by Roland McGrath et al.Slackware 12.1

  45. nathan says:

    Running Mandriva 2008.1:/lib/libc.so.6GNU C Library stable release version 2.7, by Roland McGrath et al.Compiled by GNU CC version 4.2.3 (4.2.3-6mnb1).Available extensions:crypt add-on version 2.1 by Michael Glad and othersGNU Libidn by Simon JosefssonNative POSIX Threads Library by Ulrich Drepper et alBIND-8.2.3-T5B

  46. FieserKiller says:

    execute /lib/libc.so.6GNU C Library stable release version 2.6.1, by Roland McGrath et al.Copyright (C) 2007 Free Software Foundation, Inc.This is free software; see the source for copying conditions.There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR APARTICULAR PURPOSE.Compiled by GNU CC version 4.1.2 (Gentoo 4.1.2 p1.0.1).Compiled on a Linux 2.6.22-gentoo-r8 system on 2007-10-16.Available extensions:C stubs add-on version 2.1.2crypt add-on version 2.1 by Michael Glad and othersGentoo patchset 1.1GNU Libidn by Simon JosefssonNative POSIX Threads Library by Ulrich Drepper et alSupport for some architectures added on, not maintained in glibc core.BIND-8.2.3-T5B

  47. neqael says:

    Hello,I’d suggest ‘apt-cache policy libc6’ for deb-based systems. My version is 2.8+20080809-1 and I’m using debian unstable + some packs from experimental (libc6 too, it seems to be updates often there).BTW Thanks for all the effort you put into Flash version for linux.I’m currently testing Flash 10 and it works great for me.

  48. Steven James says:

    glibc-2.6.1-4.1mdv2008.0Mandriva 2008.0This issue with Flash and Mandriva 2008.1 is why I reverted to Mandriva 2008.0. I followed the advice in the errata and wasn’t able to fix the sound issue. In short, having Flash run properly with sound was more important to me than running the latest version of my distro.

  49. Dawid H. says:

    Distro: OpenSUSE 11.0 x86_64$/lib64/libc.so.6GNU C Library stable release version 2.8 (20080425)

  50. Harkai says:

    glibc-2.8-14.1opensuse 11

  51. ulij says:

    I use glibc 2.7 too, in Slackware -current

  52. buzz says:

    Is there a chance to include fpx_sound”in”put_XXX to flashsupport in order to select other microphones in flash? At the moment only the standard microphone is listed and other devices are being ignored. thx alot for the support. [ Nice idea, but it is not planned for the short term. -Mike M. ]

  53. Chris says:

    On my up-to-date Gentoo box:$ /lib/libc.so.6GNU C Library stable release version 2.6.1, by Roland McGrath et al.

  54. maks says:

    glibc 2.7-2Distro: Linpus Linux Lite v1.0.3.E (Fedora8 derivative, installed by default on the Acer AspireOne netbooks).

  55. Gaspard Leon says:

    just a quick question:Does anyone have issues with flash + certain sites?As a regression from the first beta?for example on my 32bit ubuntu hardy machine at home, the site http://www.facebook.com would always peg the CPU at 100% on beta 2 (once logged in,) so I had to downgrade to beta 1… just wondering if anyone else had something similar or (likely) it’s just an ubuntu issue?cheers,Gaspard

  56. ekin says:

    glibc 2.8Pardus 2008 here…

  57. Gustavo says:

    glibc version: 2.7-13Distro: Debian lenny

  58. Michele says:

    OpenSuse 10.3:glibc-2.6.1-18.3

  59. Michele says:

    OpenSuse 10.3glibc-2.6.1-18.3

  60. I use a 64 bits 2.7 libc:$ /lib/libc.so.6GNU C Library stable release version 2.7, by Roland McGrath et al.

  61. glibc v2.6.1-18.3OpenSuSE 10.3It was easy for me to run ‘rpm -q glibc’, I don’t see was it’s ‘hard to find a consistent method’, once you’ve figured out if the system is .deb or .rpm based, and others have posted less end-user oriented ways for code to figure it out too.

  62. webjdm says:

    webjdm@archlinux# pacman -Si glibcVersion : 2.8-2

  63. Vadim P. says:

    vadi@ubuntu-laptop:~$ dpkg -l | grep libc6ii libc6 2.7-10ubuntu3 GNU C Library: Shared librariesii libc6-dev 2.7-10ubuntu3 GNU C Library: Development Libraries and Heaii libc6-dev-i386 2.7-10ubuntu3 GNU C Library: 32bit development libraries fii libc6-i386 2.7-10ubuntu3 GNU C Library: 32bit shared libraries for AMvadi@ubuntu-laptop:~$Ubuntu 8.04, 64bitYou probably can use one of the LSB tools (Linux Application Checker) to check flash’s compatibilityBut be warned that it lies for some of the odd libraries atm

  64. Zbigniew L. says:

    libc.so.6 ver 2.7lunar-linux

  65. Andre Costa says:

    Installation fails on Fedora 9, which uses libcurl.so.4 instead of libcurl.so.3:sudo rpm -Uvh flashplayer10_install_linux_081108.i386.rpmerror: Failed dependencies:libcurl.so.3 is needed by flash-plugin-10.0.0.569-release.i386rpm -q libcurllibcurl-7.18.2-1.fc9.x86_64libcurl-7.18.2-1.fc9.i386rpm -ql libcurl/usr/lib64/libcurl.so.4/usr/lib64/libcurl.so.4.1.0/usr/lib/libcurl.so.4/usr/lib/libcurl.so.4.1.0

  66. Maurice says:

    OpenSuSE 11.0glibc-2.8-14.1

  67. Rob Crittenden says:

    Are you relying on libcurl to provide the SSL support? If so then the crypto library used depends on how libcurl was built. In Fedora it is built against NSS. On other distros I’m assuming they still use OpenSSL. [ It’s complicated. I may need to draw a picture in a separate blog post to explain the various paths. -Mike M. ]

  68. arekm says:

    PLD/Linux Thcurl-7.18.2-3.i686nss-3.12-3.i686glibc-2.8-7.i686note that curl.so.3 is damn old (last release is 7.15.5, all newer releases have soname curl.so.4)

  69. peter says:

    Running Fedora 9: except for the curl.so.3 issue mentioned above, libflashplayer is linked to libcrypto.so.0.9.8 and libssl.so.0.9.8 which are not present. It seems the so needs to be linked to libcrypto.so.7 and libssl.so.7 that are links to the correct lib*.0.9.8* libraries on this system.

  70. feiy says:

    dpkg -l | grep libc6ii libc6 2.8~20080505-0ubuntu6 GNU C Library: Shared librariesii libc6-dev 2.8~20080505-0ubuntu6 GNU C Library: Development Libraries and Heaii libc6-i686 2.8~20080505-0ubuntu6 GNU C Library: Shared libraries [i686 optimi

  71. Tim Fesig says:

    The glibc version can be displayedby using the getconf command:getconf GNU_LIBC_VERSIONUsing getconf -a results in a dumpof all the configuration variables.

  72. Anonymous says:

    $ /lib/libc.so.6GNU C Library stable release version 2.8, by Roland McGrath et al.Copyright (C) 2008 Free Software Foundation, Inc.This is free software; see the source for copying conditions.There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR APARTICULAR PURPOSE.Compiled by GNU CC version 4.3.1.Compiled on a Linux >>2.6.25-gentoo-r5.

  73. jcastelain says:

    Thanks for the help, but RC2 doesnt work even with this version2.7-10ubuntu3:( how can i solve this? Installing FP is becoming as easy as coding c++ for a newb like me

  74. julien says:

    I managed to fix this error by making a symbolic link of the libssl3.so.0d and naming it libssl3.so, and same think for the libnss3.so filesudo ln -s /usr/lib/libssl3.so.0d /usr/lib/libssl3.sosudo ln -s /usr/lib/libnss3.so.1d /usr/lib/libnss3.soWorked for me on Ubuntu 8.04, if that can help anyoneMust be “basic” linux knowledge, anyway guess I learned something

  75. Tyler says:

    glibc 2.8$ ls /lib/libc-*gentoo 2008.0 amd64

  76. RQ says:

    Hm, did I miss it, or did you not say why exactly you cant/don’t want to use OpenSSL?I use Firefox myself, but I somehow think using OpenSSL would be a more universal way, which would also please guys that use Opera or Konqueror.

  77. ArmEagle says:

    I guess this is the first time I’ll wait a while until I upgrade.I don’t use a package manager to install Firefox, so I also manually copy over the plugin.I don’t (think I) have NSS installed.And I read about crash issues which I did experience when testing the beta versions. And apparently that’s because of PulseAudio. But that’s simply what is used these days.Now you tell me I actually have to use the package manager to make sure I have all the dependencies? That’s not the way I like it.Also, I really, really hope you’ll bring 64bit support soon. Though I don’t like Silverlight at all, you have to keep an edge over them. 64bit support would bring you a lot further. [ Since you’re an ‘advanced’ user, you could try this method: Download the .tar.gz, unpack libflashplayer.so, and run ‘ld’ against it to ferret out any unresolved library dependencies. -Mike M. ]

  78. partizan says:

    /lib/libc.so.6GNU C Library stable release version 2.8, by Roland McGrath et al…Compiled on a Linux >>2.6.26-ARCH

  79. Maciek says:

    Does it mean that new Flash won’t work in Opera? Damn, they made Flash 9 working and now I’ll have to wait few more months for Flash 10 & Opera to work? You should cooperate more.

  80. Vincenzo says:

    Sorry, but the plugin and the standalone player crash on Fedora 8 (x86_64 with nspluginwrapper). For the standalone player the kernel message is:flashplayer[15379]: segfault at 0 ip 0 sp ffec7bbc error 4 in libexpat.so.1.5.2[2b9000+1f000] .thanks

  81. Ed says:

    @partizan: it will work on opera if you install both curl and nss packages(at least it worked this way for me… using Archlinux)

  82. arlekan says:

    glibc 2.6.1 – gentooI use KDE, please make plugin gtk-free.Thanks You