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
hints/solaris_2.sh guesses wrong ld (patch included) #962
Comments
From ralston@pobox.comThe hints/solaris_2.sh file that comes with perl5.005_03 attempts to /full/path/to/ld [arguments] The exact test is: myld=`echo $verbose| grep ld | awk '/\/ld/ {print $1}'` These assumptions are now incorrect. As of at least gcc version ld: Software Generation Utilities - Solaris/ELF (3.0) In the above command pipeline, the "awk" command returns nothing, so if $myld -V 2>&1 | grep "ld: Software Generation Utilities" >/dev/null 2>&1; then Aha. You're using egcs and /usr/ccs/bin/ld. END else NOTE: You are using GNU ld(1). GNU ld(1) will not build Perl. END The end result is that when Configure is run, it erroneously detects The follow patch modifies the ld test as follows: if /full/path/to/ld Regards, -- Inline Patchdiff -U 2 -r -N ORIG/perl5.005_03/hints/solaris_2.sh perl5.005_03/hints/solaris_2.sh
--- ORIG/perl5.005_03/hints/solaris_2.sh Sun Jan 24 09:47:49 1999
+++ perl5.005_03/hints/solaris_2.sh Thu Dec 16 18:22:42 1999
@@ -182,11 +182,23 @@
# make it show its true colors.
+ # See if we can find a /full/path/to/ld as the first word
+ # of one of the output lines.
myld=`echo $verbose| grep ld | awk '/\/ld/ {print $1}'`
- # This assumes that gcc's output will not change, and that
- # /full/path/to/ld will be the first word of the output.
- # all Solaris versions of ld I've seen contain the magic
- # string used in the grep below.
- if $myld -V 2>&1 | grep "ld: Software Generation Utilities" >/dev/null 2>&1; then
+ # If $myld is now an empty string, we're using a version
+ # of gcc that doesn't output the full path to ld, so see
+ # if we can find the "ld: Software Generation Utilities"
+ # magic string in the output. If we were able to find a
+ # /full/path/to/ld, run it and see what it produces; all
+ # Solaris versions of ld I've seen emit the "ld: Software
+ # Generation Utilities" string in their verbose output.
+ if [ ! "$myld" ] && echo $verbose | grep "ld: Software Generation Utilities" >/dev/null 2>&1; then
+ cat <<END >&2
+
+Aha. You're using egcs and /usr/ccs/bin/ld.
+
+END
+
+ elif $myld -V 2>&1 | grep "ld: Software Generation Utilities" >/dev/null 2>&1; then
cat <<END >&2
-----------------------------------------------------------------
---
Configured by root at Thu Dec 16 14:21:35 EST 1999. Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration: Locally applied patches: @INC for perl 5.00503: Environment for perl 5.00503: |
From @gsarOn Thu, 16 Dec 1999 18:41:06 EST, James Ralston wrote:
This should be fixed in the development versions. Please try Sarathy |
Migrated from rt.perl.org#1909 (status was 'resolved')
Searchable as RT1909$
The text was updated successfully, but these errors were encountered: