Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Deploying XULRunner 1.8 on OS X?

7 views
Skip to first unread message

peter....@gmail.com

unread,
Nov 12, 2006, 1:07:09 AM11/12/06
to
I'm trying to follow the instructions at:


http://developer.mozilla.org/en/docs/XULRunner:Deploying_XULRunner_1.8

in order to build a completely standalone XUL app on OS X (10.4.8). I
took an Foo.app directory created with xulrunner-bin --install-app and
tried to copy (using rsync -rl) the XUL.framework directory into a
Frameworks directory in the .app bundle and then deleting the
XUL.framework directory from /Library/Frameworks (to test whether my
app is actually stand-alone.) When I do that, running my app fails
silently. It works fine when the XUL.framework is installed in
/Library/Frameworks. Any suggestions?

-Peter

Håkan Waara

unread,
Nov 12, 2006, 5:27:29 PM11/12/06
to
You can't just move around a framework and expect the app to know where
to find it at runtime. Inside the framework there are shared libraries
(dylibs) that have an install location coded into them.

Also, your application is dynamically linked to the framework and
expects it to be at a certain location.

You can use the command 'otool -L myfile' on the app binary or any of
your dylibs to find out which libraries they depend on, and the
expected install location of the files themselves.

If you want to change any of these "hardcoded at compile time"
locations, you'll need to use install_name_tool. Or better yet, make
sure your build projects does this for you.

Either way, there are documents about this on www.cocoadev.com

/Håkan

peter....@gmail.com skrev:

Håkan Waara

unread,
Nov 12, 2006, 5:31:16 PM11/12/06
to
Note that I'm just talking about how frameworks work in general, and
haven't looked into how XULRunner's framework is built.

I'm just saying that you probably want to define the path of the
framework at compile-time, rather than move it after the fact.

/Håkan

peter....@gmail.com

unread,
Nov 13, 2006, 12:27:19 AM11/13/06
to

Hmmm, well the XULRunner deployment instructions imply that this should
work. Has anyone actually tried it?

-Peter

Benjamin Smedberg

unread,
Nov 13, 2006, 2:02:28 AM11/13/06
to

The packages of the Firefox release repackager
http://benjamin.smedbergs.us/release-repackager/ use the embedded framework
successfully. Please make sure you're using 1.8.0.4 or later (not 1.8.0.1,
which had a bug that prevented this from working properly).

--BDS

Benjamin Smedberg

unread,
Nov 13, 2006, 2:03:59 AM11/13/06
to
Håkan Waara wrote:
> You can't just move around a framework and expect the app to know where
> to find it at runtime. Inside the framework there are shared libraries
> (dylibs) that have an install location coded into them.

In this case you can (that's one of the reasons we have the standalone
glue). You should not ever need to use otool on the XUL.framework or your
application if you have linked them using the standalone glue.

This is mostly irrelevant for XUL applications anyway, since they're running
the xulrunner-bin binary.

--BDS

peter....@gmail.com

unread,
Nov 14, 2006, 5:58:47 PM11/14/06
to

Hmmm, now it works. I wonder what I was doing wrong before. Anyway,
thanks for the example.

-Peter

0 new messages