mozilla/rainbow

Firefox 8, MacOS Lion, Component Load Error

doits opened this issue · 8 comments

Hello,

I wanted to test the addon, but it gives me the following error in error console:

Error: Rainbow could not load component, are you in 32-bit mode?
Source File: chrome://rainbow/content/injector.js
Line: 84

Using MacOS Lion, Firefox 8 beta. Already tried with "arch -i386", no change. Is it supposed to work on this platform?

Regards,
Markus

Hi Markus,

Yes, it does run on OSX 10.7 Lion, but you need to run it with the build of firefox you made from your mozilla-central directory. You'll find it in obj-ff-dbg/dist as 'Nightly.app'.

-EH

-----Original Message-----
From: Markus Doits [mailto:reply@reply.github.com]
Sent: Sun 10/30/2011 12:39 PM
To: Ethan Hugg (ehugg)
Subject: [rainbow] Firefox 8, MacOS Lion, Component Load Error (#20)

Hello,

I wanted to test the addon, but it gives me the following error in error console:

Error: Rainbow could not load component, are you in 32-bit mode?
Source File: chrome://rainbow/content/injector.js
Line: 84

Using MacOS Lion, Firefox 8 beta. Already tried with "arch -i386", no change. Is it supposed to work on this platform?

Regards,
Markus

Reply to this email directly or view it on GitHub:
#20

You mean I have to compile a firefox-build myself? If so, the README should be updated reflecting this - because there it looks like you only have to install the xpi and everything is ready.

Sorry, I thought you were compiling Ikran. I didn't know I got messages about Rainbow. Rainbow should run with the firefox build that matches the xulrunner-sdk you have. Sorry for the confusion.

-EH

-----Original Message-----
From: Markus Doits [mailto:reply@reply.github.com]
Sent: Mon 10/31/2011 2:58 AM
To: Ethan Hugg (ehugg)
Subject: Re: [rainbow] Firefox 8, MacOS Lion, Component Load Error (#20)

You mean I have to compile a firefox-build myself? If so, the README should be updated reflecting this - because there it looks like you only have to install the xpi and everything is ready.

Reply to this email directly or view it on GitHub:
#20 (comment)

I just compiled rainbow with the mozilla sdk 8.0 i386 (x86_64 didn't
compile), started firefox with arch -i386 and now the error changed
when I try to load the examples:

Error: uncaught exception: [Exception... "Cannot find interface
information for parameter arg 1 [IMediaRecorder.beginSession]"
nsresult: "0x80570006 (NS_ERROR_XPC_CANT_GET_PARAM_IFACE_INFO)"
location: "JS frame :: resource://rainbow/content/rainbow.js ::
<TOP_LEVEL> :: line 190" data: no]

Any idea what's wrong?

On Mon Oct 31 16:08:10 2011, Ethan Hugg wrote:

Sorry, I thought you were compiling Ikran. I didn't know I got messages about Rainbow. Rainbow should run with the firefox build that matches the xulrunner-sdk you have. Sorry for the confusion.

-EH

-----Original Message-----
From: Markus Doits [mailto:reply@reply.github.com]
Sent: Mon 10/31/2011 2:58 AM
To: Ethan Hugg (ehugg)
Subject: Re: [rainbow] Firefox 8, MacOS Lion, Component Load Error (#20)

You mean I have to compile a firefox-build myself? If so, the README should be updated reflecting this - because there it looks like you only have to install the xpi and everything is ready.

Also getting that message on my end, although I can't really tell how much have I done wrong (and I've done much wrong). I'm trying this in a Windows 7 64 bits laptop with Firefox 9.0 and xulrunner-sdk-9.0a1, and had to modify my Makefiles as follows:

diff --git a/Makefile b/Makefile
index fe85571..93e844b 100644
--- a/Makefile
+++ b/Makefile
@@ -29,7 +29,7 @@ $(so_files) $(xpt_files):

xpi: $(so_files) $(xpt_files)
rm -f $(TOPSRCDIR)/$(xpi_name)

  •   cd $(TOPSRCDIR);zip -9r $(xpi_name) $(xpi_files)
    
  •   cd $(TOPSRCDIR);"C:\Program Files\7-zip\7z.exe" a -tZip -r $(xpi_name) $(xpi_files)
    

    clean:
    rm -f $(TOPSRCDIR)/$(xpi_name)
    diff --git a/components/Makefile b/components/Makefile
    index 1074a5e..1771854 100644
    --- a/components/Makefile
    +++ b/components/Makefile
    @@ -147,7 +147,7 @@ ifeq ($(os), WINNT)
    ldflags = -NODEFAULTLIB:msvcrt
    endif

  • cppflags += -c -nologo -Zc:wchar_t- $(headers) \

  • cppflags += -c -nologo $(headers)
    -DXP_WIN=1 -DHW_THREADS=1
    -DWIN32_LEAN_AND_MEAN=1 -DMOZ_NO_MOZALLOC=1
    ldflags += -DLL -NOLOGO -SUBSYSTEM:WINDOWS
    diff --git a/install.rdf b/install.rdf
    index 82cd7c3..ea68cc1 100644
    --- a/install.rdf
    +++ b/install.rdf
    @@ -19,7 +19,7 @@
    <r:Description>
    {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
    6.0

  •    <maxVersion>9.0a1</maxVersion>
    
  •    <maxVersion>9.0</maxVersion>
    

    /r:Description

    /r:Description

diff --git a/Makefile b/Makefile
index fe85571..93e844b 100644
--- a/Makefile
+++ b/Makefile
@@ -29,7 +29,7 @@ $(so_files) $(xpt_files):

 xpi: $(so_files) $(xpt_files)
        rm -f $(TOPSRCDIR)/$(xpi_name)
-       cd $(TOPSRCDIR);zip -9r $(xpi_name) $(xpi_files)
+       cd $(TOPSRCDIR);"C:\Program Files\7-zip\7z.exe" a -tZip -r $(xpi_name) $(xpi_files)

 clean:
        rm -f $(TOPSRCDIR)/$(xpi_name)
diff --git a/components/Makefile b/components/Makefile
index 1074a5e..1771854 100644
--- a/components/Makefile
+++ b/components/Makefile
@@ -147,7 +147,7 @@ ifeq ($(os), WINNT)
        ldflags = -NODEFAULTLIB:msvcrt
   endif

-  cppflags += -c -nologo -Zc:wchar_t- $(headers) \
+  cppflags += -c -nologo  $(headers) \
        -DXP_WIN=1 -DHW_THREADS=1 \
        -DWIN32_LEAN_AND_MEAN=1 -DMOZ_NO_MOZALLOC=1
   ldflags += -DLL -NOLOGO -SUBSYSTEM:WINDOWS \
diff --git a/install.rdf b/install.rdf
index 82cd7c3..ea68cc1 100644
--- a/install.rdf
+++ b/install.rdf
@@ -19,7 +19,7 @@
       <r:Description>
         <id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</id>
         <minVersion>6.0</minVersion>
-        <maxVersion>9.0a1</maxVersion>
+        <maxVersion>9.0</maxVersion>
       </r:Description>
     </targetApplication>
   </r:Description>

Got it working. One of these things or a combination of some of them worked out:

  1. Downloaded the 9.0b2 SDK from http://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/
  2. Regenerated components/IMediaRecorder.xpt using C:\xulrunner-sdk\sdk\bin\typelib.py IMediaRecorder.idl -o IMediaRecorder.xpt -I C:\xulrunner-sdk\idl at the components folder
  3. Remade the XPI

I'm not really expierenced with debugging FF or extensions..so..

To successfully install rainbow is it required to use a nightly build of firefox or should it also work with standard Firefox 8.0.1 on Mac?
And should it work without compiling the extension on my own?

I used the standard FF with the extension installed from addons.mozilla.org and started with and without i386 arch but it doesn't work. It always gives me "window.navigator.service.media is undefined".
I also tried adding the github page to the extensions.rainbow.allowedDomains config but it didn't work. And also copying the examples and running them on localhost doesn't seem to work.. :(

Any help is appreciated as I really want to try it :)