Giter Club home page Giter Club logo

When Configure checks the integrity of Perl, running the ls command encounters an error message related to “grep: warning: stray \ before -.” This causes Configure to mistakenly judge the package as incomplete about perl5 HOT 7 OPEN

hongjinghao avatar hongjinghao commented on August 28, 2024
When Configure checks the integrity of Perl, running the ls command encounters an error message related to “grep: warning: stray \ before -.” This causes Configure to mistakenly judge the package as incomplete

from perl5.

Comments (7)

jkeenan avatar jkeenan commented on August 28, 2024 1

Module:

Description

The error in the ls command prevents Perl from passing the integrity check

[   57s] + /bin/sh Configure -des -Doptimize=none '-Dccflags=-O2 -g -grecord-gcc-switches -pipe -fstack-protector-strong  -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/generic-hardened-cc1 -fasynchronous-unwind-tables -fstack-clash-protection' '-Dldflags=-Wl,-z,relro   -Wl,-z,now -specs=/usr/lib/rpm/generic-hardened-ld' '-Dccdlflags=-Wl,--enable-new-dtags -Wl,-z,relro   -Wl,-z,now -specs=/usr/lib/rpm/generic-hardened-ld' '-Dlddlflags=-shared -Wl,-z,relro   -Wl,-z,now -specs=/usr/lib/rpm/generic-hardened-ld' -Dshrpdir=/usr/lib64 -DDEBUGGING=-g -Dversion=5.38.0 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr/local -Dsitelib=/usr/local/share/perl5 -Dprivlib=/usr/share/perl5 -Dsitearch=/usr/local/lib64/perl5 -Dvendorlib=/usr/share/perl5/vendor_perl -Darchlib=/usr/lib64/perl5 -Dvendorarch=/usr/lib64/perl5/vendor_perl -Darchname=aarch64-linux-thread-multi '-Dlibpth=/usr/local/lib64 /lib64 /usr/lib64' -Duseshrplib -Dusethreads -Duseithreads -Ui_ndbm -Di_gdbm -Dusedtrace=/usr/bin/dtrace -Ubincompat5005 -Dusesitecustomize -Duselargefiles -Dd_semctl_semun -Di_db -Duse64bitint -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dscriptdir=/usr/bin -Dinstallusrbinperl=n -Uversiononly '-Dpager=/usr/bin/less -isr' -Dd_gethostent_r_proto -Ud_endhostent_r_proto -Ud_sethostent_r_proto -Ud_endprotoent_r_proto -Ud_setprotoent_r_proto -Ud_endservent_r_proto -Ud_setservent_r_proto

@hongjinghao, you are using an enormous number of switches to your invocation of ./Configure. At the same time, you have provided us with no information about the platform on which you are attempting to build perl. This makes it extremely difficult for us to diagnose the problem.

I would recommend that (a) provide us with that system information; and (b) that you start out with a simple invocation like this:

sh ./Configure -des

... and then add other switches one at a time until ./Configure breaks in the way you describe above. For instance, the following switches are often used, singly or in combination, in configuring a perl build:

-Dusethreads
-DDEBUGGING
-Duse64bitint
...

from perl5.

hongjinghao avatar hongjinghao commented on August 28, 2024

Is it possible to replace ls with -e in the Configure to check if files exist?

from perl5.

Leont avatar Leont commented on August 28, 2024

The error in the ls command prevents Perl from passing the integrity check

I'm not sure where that conclusion comes from? That error is strongly suggesting it comes from grep not ls.

Can you try to check if any of the many arguments you pass to Configure is related to this?

from perl5.

haarg avatar haarg commented on August 28, 2024

I don't see anything in that part of Configure calling grep.

from perl5.

hongjinghao avatar hongjinghao commented on August 28, 2024

The error in the ls command prevents Perl from passing the integrity check

I'm not sure where that conclusion comes from? That error is strongly suggesting it comes from grep not ls.

Can you try to check if any of the many arguments you pass to Configure is related to this?

I’m also puzzled why using ls triggers a warning related to grep. I wonder if checking the integrity of Perl relies on ls . If ls fails due to reasons other than missing files, this could lead to false positives.

from perl5.

hongjinghao avatar hongjinghao commented on August 28, 2024

I don't see anything in that part of Configure calling grep.

Yes, I also didn’t see any grep in Perl integrity check during Configure. However, when I executed the command without the ls part, there were no warnings.

    for filelist in x??; do
       (cd "$rsrc"; cat "$tmppwd/$filelist" \
           >/dev/null 2>>"$tmppwd/missing")
    done

It’s possible that this behavior is related to my environment. As for validating Perl integrity, is it really necessary to use ls? If the sole purpose using ls is to confirm file existence,. Can we use -e as a replacement?

from perl5.

Leont avatar Leont commented on August 28, 2024

@Tux you have any ideas?

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.