Giter Club home page Giter Club logo

Comments (4)

p5pRT avatar p5pRT commented on August 28, 2024

From [email protected]

[resend​: bounced at defender.perl.org wih this lot last time​:
RFgen​::logg(Initial​: [12884] (/home/richard/bugs/logs/pb_19990609) /home/richard/bugs/scripts/tm_mailproc.pl set) can't open today's log (/home/richard/bugs/logs/pb_19990609)! Permission denied at /home/richard/site_perl/RFgen.pm line 193, <STDIN> chunk 126.
554 "|/home/richard/bugs/scripts/tm_mailproc.pl"... unknown mailer error 13
]

When I attempt to use perlcc to compile any Perl program, the
diagnostic output includes many line-pairs of the type

No definition for sub Fcntl​::F_DUPFD
No definition for sub Fcntl​::F_DUPFD (unable to autoload)

Further, if I attempt to compile a program that uses some module with
an XS component (for example, Socket), the output includes more
warnings relating to that module​:

No definition for sub Socket​::MSG_PROXY
No definition for sub Socket​::MSG_PROXY (unable to autoload)

and so on.

On reaching the link stage, ld complains

/tmp/cc0004921.o(.rw+0xcf70)​:t.p.c​: undefined reference to `XS_Fcntl_constant'

and maybe

t2.p.o(.rw+0x12ade)​:t2.p.c​: undefined reference to `XS_Socket_pack_sockaddr_in'

and so on, and produces no executable.

A hacky way round this is to rerun the cc command line produced by
perlcc, but adding the relevant module library names (such as
/usr/local/lib/perl5/5.00557/powerpc-machten/auto/Fcntl/Fcntl.a)
after -lperl. This produces working output.

Looking at B/C.pm, I see the warnings are coming from and try_autoload()
and B​::CV​::save(). But I don't know where to start in persuading these
functions to add the relevant static library to the cc command line
(if it hasn't already been added) on encountering an external function
instead of doing whatever it is that they do now in order to get a
dynamic library to satisfy the reference. (Or I suppose you could just
add all installed module libraries unconditionally, as makemaker does.)

Perl Info


Site configuration information for perl 5.00557:

Configured by domo at Sat May 29 19:17:27 WET DST 1999.

Summary of my perl5 (revision 5.0 version 5 subversion 57) configuration:
  Platform:
    osname=machten, osvers=4.1.1, archname=powerpc-machten
    uname='machten ppp1 4 1.1 powerpc '
    config_args='-des'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=undef useperlio=undef d_sfio=undef
    use64bits=undef usemultiplicity=undef
  Compiler:
    cc='cc', optimize='-O2 -fomit-frame-pointer', gccversion=2.8.1
    cppflags='-DNOTDEF_MACHTEN -DREG_INFTY=2047'
    ccflags ='-DNOTDEF_MACHTEN -DREG_INFTY=2047'
    stdchar='char', d_stdstdio=undef, usevfork=true
    intsize=4, longsize=4, ptrsize=4, doublesize=8
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8
    alignbytes=8, usemymalloc=y, prototype=define
  Linker and Libraries:
    ld='ld', ldflags =' -Xlstack=1048576 -L/usr/local/lib'
    libpth=/usr/local/lib /usr/lib
    libs=-lndbm -lgdbm -ldb -ldl -lm -lc
    libc=/usr/lib/libc.a, so=so, useshrplib=false, libperl=libperl.a
  Dynamic Linking:
    dlsrc=dl_none.xs, dlext=none, d_dlsymun=undef, ccdlflags=''
    cccdlflags='', lddlflags=''

Locally applied patches:
    
    [eval patch from "Trying out the compiler" "Vishal Bhatia"
        <[email protected]> to p5p, Fri, 28 May 1999 02:30:50 -0700]

@INC for perl 5.00557:
    /usr/local/lib/perl5/5.00557/powerpc-machten
    /usr/local/lib/perl5/5.00557
    /usr/local/lib/perl5/site_perl/5.00557/powerpc-machten
    /usr/local/lib/perl5/site_perl/5.00557
    .


Environment for perl 5.00557:
    HOME=/home/domo
    LANG (unset)
    LANGUAGE (unset)
    LD_LIBRARY_PATH=/usr/lib
    LOGDIR (unset)
    PATH=/sbin:/usr/sbin:/home/domo/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11/bin:/usr/libexec
    PERL_BADLANG (unset)
    SHELL=/bin/bash

-- 
Dominic Dunlop



from perl5.

p5pRT avatar p5pRT commented on August 28, 2024

From [Unknown Contact. See original ticket]

Anyone else seen a duplicate of this problem? I'm building a static
installation to test.

Nat

When I attempt to use perlcc to compile any Perl program, the
diagnostic output includes many line-pairs of the type

No definition for sub Fcntl​::F_DUPFD
No definition for sub Fcntl​::F_DUPFD (unable to autoload)

Further, if I attempt to compile a program that uses some module with
an XS component (for example, Socket), the output includes more
warnings relating to that module​:

No definition for sub Socket​::MSG_PROXY
No definition for sub Socket​::MSG_PROXY (unable to autoload)

and so on.

from perl5.

p5pRT avatar p5pRT commented on August 28, 2024

From [Unknown Contact. See original ticket]

At 21​:55 -0700 2000-03-20, Nathan Torkington wrote​:

When I attempt to use perlcc to compile any Perl program, the
diagnostic output includes many line-pairs of the type

No definition for sub Fcntl​::F_DUPFD
No definition for sub Fcntl​::F_DUPFD (unable to autoload)

Anyone else seen a duplicate of this problem? I'm building a static
installation to test.

Yes, I see that too. (Static build of RC2 for MachTen 4.1.4.) Byte
code compile works, FWIW. No time to investigate just now.
--
Dominic Dunlop

from perl5.

p5pRT avatar p5pRT commented on August 28, 2024

From [Unknown Contact. See original ticket]

This ticket, against 5.005_57, can be closed​: bleadperl perlcc now
des, er does, work on MachTen, a statically-linked system. (Doesn't
on 5.6.0, however -- but 5.6.0 perlcc's pretty broken in general I
believe.)

from perl5.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.