libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Absolute paths generated by libtool.


From: Christopher Hulbert
Subject: Re: Absolute paths generated by libtool.
Date: Tue, 14 Nov 2006 15:33:26 -0500

On 11/14/06, Benoit Sigoure <address@hidden> wrote:
Quoting Christopher Hulbert <address@hidden>:
>
>>
>> My idea was to write a perl script and to invoke make
>> SHELL=my_shell.pl. That
>> script would rewrite the command properly so that it works within the Cygwin
>> environment. I succeeded and I can now run configure scripts and compile my
>> projects using that shell-wrapper.
>> In order to make this automatic and transparent, I have ~/bin first in my
>> PATH and I wrote a shell script named make.exe there that forwards the
>> invocation of make to mingw's GNU make with the SHELL variable set.
>
> Hopefully you can get rid of all this if you use the patched make?

I don't think so, this problem is independant of make.
make will always end up running /bin/sh -c C:\Qt\4.2.1\bin\... which
will always
yield C:Qt4.2.1bin. Unless your patch (which I haven't looked yet) also
provides
some black magic to reverse the backslashes.

I *think* it will work. Perhaps this would convince you more:

-bash-3.2$ rm test.exe
-bash-3.2$ cat test.c
#include <stdlib.h>
#include <stdio.h>

int
main(void)
{
   printf("test.exe\n");
   return EXIT_SUCCESS;
}
-bash-3.2$ cat Makefile
c:\cygwin\home\chulbert\test.exe: c:\cygwin\home\chulbert\test.c
       gcc -mno-cygwin -o $@ $<
-bash-3.2$ make
gcc -mno-cygwin -o c:\cygwin\home\chulbert\test.exe
c:\cygwin\home\chulbert\test.c
-bash-3.2$ ./test.exe
test.exe



>
>>
>> However, on last problem remains, and that's where libtool comes in. MingW
>> applications don't know anything about the cygwin environment, they're not
>> aware of the pseudo filesystem emulated by cygwin. At the end of the
>> compilation, libtool is invoked to link the final executable but for some
>> reason, it transforms a relative path in an absolute one:
>>
>
> *snip link*
>> 
/home/build/build/urbidev_winxp/build/behavior-graphs/src/xml_parser/.libs/libfsm_xml_parser.a:
>> No such file or directory
>
> Make sure to specify prefix and exec-prefix in the form
> "c:/path/for/install". This is what libtool puts in the .la (I think).
>

I highly doubt it's the case (although I haven't tried ATM) because the
.la has
references to the build dir.

Can you post the .la file?




reply via email to

[Prev in Thread] Current Thread [Next in Thread]