Solved

Installation software

Posted on 2004-09-23
3
267 Views
Last Modified: 2013-12-26
For Windows we have many installation-maker software -- from huge commercial InstallShield to free InnoSetup.
What about Mac? How you create installation package from compiled software?
0
Comment
Question by:Korsar_13
  • 2
3 Comments
 
LVL 23

Accepted Solution

by:
brettmjohnson earned 500 total points
ID: 12138732
Nearly all simple-to-moderately complex Mac OS X applications are self-contained:
all executable code, shared libraries (bundles or frameworks), localizable resources,
etc. are encapsulated within a directory with specific format and a .app filename
extension (an application wrapper).  This allows the user to perform simple drag-n-drop
installations - dragging the app by its icon and dropping it on the destination folder,
typically /Applications or ~/Applications.  These self-contained apps make installation
(and removal) trivial.

However some applications require more complex installations:
Components might need to be installed in specific places, for instance fonts and
frameworks that are used by other applications, system utilities, services and
daemons (startup items).   Some installations may require scripts to run pre- or post-
install.  These are usually done using the Mac OS X built-in Installer application.
(Unlike Windows, Mac OS X has a built-in Installer app - good news for developers -
bad news for third party installer companies like installshield).  The Apple developer
tools contain an app called "PackageMaker" to help you build Installer packages:

http://developer.apple.com/documentation/DeveloperTools/Conceptual/SoftwareDistribution/index.html


App bundles and Installer packages are both directory trees containing many files.
For distribution purposes, it is often convenient to package all the files in a compressed
archive.  In the Windows world, .ZIP archives are commonly used.  Mac OS X understands
.ZIP archives, but it is not commonly used under Mac OS X.  Smaller installations may
use the more Unix-traditional .tar.gz compression packaging (which will be automatically
expanded by the Finder, when downloaded).  However, most OS X savvy apps are distributed
on compressed disk image files (.dmg) which are easily createable:

http://developer.apple.com/documentation/DeveloperTools/Conceptual/SoftwareDistribution/index.html

0
 
LVL 1

Author Comment

by:Korsar_13
ID: 12140057
Thanks for your answer.

One more question: currently our company porting some Photoshop plug-ins from Windows to Mac.
Under Windows, system registry checking allows us to find applications  already installed (Photoshop, Photoshop Elements, PaintShopPro, PhotoPaint etc), so that we can install our plug-ins into these applications.

How can I find out  what applications are  installed on Mac and  where the information is kept?
0
 
LVL 23

Expert Comment

by:brettmjohnson
ID: 12151305
Although Apple has standardized many things with Mac OS X, plug-in management does not
appear to be one of them.

Many of the newer Mac OS X specific apps don't store the plug-ins in the application wrapper.
That makes it more difficult to upgrade or re-install the app without damaging or losing the
extensions.  For instance Apple apps store store plug-ins in plug-in directories in /Library or
~/Library.  

Although I do not have Photoshop installed, it apparently stores plug-ins within the application
directory.   This convention probably carries over from the Classic MacOS (along with the file
naming conventions used here: http://www.adobe.com/support/downloads/detail.jsp?ftpID=1878 )

You can use the 'locate'  or  'find'  command to find installed software.  Again, I don't have
photoshop installed (so I don't know the exact installed filename), but it would be something
like this:
      locate "*/Adobe Photoshop CS.app"
The locate command allows rudimentary filename globbing, but not full regular expressions.
You may have to use awk, sort, uniq, etc to clean up the output.

0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
how to monitor remote shell execution on linux 9 104
modThree challenge 4 99
firstChar challenge 13 121
Problem to event 3 104
Here is how to use MFC's automatic Radio Button handling in your dialog boxes and forms.  Beginner programmers usually start with a OnClick handler for each radio button and that's just not the right way to go.  MFC has a very cool system for handli…
Have you tried to learn about Unicode, UTF-8, and multibyte text encoding and all the articles are just too "academic" or too technical? This article aims to make the whole topic easy for just about anyone to understand.
The purpose of this video is to demonstrate how to set up the WordPress backend so that each page automatically generates a Mailchimp signup form in the sidebar. This will be demonstrated using a Windows 8 PC. Tools Used are Photoshop, Awesome…
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question