texinfo-devel
[Top][All Lists]
Advanced

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

Re: Using Perl's cc


From: Gavin Smith
Subject: Re: Using Perl's cc
Date: Fri, 3 Jul 2015 14:01:11 +0100

On 3 July 2015 at 13:30, Eli Zaretskii <address@hidden> wrote:
> Could you, or someone else, please explain how this will be used in a
> build of a future Texinfo, assuming you are talking to Perl
> non-experts?  I have no experience in building Perl extensions.

I've sent another email to bug-texinfo to explain another issue to say
why using the same compiler that was used for Perl is needed, in
addition to the compiler flags problem that Bob Friesenhahn brought
up.

> I'm afraid this might mean serious complications for the MinGW port of
> Texinfo, for at least 2 reasons:
>
>   . the Perl build used while building Texinfo in general is different
>     from the one that will be used when the built Texinfo is installed
>     (and thus the C compiler will be different)

The C compiler should not be needed to be installed for using a
prebuilt Texinfo package. The big question is ABI: will the loadable
modules that are distributed as part of a binary Texinfo package be
compatible with the Perl executable?

I think we need the same compiler to build an extension, but I don't
know about running the extension. It's possible that a module could be
loaded for a different Perl to the one it was compiled against, but I
am still trying to find out if this is the case. There are some
properties which we need, and which are likely: the processor
architecture being the same, the calling convention being the same,
the use of system calls matching and so on. It's possible that it
won't work in spite of that: it depends on whether the Perl developers
made the ABI between perl executables and loadable modules stable.

If it turns out the same Perl version is needed, MinGW, and other
distributions, would have to make sure that the same Perl was
installed somewhere, and that it was used when texi2any was run.

>
>   . the C compiler used to build Perl might not be installed on the
>     machine where Texinfo is being built, since none of the builds of
>     Perl involved in the Texinfo build are MinGW builds
>
> So if the design is based on the assumption that the same compiler
> used to build Perl is available when building Texinfo, this would
> complicate things on Windows to a great extent.

The problem is with the Perl development headers, which record
information about the system being compiled on. We need these headers
in order to build the extension - I don't think there's any way around
this.

> (I can describe these issues in detail, if needed, but I thought to
> request an overview first, in case my fears are based on lack of
> knowledge, and the problem doesn't actually exist.)

I think we all have a lack of knowledge here. Have you had any success
in building and using the extension module from the current trunk
under Windows?



reply via email to

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