[Eric] Configuring eric4

Colin McPhail colin.mcphail at talktalk.net
Mon Dec 29 13:55:29 GMT 2008


On 29 Dec 2008, at 10:37, Detlev Offenbach wrote:

>> ...
>> The QT designer application is installed as /Developer/Applications/ 
>> Qt/
>> Designer.app on Mac OS X.  Designer.app is a Mac OS X  'package' (a
>> folder, really).  Inside the package is an executable called
>> Designer.  I have created a hard link  to it in ~/bin called designer
>> (lower-case 'd') and now eric4 can find it OK.  It would be nice to  
>> be
>> able to configure eric4  to find the installed executable, though.
>
> eric4 uses several executables of the Qt4 package. These are:
>
> - designer
> - linguist
> - assistant
> - lrelease
>
> eric4 expects these executables in the search path, which is set via  
> the
> environment variable PATH (at least on *nix and Win* systems). How  
> is this
> accomplished on Mac OS X? Is it standard, that the executables have an
> uppercase first letter?
>
> Unfortunately I don't own a Mac, so I need support in this area.
>
I'm not too knowledgeable about Mac OS X conventions but I've poked  
about and here's what I've discovered:

(a) Somewhat to my surprise I find that the default MAC OS X file- 
system is case-insensitive, so there is no problem about that.

(b) The Mac OS X install of Qt creates an installation directory  
(e.g.  /usr/local/Trolltech/Qt-4.4.3 ) with a bin subdirectory in  
which reside all the executable files.  Assuming your users put this  
subdirectory on their PATH then eric4 will find the plain executables  
such as lrelease, lupdate, qmake, uic, etc.

(c) Assistant, Designer and Linguist also live in this subdirectory  
but as packages (full name Designer.app, etc).

(d) There is a standard command 'open' (man page text attached) that  
can be used to execute packages.  It requires the package's full path  
however, it won't find the package just because it is held in a  
directory on the PATH.  Perhaps eric4 could find lrelease on the PATH,  
extract the directory path and use it to construct 'open' commands for  
Designer.app, Assistant.app and Linguist.app?

What I've done for now is to export a shell variable QTDIR in  
my .bashrc and to have a set of single-line shell scripts in ~/bin  
called designer, linguist and assistant that just open $QTDIR/bin/ 
Designer.app, etc.

Hope this helps.  Let me know if you need more information.

Regards,
-- Colin
-------------- next part --------------
OPEN(1)                   BSD General Commands Manual                  OPEN(1)

NNAAMMEE
     ooppeenn -- open files and directories

SSYYNNOOPPSSIISS
     ooppeenn [--ee] [--tt] [--ff] [--WW] [--nn] [--gg] [--hh] [--bb _b_u_n_d_l_e___i_d_e_n_t_i_f_i_e_r]
          [--aa _a_p_p_l_i_c_a_t_i_o_n] _f_i_l_e _._._.

DDEESSCCRRIIPPTTIIOONN
     The ooppeenn command opens a file (or a directory or URL), just as if you had
     double-clicked the file's icon. If no application name is specified, the
     default application as determined via LaunchServices is used to open the
     specified files.

     If the file is in the form of a URL, the file will be opened as a URL.

     You can specify one or more file names (or pathnames), which are inter-
     preted relative to the shell or Terminal window's current working direc-
     tory. For example, the following command would open all Word files in the
     current working directory:

     open *.doc

     Opened applications inherit environment variables just as if you had
     launched the application directly through its full path.  This behavior
     was also present in Tiger.

     The options are as follows:

     --aa aapppplliiccaattiioonn
         Specifies the application to use for opening the file

     --bb bbuunnddllee__iinnddeennttiiffiieerr
         Specifies the bundle identifier for the application to use when open-
         ing the file

     --ee  Causes the file to be opened with /Applications/TextEdit

     --tt  Causes the file to be opened with the default text editor, as deter-
         mined via LaunchServices

     --ff  Reads input from standard input and opens the results in the default
         text editor.  End input by sending EOF character (type Control-D).
         Also useful for piping output to ooppeenn and having it open in the
         default text editor.

     --WW  Causes ooppeenn to wait until the applications it opens (or that were
         already open) have exited.  Use with the --nn flag to allow ooppeenn to
         function as an appropriate app for the $$EEDDIITTOORR environment variable.

     --nn  Open a new instance of the application(s) even if one is already run-
         ning.

     --gg  Do not bring the application to the foreground.

     --hh  Searches header locations for a header whose name matches the given
         string and then opens it.  Pass a full header name (such as NSView.h)
         for increased performance.

EEXXAAMMPPLLEESS
     "open '/Volumes/Macintosh HD/foo.txt'" opens the document in the default
     application for its type (as determined by LaunchServices).

     "open '/Volumes/Macintosh HD/Applications/'" opens that directory in the
     Finder.

     "open -a /Applications/TextEdit.app '/Volumes/Macintosh HD/foo.txt'"
     opens the document in the application specified (in this case, TextEdit).

     "open -b com.apple.TextEdit '/Volumes/Macintosh HD/foo.txt'" opens the
     document in the application specified (in this case, TextEdit).

     "open -e '/Volumes/Macintosh HD/foo.txt'" opens the document in TextEdit.

     "ls | open -f" writes the output of the 'ls' command to a file in /tmp
     and opens the file in the default text editor (as determined by Launch-
     Services).

     "open http://www.apple.com/" opens the URL in the default browser.

     "open 'file://localhost/Volumes/Macintosh HD/foo.txt'" opens the document
     in the default application for its type (as determined by LaunchSer-
     vices).

     "open 'file://localhost/Volumes/Macintosh HD/Applications/'" opens that
     directory in the Finder.

     "open -h NSView" lists headers whose names contain NSView and allows you
     to choose which ones to open.

     "open -a Xcode -h NSString.h" quickly opens /System/Library/Frame-
     works/Foundation.framework/Headers/NSString.h in Xcode.

HHIISSTTOORRYY
     First appeared in NextStep.

Mac OS X                       February 10, 2004                      Mac OS X
-------------- next part --------------





More information about the Eric mailing list