[Fink-devel] Create a redistribuitable .dmg image from a compiled program

2008-07-24 Thread Flavio Pane
Valknut-aqua has an interesting function that let you create a dmg with 
the .App and all the needed libraries into dmg, so it'e easy to share 
among other users.
Is there any way to do it with other qt3/qt4-mac Apps compiled in fink?

-- 
Flavio
www.flapane.com


-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK  win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100url=/
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Create a redistribuitable .dmg image from a compiled program

2008-07-24 Thread Flavio Pane
Alexander Hansen ha scritto:
 On Jul 24, 2008, at 8:56 AM, Flavio Pane wrote:
 
 Valknut-aqua has an interesting function that let you create a dmg  
 with
 the .App and all the needed libraries into dmg, so it'e easy to share
 among other users.
 Is there any way to do it with other qt3/qt4-mac Apps compiled in  
 fink?

 -- 
 Flavio
 www.flapane.com

 
 
 In is available in the Fink valknut-aqua package?  If so, where is it?
 
 
 That's presumably set up by how the valknut developers have their app  
 bundle build set up--I wouldn't think this is necessarily specific to  
 the QT toolkit.
 
 

Refer to61  /usr/bin/make -w install-osx-app-bundle
in 
http://fink.cvs.sourceforge.net/fink/dists/10.4/unstable/main/finkinfo/net/valknut.info?view=markup

It created a working independent redistributable dmg for me.
I think it would be a nice thing for qt apps built in fink.

-- 
Flavio
www.flapane.com


-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK  win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100url=/
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Create a redistribuitable .dmg image from a compiled program

2008-07-24 Thread Alexander Hansen

On Jul 24, 2008, at 9:52 AM, Flavio Pane wrote:

 Vincent Beffara ha scritto:
 Hi,

 It created a working independent redistributable dmg for me.
 I think it would be a nice thing for qt apps built in fink.

 Do you mean that the whole Qt framework is contained in the app ?  
 That
 sounds a bit overkill ...

  /v


 No, it only embeds the libraries it needs into an .App.
 Sometimes sharing noob-proof apps to other users is necessary, it  
 would
 be a step ahead for fink, my 0,02$.

 -- 
 Flavio
 www.flapane.com




We do build .apps for a number of packages (not just for Qt3), but  
they're not actually self-contained.  If you took your Valknut.app and  
moved it to a machine that didn't have Fink I'm pretty sure it  
wouldn't work.  The .app allows for integration with Aqua and the  
Finder, but doesn't contain all of the relevant libraries.  It can be  
moved around, but won't work by itself.

Here's the output from a script that I wrote that checks what  
libraries the binaries in an installed package link to.:

  fink-check-deps.plx valknut-aqua

/sw/Applications/Valknut.app/Contents/MacOS/valknut:
SYSTEM: /System/Library/Frameworks/CoreFoundation.framework/Versions/ 
A/CoreFoundation
dclib0-unified-shlibs: /sw/lib/libdc.0.dylib
bzip2-shlibs: /sw/lib/libbz2.1.dylib
libxml2-shlibs: /sw/lib/libxml2.2.dylib
libiconv: /sw/lib/libiconv.2.dylib
qt3mac-shlibs: /sw/lib/qt3mac/lib/libqt-mt.3.dylib
SYSTEM: /usr/lib/libresolv.9.dylib
SYSTEM: /usr/lib/libSystem.B.dylib
libpng3-shlibs: /sw/lib/libpng12.0.dylib
SYSTEM: /usr/lib/libz.1.dylib
SYSTEM: /usr/lib/libssl.0.9.7.dylib
SYSTEM: /usr/lib/libcrypto.0.9.7.dylib
SYSTEM: /usr/lib/libstdc++.6.dylib
SYSTEM: /usr/lib/libgcc_s.1.dylib

It's certainly possible to build standalone apps, but these do have to  
contain every library that is needed (other than those which can be  
safely assumed to exist on the system).

It's a tradeoff:  with the way Fink does it, you don't install extra  
copies of libraries, with the penalty being that copying stuff to  
another system is much more difficult.

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK  win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100url=/
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Create a redistribuitable .dmg image from a compiled program

2008-07-24 Thread Flavio Pane
Vincent Beffara ha scritto:
 Hi,
 
 It created a working independent redistributable dmg for me.
 I think it would be a nice thing for qt apps built in fink.
 
 Do you mean that the whole Qt framework is contained in the app ? That
 sounds a bit overkill ...
 
   /v
 

No, it only embeds the libraries it needs into an .App.
Sometimes sharing noob-proof apps to other users is necessary, it would 
be a step ahead for fink, my 0,02$.

-- 
Flavio
www.flapane.com


-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK  win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100url=/
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Create a redistribuitable .dmg image from a compiled program

2008-07-24 Thread Flavio Pane
Alexander Hansen ha scritto:
 On Jul 24, 2008, at 9:52 AM, Flavio Pane wrote:
 
 We do build .apps for a number of packages (not just for Qt3), but  
 they're not actually self-contained.  If you took your Valknut.app and  
 moved it to a machine that didn't have Fink I'm pretty sure it  
 wouldn't work.  The .app allows for integration with Aqua and the  
 Finder, but doesn't contain all of the relevant libraries.  It can be  
 moved around, but won't work by itself.
 
 Here's the output from a script that I wrote that checks what  
 libraries the binaries in an installed package link to.:
 
   fink-check-deps.plx valknut-aqua
 
 /sw/Applications/Valknut.app/Contents/MacOS/valknut:
 SYSTEM: /System/Library/Frameworks/CoreFoundation.framework/Versions/ 
 A/CoreFoundation
 dclib0-unified-shlibs: /sw/lib/libdc.0.dylib
 bzip2-shlibs: /sw/lib/libbz2.1.dylib
 libxml2-shlibs: /sw/lib/libxml2.2.dylib
 libiconv: /sw/lib/libiconv.2.dylib
 qt3mac-shlibs: /sw/lib/qt3mac/lib/libqt-mt.3.dylib
 SYSTEM: /usr/lib/libresolv.9.dylib
 SYSTEM: /usr/lib/libSystem.B.dylib
 libpng3-shlibs: /sw/lib/libpng12.0.dylib
 SYSTEM: /usr/lib/libz.1.dylib
 SYSTEM: /usr/lib/libssl.0.9.7.dylib
 SYSTEM: /usr/lib/libcrypto.0.9.7.dylib
 SYSTEM: /usr/lib/libstdc++.6.dylib
 SYSTEM: /usr/lib/libgcc_s.1.dylib
 
 It's certainly possible to build standalone apps, but these do have to  
 contain every library that is needed (other than those which can be  
 safely assumed to exist on the system).
 

Of course that App still requires libraries, but the App in the 
standalone dmg is greater (about 15MB), and is consistent with the 
standalone dmg builds sizes that Hanspeter Niederstrasser did in the 
past (i.e libqt is IN the .App).
Anyway I understood the philosophy, it would be too difficult to extend 
this hand made valknut feature to all qt-mac apps.
Thank you.

-- 
Flavio
www.flapane.com


-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK  win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100url=/
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Create a redistribuitable .dmg image from a compiled program

2008-07-24 Thread Hanspeter Niederstrasser
[snipping rest of conversation]

I actually helped the Valknut programmer w/ the Makefile so that it 
would have several targets available for OS X for different purposes. 
Valknut has the abilities to

1) make (build the binary)
2) make-osx-app-bundle (creates a .app w/ the executable, but it is 
non-portable with hardcoded library paths.  Useful for Fink)
3) make-osx-standalone-app (copies all the libraries that the executable 
links to so that the resulting .app bundle can de distributed to other 
macs that don't have a build environment installed)
4) make-osx-disk-image (creates a .dmg from the standalone .app)

To answer Flavio's question, these are Valknut specific make targets. 
Other programs (both qt and non-qt based) could definitely use similar 
methods (both inside or outside their Makefiles) to create fully 
contained .apps and .dmg (probably in more efficient ways too).  The 
process is not hard, you just have to check that all non-system 
(recursively) linked libraries and resources (like pixmaps, 
translations, etc) are in the .app.

Hanspeter


-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK  win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100url=/
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Create a redistribuitable .dmg image from a compiled program

2008-07-24 Thread Alexander Hansen

On Jul 24, 2008, at 10:36 AM, Hanspeter Niederstrasser wrote:

 [snipping rest of conversation]

 I actually helped the Valknut programmer w/ the Makefile so that it
 would have several targets available for OS X for different purposes.
 Valknut has the abilities to

 1) make (build the binary)
 2) make-osx-app-bundle (creates a .app w/ the executable, but it is
 non-portable with hardcoded library paths.  Useful for Fink)
 3) make-osx-standalone-app (copies all the libraries that the  
 executable
 links to so that the resulting .app bundle can de distributed to other
 macs that don't have a build environment installed)
 4) make-osx-disk-image (creates a .dmg from the standalone .app)

 To answer Flavio's question, these are Valknut specific make targets.
 Other programs (both qt and non-qt based) could definitely use similar
 methods (both inside or outside their Makefiles) to create fully
 contained .apps and .dmg (probably in more efficient ways too).  The
 process is not hard, you just have to check that all non-system
 (recursively) linked libraries and resources (like pixmaps,
 translations, etc) are in the .app.

 Hanspeter



OK--that clarifies things.

Also, one needs to be sure sure that relative rather than absolute  
install_names are used for libraries in the .app, I would assume; and  
not to have hardcoded paths elsewhere, since some binaries encode  
pathnames in themselves (other than where install_name_tool can  
manipulate them). 

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK  win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100url=/
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Create a redistribuitable .dmg image from a compiled program

2008-07-24 Thread Vincent Beffara

Hi,

 It created a working independent redistributable dmg for me.
 I think it would be a nice thing for qt apps built in fink.

Do you mean that the whole Qt framework is contained in the app ? That
sounds a bit overkill ...

  /v

-- 
Vincent Beffara
UMPA - ENS-Lyon
46 allée d'Italie
69364 Lyon Cedex 07
Tél : 04 72 72 85 25

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK  win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100url=/
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Create a redistribuitable .dmg image from a compiled program

2008-07-24 Thread Alexander Hansen

On Jul 24, 2008, at 8:56 AM, Flavio Pane wrote:

 Valknut-aqua has an interesting function that let you create a dmg  
 with
 the .App and all the needed libraries into dmg, so it'e easy to share
 among other users.
 Is there any way to do it with other qt3/qt4-mac Apps compiled in  
 fink?

 -- 
 Flavio
 www.flapane.com



In is available in the Fink valknut-aqua package?  If so, where is it?


That's presumably set up by how the valknut developers have their app  
bundle build set up--I wouldn't think this is necessarily specific to  
the QT toolkit.



-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK  win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100url=/
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Create a redistribuitable .dmg image from a compiled program

2008-07-24 Thread Flavio Pane
Hanspeter Niederstrasser ha scritto:
 To answer Flavio's question, these are Valknut specific make targets. 
 Other programs (both qt and non-qt based) could definitely use similar 
 methods (both inside or outside their Makefiles) to create fully 
 contained .apps and .dmg (probably in more efficient ways too).  The 
 process is not hard, you just have to check that all non-system 
 (recursively) linked libraries and resources (like pixmaps, 
 translations, etc) are in the .app.
 

Thank you.

-- 
Flavio
www.flapane.com


-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK  win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100url=/
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel