[Eric] Configuring eric4

Colin McPhail colin.mcphail at talktalk.net
Tue Dec 30 21:02:03 GMT 2008


Hi Detlev,

Yes, the Mac OS X platform name is "darwin".

I tried this patch, but got the error message about not being able to  
start developer.app.
I then made it do the same as the version 3 code (which builds the  
complete path name) but I got the same error message box (except it  
said "make sure Qt-Designer is available  as /usr/local/bin/.../ 
designer.app").
Next I tried making 'open' the command, with '/usr/local/bin/.../ 
designer.app' as the first argument and any supplied .ui file as the  
next argument.  This works OK if I invoke it from Extras->Tools- 
 >Designer 4  but if I double-click a .ui file or right-click it and  
choose 'open in designer' then I get *two* copies of Designer  
started!  One has the .ui file opened and the other is a 'clean start'.

I'm a bit confused by this.  I will play with QProcess a bit more and  
see what I can find.

Regards,
-- Colin

On 30 Dec 2008, at 11:18, Detlev Offenbach wrote:

> Hi Colin,
>
> please try the following. In UserInterface.py in method __designer  
> (around
> line 3700) find these statements.
>
>        if sys.platform == "win32":
>            designer = designer + '.exe'
>
> Please add this code after the lines.
>
>        elif sys.platform == "???":	# Enter Mac OS X platform name  
> darwin?
>            designer = designer + '.app'
>
> Please report your results.
>
> Regards,
> Detlev
>
>
> On Montag, 29. Dezember 2008, Colin McPhail wrote:
>> 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
>
>
>
> -- 
> Detlev Offenbach
> detlev at die-offenbachs.de



More information about the Eric mailing list