#540: installed versions of dynext/*.so still link to -lparrot in build
directory
----------------------+-----------------------------------------------------
Reporter: doughera | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: install | Version:
Severity: medium | Resolution:
Keywords: | Lang:
Patch: | Platform:
----------------------+-----------------------------------------------------
Comment(by plobsing):
Replying to [comment:17 doughera]:
> Replying to [comment:16 plobsing]:
>
> > extra_nci_thunks.c includes function calls to
Parrot_pcc_fill_params_from_c_args(), which is part of libparrot. These
calls are essential to the operation of this library, therefore it must be
linked against libparrot to operate correctly.
>
> I don't understand this. The same could be said about other items in
dynext/, but they aren't linked directly against libparrot. I don't see
why extra_nci_thunks.so needs special treatment.
Perhaps it is based on a misunderstanding of dynamic linking, but my
preference is a direct and explicit link for all parrot-expecting dynext
libraries. The simple reason is that an implicit "whatever loads me will
have these symbols defined" approach breaks down occasionally. For
example, blizkost had (and subsequently worked around at the cost of
developer time) issues with XS libraries because these libraries made
exactly that assumption, and it proved not to be true.
--
Ticket URL: <https://trac.parrot.org/parrot/ticket/540#comment:18>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets