New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
failed to compile perl5 when path includes the string "blib" #14801
Comments
From rongqing.li@windriver.com1. failed to compile perl5 when path includes the string "blib" #mkdir blib 2. the possible patch is below: |
From @jkeenanOn Sun Jul 12 19:08:58 2015, rongqing.li@windriver.com wrote:
PathTools is a library which is distributed with the Perl 5 core, but also available on CPAN (http://search.cpan.org/dist/PathTools/). The fact that it is in the 'dist/' means that it is primarily maintained by the Perl 5 Porters. However, any deficiency in dist/PathTools/Makefile.PL would *at most* affect the compilation of the PathTools library. It would *not* affect the compilation of perl 5 as a whole. So I doubt that a change to that Makefile.PL would be the remedy to your problem -- if indeed your problem is a failure of perl5 as a whole? Could you please post, as an attachment to this bug report (or email attachment), the complete arguments you used to configure Perl and all the output of 'sh ./Configure' and 'make' up to the point where you experienced a failure? Also, please let us know your OS; how you are attempting to build Perl 5; etc. Thank you very much. |
The RT System itself - Status changed from 'new' to 'open' |
From rongqing.li@windriver.comOn Mon Jul 13 15:37:54 2015, jkeenan wrote:
I am using Ubuntu 14.04 LTS; the configure log, make log, and config.h are attached thanks. |
From @jkeenanOn Sun Jul 12 19:08:58 2015, rongqing.li@windriver.com wrote:
Is there some reason why you are trying to configure and build perl in a directory whose path ends in 'blib'? For most Perl modules 'blib' is a directory reserved for the build process. It is something typically created by 'make'. While I suppose there is no law against working in a directory called 'blib', it does seem to be asking for trouble. Can you explain why you are attempting this? Thank you very much. -- |
From rehsack@gmail.com
As far as I understand, Roy is complaining about reserved words in path. From non-perl developers point of view, failing in configure stage with an blib already computes them, maybe sharing them (our) and PathTools filter I don't know about any other project failing because of reserved word in Cheers |
From rongqing.li@windriver.comOn 2015年07月15日 09:58, James E Keenan via RT wrote:
no special reason; I are building a Yocto project, which includes perl; I think others must spend lots of effect to find why -Roy
-- |
From rongqing.li@windriver.comOn 2015年07月15日 13:58, Jens Rehsack via RT wrote:
Yes, I agree -Roy |
From @iabynOn Wed, Jul 15, 2015 at 02:59:36PM +0800, Rongqing Li wrote:
I agree that perl should build regardless of whether the 4 chars "blib" BEGIN { @INC = grep {!/blib/} @INC } will fix the immediate problem. However, since I don't understand what I would speculate that its trying to avoid picking up files from the blib/ BEGIN { @INC = grep {!/^blib/} @INC } ? By why that would have been thought necessary, I don't know. The history if this line is that originally PathTools, as part of Cwd, -- |
From rehsack@gmail.com
That's why I voted against that patch in open-embedded and pressured for It is very reasonable to find the root cause as you started below.
Maybe Steffen Müller has an idea (especially at PathTools I'm always Cheers |
From @TuxOn Thu, 16 Jul 2015 14:05:21 +0100, Dave Mitchell <davem@iabyn.com>
That is wrong anyway, it should most likely be /\bblib\b/. I see no
-- |
From rongqing.li@windriver.comOn 2015年07月21日 20:55, H. Merijn Brand via RT wrote:
could you submit a patch for this issue thanks -Roy |
From rongqing.li@windriver.comOn 2015年07月21日 20:55, H. Merijn Brand via RT wrote:
it can not fix all issues to replace /blib/ with /\bblib\b/. /\bblib\b/ will make the building path "/tmp/xxxxblibyy/" work. since \b is anchor in perl -Roy |
From rehsack@gmail.com
The more I think about the source of the line (Module::Build::Compat), Cheers |
From @tonycozOn Thu Jul 16 06:18:09 2015, rehsack@gmail.com wrote:
The offending line was added to fix this bug: https://rt.cpan.org/Ticket/Display.html?id=4681 The line wasn't generated by Module::Build::Compat Tony |
From rehsack@gmail.com
The bug looks very weird - where comes the dirty Cwd 2.08 stuff from? However - 10 years later searching and fixing the root-cause might not Let's try to figure out how to fix the symptom fix to avoid breakage Merijn proposed using /\bblib\b/ instead of /blib/ - looking at rt#4681 That should be restrictive enough to avoid disturbing anything else than
Thanks for investigating, Tony. Best regards |
From @iabynOn Wed, Aug 12, 2015 at 03:13:38PM +0200, Jens Rehsack wrote:
I've just applied the following to blead. Hopefully its a suitable commit 850e14d Cwd.xs: avoid blib better while building Affected files ... Differences ... Inline Patchdiff --git a/dist/PathTools/Makefile.PL b/dist/PathTools/Makefile.PL
index 6cd70fa..71b9a60 100644
--- a/dist/PathTools/Makefile.PL
+++ b/dist/PathTools/Makefile.PL
@@ -1,5 +1,11 @@
-BEGIN { @INC = grep {!/blib/} @INC }
+# See https://rt.cpan.org/Public/Bug/Display.html?id=4681
+# and https://rt.perl.org/Ticket/Display.html?id=125603
+# When installing a newer Cwd on a system with an existing Cwd,
+# under some circumstances the old Cwd.pm and the new Cwd.xs could
+# get mixed up and SEGVs ensue.
+
+BEGIN { @INC = grep { $_ ne "blib/arch" and $_ ne "blib/lib" } @INC }
-- "Foul and greedy Dwarf - you have eaten the last candle." |
@iabyn - Status changed from 'open' to 'resolved' |
Migrated from rt.perl.org#125603 (status was 'resolved')
Searchable as RT125603$
The text was updated successfully, but these errors were encountered: