cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
krisheyrman
Visitor
Visitor
34,805 Views
Registered: ‎04-23-2012

Firefox Web Browser says "Couldn't load XPCOM." -- Fedora 14 64-bit

Jump to solution

Hi,

I recently installed ISE 14.2/Vivado/Vivado_HLS 1012.2, but I had this problem already on ISE 12.3.

 

Whenever the GUI of ise, xps, xsdk needs to access the web, I get "Couldn't load XPCOM." from Firefox and the page does not launch.

 

Some observations:

  • If I setup  a shell for xilinx programs, then launch firefox, with 

$ . /usr/local/binaries/Xilinx/14.2/ISE_DS/settings64.sh

$ firefox

 

I also get the "Couldn't load XPCOM." error from firefox. But if I then do

 

$ export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH

$ firefox

 

firefox will launch all right. So the xilinx environment variable setup screws up something.

 

  • Funny: As a workaround, I wrote a wrapper script for firefox like this:

# /usr/local/bin/xilinx-firefox
# tries to stop "Couldn't load XPCOMM."
echo "xilinx-firefox: it's me"
echo >&2 "xilinx-firefox: it's me on stderr"
LD_LIBRARY_PATH=
/usr/bin/firefox "$@"

 

and configured xilinx-firefox in ISE preferences as the web browser, it turns out not to get run!. ISE keeps on using the default browser /usr/bin/firefox.

 

  • xps and xsdk display the same behaviour. Vivado and vivado_hls give no error messages, but also do noy open the web page.

 

Any help would be much appreciated. I searched the fora and the web, found some incidents with

XPCOM, but nothing quite similar.

 

Kind regards,

 

Kris Heyrman.

 

 

 

 

1 Solution

Accepted Solutions
krisheyrman
Visitor
Visitor
45,527 Views
Registered: ‎04-23-2012
I figured out how to solve this, thanks to the above and other documents on the net. 1. The problem is that the above environment by Xilinx environment forces firefox, including its XPCOM module, to use Xilinx's version of libstdc++.so, not the host system's libstdc++.so. Any program that relies on a certain version of libstdc++, like firefox (an also svn, by example) will not work. After setting the environment, ise, vivado and friends then proceed to use and rely on firefox, which leads to the trouble described above. 2. This gets compounded by the fact that ise does not obey to an alternate browser selection preference, and vivado does not have one I could find. 3. I solved the problem by editing /usr/bin/firefox, which mercifully is a shell script that loads the binary executable only later, and inserting, as the first line of the script: export LD_LIBRARY_PATH= Result: firefox ignores all previous settings of LD_LIBRARY_PATH, and works in all Xilinx applications. 4. Xilinx script writers please note, it is BAD PRACTICE to rely on a global setting of LD_LIBRARY_PATH for your own applications; such settings should be made IN your applications. It circumvents Linux' careful version management of .so files, and makes any shell which has been set up for Xilinx unusable for some other applications. This practice is asking for trouble, which obviously has to be set right by customers all over again. I doubt that such setting can even work on the so-called 'supported versions'; they are just the same in this respect: the system has a version tree of numbered .so's, installed in the correct places, that ensure that all binaries can load the librares they need.

View solution in original post

13 Replies
austin
Scholar
Scholar
34,795 Views
Registered: ‎02-27-2008

Kris,


Wow, my third email this morning with the same advice:  file a webcase.  This sounds like a bug in the linux install.

 

Best to get it into the team to look at it.

 

Thank you,

Austin Lesea
Principal Engineer
Xilinx San Jose
0 Kudos
krisheyrman
Visitor
Visitor
34,788 Views
Registered: ‎04-23-2012

Tx Austin. I just did.

0 Kudos
kpatel
Xilinx Employee
Xilinx Employee
34,769 Views
Registered: ‎07-30-2007

Sounds like a library incompatibility.  The startup script just prepends $XILINX/lib/lin64 to LD_LIBRARY_PATH and $XILINX/bin/lin64 to PATH.  Something in the Xilinx .so libraries may be conflicting.

 

Check out this other related thread:

http://forums.xilinx.com/t5/EDK-and-Platform-Studio/No-browser-link-opens-in-SDK-13-1-ubuntu-10-10-x64/td-p/219085

0 Kudos
krisheyrman
Visitor
Visitor
45,528 Views
Registered: ‎04-23-2012
I figured out how to solve this, thanks to the above and other documents on the net. 1. The problem is that the above environment by Xilinx environment forces firefox, including its XPCOM module, to use Xilinx's version of libstdc++.so, not the host system's libstdc++.so. Any program that relies on a certain version of libstdc++, like firefox (an also svn, by example) will not work. After setting the environment, ise, vivado and friends then proceed to use and rely on firefox, which leads to the trouble described above. 2. This gets compounded by the fact that ise does not obey to an alternate browser selection preference, and vivado does not have one I could find. 3. I solved the problem by editing /usr/bin/firefox, which mercifully is a shell script that loads the binary executable only later, and inserting, as the first line of the script: export LD_LIBRARY_PATH= Result: firefox ignores all previous settings of LD_LIBRARY_PATH, and works in all Xilinx applications. 4. Xilinx script writers please note, it is BAD PRACTICE to rely on a global setting of LD_LIBRARY_PATH for your own applications; such settings should be made IN your applications. It circumvents Linux' careful version management of .so files, and makes any shell which has been set up for Xilinx unusable for some other applications. This practice is asking for trouble, which obviously has to be set right by customers all over again. I doubt that such setting can even work on the so-called 'supported versions'; they are just the same in this respect: the system has a version tree of numbered .so's, installed in the correct places, that ensure that all binaries can load the librares they need.

View solution in original post

pafisep
Visitor
Visitor
34,449 Views
Registered: ‎01-14-2010

 

Many, many thanks for this workaround! 

 

It means I don't need two Unix sessions on parallel, one for the Xilinx tools and one for my homebrew tools. 

 

This LD_LIBRARY_PATH stuff is really bad pratice. 

 

 

Many thanks once again

 

Paulo Ferreira

 

0 Kudos
hgomersall
Observer
Observer
23,623 Views
Registered: ‎12-27-2014

Yes, I concur fully. This should be implemented properly with rpaths.

0 Kudos
mianni
Visitor
Visitor
22,639 Views
Registered: ‎09-21-2015

Help!

Hello! I do have a similar problem. This is related to ISE Design Suite. I am using Kubuntu 14.04 LTS and Xilinx ISE 14.7(lin64) Application Version p.20131013

 

I have tried several approaches to get ISE to use Kubuntu libstdc++.so.6.0.19 library nothing seems to work.

 

Did insert export LD_LIBRARY_PATH= Result: firefox at the top of firefox script, but do get error on unknown variable Result.  I am sorry if i did not understand what you did, are pretty new to Linux.

 

As attachment is a shell script log where different approaches are tested.

 

0 Kudos
mianni
Visitor
Visitor
22,585 Views
Registered: ‎09-21-2015

Problem solved! Tested out on laptop, ISE asked for libstdc++.so.6 in path /opt/Xilinx/14.7/ISE_DS/common/lib/lin64, stated GLIBCXX_3.4.15 was missing. To se if your libstdc++.so.6 have GLIBCXX_3.4.15, navigate to folder and type

$ sudo strings libstdc++.so.6 | grep GLIBC

 

I did not have GLIBCXX_3.4.15 so i replaced libstdc++.so.6 with a version that did have GLIBCXX_3.4.15.

 

To get the new library to take effect close all firefox windows in all desktops, then test out with ISE, this worked for me:)

 

 

 

0 Kudos
rgaddi
Adventurer
Adventurer
20,234 Views
Registered: ‎04-22-2008

Just wanted to note that, at least in Vivado 2016.4, this issue is STILL not fixed.  Vivado still tramples on LD_LIBRARY_PATH.

 

This thread is 5 years old, and yet the problem remains a problem.  Is anyone doing any QC on the software?

0 Kudos
martoni
Observer
Observer
11,706 Views
Registered: ‎02-20-2009

I'm on Vivado 2017.1 and the problem is still not fixed ...

0 Kudos
anatoli
Moderator
Moderator
11,697 Views
Registered: ‎06-14-2010

Hello @martoni , @rgaddi,

 

We have encountered similar issues in the past relating to GLIBC errors when starting a tool/or documentation doesn’t work, etc. Could you please try the following steps to backup the conflicting libraries and replace them with system ones?

 

  1. cd /<vivado_install_dir>/Vivado/2017.1/ids_lite/ISE/lib/lin64/
  2. mkdir obsolete_libstdc++
  3. mv libstdc++. obsolete_libstdc++
  4. cp /usr/lib/libstdc++.so .

The last command copies the libstdc++ objects from your OS lib location, you may have to change that path accordingly. Please let me know if this works for your system.

 

(The following AR walks through a solution for this problem (http //www.xilinx.com/support/answers/52093.htm). I know it’s for ISE, but should be the same with Vivado).

 

Hope this helps.

 

Kind Regards,

Anatoli

Kind Regards,
Anatoli Curran,
Xilinx Technical Support
------------------------------------------------------------------------------------------------

Don’t forget to reply, kudo, and accept as solution.

If starting with Versal, take a look at our Versal Design Process Hub and our
Versal Blogs

------------------------------------------------------------------------------------------------
0 Kudos
martoni
Observer
Observer
11,671 Views
Registered: ‎02-20-2009

@anatoli: I managed to correct the problem with this workaround :

 

$ cd /opt/Xilinx/Vivado/2017.1/ids_lite/ISE/lib/lin64
$ mv libstdc++.so.6 libstdc++.so.6.bak
$ ln -s /lib/x86_64-linux-gnu/libstdc++.so.6
0 Kudos
anatoli
Moderator
Moderator
11,666 Views
Registered: ‎06-14-2010

Hello @martoni,

 

Thanks for letting us know and I'm glad to hear you have now managed to overcome this issue.

This Workaround will be useful for other users who'd encounter the same problem in the future.

Please note that the Xilinx Software Development team is aware of this problem and are currently working on a permanent fix for this issue.

 

Hope this meets your satisfaction.

 

Have a nice day.

Kind Regards,
Anatoli Curran,
Xilinx Technical Support
------------------------------------------------------------------------------------------------

Don’t forget to reply, kudo, and accept as solution.

If starting with Versal, take a look at our Versal Design Process Hub and our
Versal Blogs

------------------------------------------------------------------------------------------------
0 Kudos