|
From: | ian |
Subject: | Re: [Tinycc-devel] macos: DYLD_LIBRARY_PATH no longer works after cleanup |
Date: | Sat, 11 Jul 2020 07:17:13 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux i686; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 |
Hi.
Please consider not fucking everybody's mailing-list.
I ain't a chat hu ?
But FYI your contribution is welcomed, many thanks.
ian
I've pushed a fix to mob to support arbitrary libdir (c69290fb).
The relative path is now used during `make test', while the fixed libdir is used after install.
On Thursday, July 9, 2020, 09:12:06 PM GMT+3, avih via Tinycc-devel <tinycc-devel@nongnu.org> wrote:
Note to self: Make sure to double check before posting.
Turns out ./dist/lib/ remained from the previous install, which I didn't delete
before testing with --libdir=$(pwd)/dist/mylibs.
Indeed, it only creates ./dist/mylibs, and indeed it fails to find the dylib
when running ./dist/bin/tcc, (make test still works).
On Thursday, July 9, 2020, 09:02:24 PM GMT+3, avih <avihpit@yahoo.com> wrote:
Thanks. I can confirm current mob (6c94df6) does work also with custom prefix,
as well as building in a custom dir (mkdir build && cd build && ../configure ...).
However, looking at that commit, I thought it would break with a custom --libdir,
like ./configure --libdir=$(pwd)/dist/mylibs but I tried it and it still worked.
Turns out it creates both ./dist/lib and ./dist/mylibs, and libtcc.dylib is at both
of them as well as tcc/ and its content (duplicated at both dirs), though libtcc.a
is only at ./dist/lib/ .
Is that expected? I never tried using --libdir before, but commit 6c94df6 makes it look
a bit hardcoded, so I tried it now. Wouldn't it be better to specify the absolute
install [libdir] ?
Avi
On Thursday, July 9, 2020, 08:40:42 PM GMT+3, Christian Jullien <eligis@orange.fr> wrote:
I’ve found another (and better) way to achieve this:
-Wl,-rpath,"@executable_path/$(TOP)" -Wl,-rpath,"@executable_path/$(TOP)/../lib"
It is commited, can you please test this one.
From: Tinycc-devel [mailto:tinycc-devel-bounces+eligis=orange.fr@nongnu.org] On Behalf Of Christian Jullien
Sent: Thursday, July 09, 2020 19:07
To: tinycc-devel@nongnu.org; jullien@eligis.com
Cc: 'avih'
Subject: Re: [Tinycc-devel] macos: DYLD_LIBRARY_PATH no longer works after cleanup
Thanks avih, another step is missing (it works well with default install location)
Can you please test this:
$ install_name_tool -add_rpath "@executable_path/../lib/" tcc
$ make install
$ ./dist/bin/tcc -vv
tcc version 0.9.27 (x86_64 Darwin)
install: /Users/jullien/tinycc/dist/lib/tcc
…
It work for me. If it also works for you I’ll add this step to macos build
From: Tinycc-devel [mailto:tinycc-devel-bounces+eligis=orange.fr@nongnu.org] On Behalf Of avih via Tinycc-devel
Sent: Thursday, July 09, 2020 18:23
To: tinycc-devel@nongnu.org; jullien@eligis.com
Cc: avih
Subject: Re: [Tinycc-devel] macos: DYLD_LIBRARY_PATH no longer works after cleanup
Seems that moving ./dist/lib/libtcc.dylib to ./dist/bin/ makes it work,
compile programs successfully, and -run works as well.
So it seems that install target doesn't take everything into account.On Thursday, July 9, 2020, 07:17:38 PM GMT+3, avih <avihpit@yahoo.com> wrote:
Oh, I missed the commits from today.
Indeed, with latest mob (6bd0ced) this now succeeds:
./configure --disable-static && make && make test
However, when building and installing like this:
./configure --disable-static --prefix=$(pwd)/dist && make && make test && make install
Then it succeeds, but the tcc binary seems missing the dylib:
$ ./dist/bin/tcc
dyld: Library not loaded: @rpath/libtcc.dylib
Referenced from: /Users/avih/dev/tcc/tcc.upstream/./dist/bin/tcc
Reason: image not found
Abort trap: 6
When not using --disable-static, then tcc runs fine, compiles and even -run works.On Thursday, July 9, 2020, 07:07:12 PM GMT+3, Christian Jullien <eligis@orange.fr> wrote:
?? can you please try with mob and give me the complete log?
The fix is “macos: tcc searches for libtcc.dyln in the same directory as its executable”
C.
From: avih [mailto:avihpit@yahoo.com]
Sent: Thursday, July 09, 2020 17:52
To: jullien@eligis.com; tinycc-devel@nongnu.org
Subject: Re: [Tinycc-devel] macos: DYLD_LIBRARY_PATH no longer works after cleanup
What's the fix? I tried looking at the earlier messages, but didn't
see a diff/patch.
For me on osx 10.13 (real MBA) I also have the same issue when
using --disable-static, but it seems fine without it, including -run.On Thursday, July 9, 2020, 06:38:10 PM GMT+3, Michael Matz <matz.tcc@frakked.de> wrote:
Hello Christian,
(I missed the question earlier, apologies)
On Thu, 9 Jul 2020, Christian Jullien wrote:
> If you have a moment, can you please test if my macos fix for dyld also
> works on your configuration?
Yes, it works fine here on my emulated macOS.
Ciao,
Michael.
_______________________________________________
Tinycc-devel mailing list
Tinycc-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tinycc-devel_______________________________________________
Tinycc-devel mailing list
Tinycc-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tinycc-devel_______________________________________________
Tinycc-devel mailing list
Tinycc-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tinycc-devel
_______________________________________________ Tinycc-devel mailing list Tinycc-devel@nongnu.org https://lists.nongnu.org/mailman/listinfo/tinycc-devel
[Prev in Thread] | Current Thread | [Next in Thread] |