Trolltech Home | Qt-interest Home | Recent Threads | All Threads | Author | Date
All threads index page 6

Qt-interest Archive, February 2008
Qmake changing --prefix paths that are symlinks to full paths


Message 1 in thread

Hi,  I am trying to build an application that uses qmake.  When I
./configure the application I want to use a --prefix that exists and is
a symlink.  However, when I do this qmake transmogrifys my --prefix path
into the real location pointed to by the symlink.  This then causes
major problems when make installing into a sandboxed install root.  Is
there any way to stop this behavior?


begin:vcard
begin:vcard
fn:Ivan Sears
n:Sears;Ivan
org:University of New Brunswick;Faculty of Computer Science
adr:Gillin Hall, Rm. E-121;;540 Windsor St.;Fredericton, NB;NB;E3B 5A3;Canada
email;internet:isears@xxxxxx
title:Manager, Systems Support Division
tel;work:506-447-3055
tel;fax:506-453-3566
x-mozilla-html:FALSE
url:http://www.cs.unb.ca
version:2.1
end:vcard


Message 2 in thread

On Thursday 28 February 2008 15:37:51 Ivan Sears wrote:
> Hi, ÂI am trying to build an application that uses qmake. ÂWhen I
> ./configure the application I want to use a --prefix that exists and is
> a symlink. ÂHowever, when I do this qmake transmogrifys my --prefix path
> into the real location pointed to by the symlink. ÂThis then causes
> major problems when make installing into a sandboxed install root. ÂIs
> there any way to stop this behavior?

How are you telling qmake to set the RPATH? What did you add to your .pro 
file? What command-line is run, exactly, during linking?

Since qmake doesn't generate a ./configure script, you must be doing something 
else.

-- 
 [ signature omitted ] 

Attachment: signature.asc
Description: This is a digitally signed message part.


Message 3 in thread

I'm actually trying to bundle (build an RPM package) of someone else's 
software.  I'll try to answer your questions as best as possible.

- When I run the ./configure I specify where I want the software to be 
installed by using --prefix=/opt/<software>

- this process builds a config.mak file that has the prefix specified 
correctly.

- when I run make I see that in the Makefile it is specified to run 
lines like;  cd libs && $(QMAKE) libs.pro "QMAKE_PROJECT_DEPTH=0" 
"QMAKE=/usr/lib/qt-3.3/bin/qmake" -o $(MAKEFILE)

- this generates Makefiles in subsequent directories that contain lines 
like; -$(INSTALL_FILE) "<somefile>" 
"$(INSTALL_ROOT)/opt/<software>/include/<somefile>"
if prefix doesn't exist or is not a symlink or if not in same build path 
(which is a whole other issue because then it changes the INSTALL_ROOT 
line to ../../../../../../../ )

The problem is if my configure prefix path exists and is a symlink I end 
up with a line like : -$(INSTALL_FILE) "<somefile>" 
"$(INSTALL_ROOT)/<expanded symlink path>/<software>/include/<somefile>"

I don't want QMAKE to change the path at all from what I specify in 
./configure

Now, to answer your questions:

1) I do not see that RPATH is being set anywhere.
2) I did not add anything to the .pro file and there are way to many of 
those to answer the question concisely.
3) I'm not exactly sure how to get the command that is run during linking.
4) the .configure script is already there.  Qmake is generating the 
Makefiles.

Hope this helps shed some light.  Thanks for the help.


Thiago Macieira wrote:
> On Thursday 28 February 2008 15:37:51 Ivan Sears wrote:
>> Hi,  I am trying to build an application that uses qmake.  When I
>> ./configure the application I want to use a --prefix that exists and is
>> a symlink.  However, when I do this qmake transmogrifys my --prefix path
>> into the real location pointed to by the symlink.  This then causes
>> major problems when make installing into a sandboxed install root.  Is
>> there any way to stop this behavior?
> 
> How are you telling qmake to set the RPATH? What did you add to your .pro 
> file? What command-line is run, exactly, during linking?
> 
> Since qmake doesn't generate a ./configure script, you must be doing something 
> else.
> 

-- 
 [ signature omitted ] 
begin:vcard
fn:Ivan Sears
n:Sears;Ivan
org:University of New Brunswick;Faculty of Computer Science
adr:Gillin Hall, Rm. E-121;;540 Windsor St.;Fredericton, NB;NB;E3B 5A3;Canada
email;internet:isears@xxxxxx
title:Manager, Systems Support Division
tel;work:506-447-3055
tel;fax:506-453-3566
x-mozilla-html:FALSE
url:http://www.cs.unb.ca
version:2.1
end:vcard


Message 4 in thread

Ivan Sears wrote:
>1) I do not see that RPATH is being set anywhere.

Forget RPATH. I misread your message. It has nothing to do with that 
feature.

-- 
 [ signature omitted ] 

Attachment: signature.asc
Description: This is a digitally signed message part.