On 17 July 2014 14:22, <sisyph...@optusnet.com.au> wrote:

>
> From: demerphq
> Sent: Thursday, July 17, 2014 7:25 PM
> To: Sisyphus
> Cc: inline@perl.org
>
>
>  When I moved the scripts out of a perl build tree it started behaving
>> properly. IMO that issue can be left at "so dont do that". :-)
>>
>
> AFAICT, the only difference between building in /git_tree/perl/Porting and
> /somewhere/else is that instead of doing:
>
> cc -c  -I"/git_tree/perl/Porting" -D_REENTRANT [...] FOO_1ef8.c
> the build will do:
> cc -c  -I"/somewhere/else" -D_REENTRANT [...] FOO_1ef8.c
>
> All other commands that get run would be the same. (You could check this
> by comparing the BUILD_NOISY outputs for both situations.)
>
> So I'm wondering whether, in the running of the above command, something
> was found in "/git_tree/perl/Porting" that really ought not have been found
> and loaded.
>

Below is output from it failing and it suceeding (this is perlbrew 5.14.4):

~/git_tree/perl/Porting$ perl test_inline.pl
validate Stage
<-----------------------Information
Section----------------------------------->

Information about the processing of your Inline C code:

Your source code needs to be compiled. I'll use this build directory:
/git_tree/perl/Porting/_Inline/build/test_inline_pl_21ea2

and I'll install the executable as:
/git_tree/perl/Porting/_Inline/lib/auto/test_inline_pl_21ea2/test_inline_pl_21ea2.so

get_maps Stage
The following Inline C function(s) have been successfully bound to Perl:
void greet(char * name)

<-----------------------End of Information
Section---------------------------->
Starting Build Preprocess Stage
Finished Build Preprocess Stage

Starting Build Parse Stage
Finished Build Parse Stage

Starting Build Glue 1 Stage
Finished Build Glue 1 Stage

Starting Build Glue 2 Stage
Finished Build Glue 2 Stage

Starting Build Glue 3 Stage
Finished Build Glue 3 Stage

Starting Build Compile Stage
  Starting "perl Makefile.PL" Stage
Writing Makefile for test_inline_pl_21ea2
Writing MYMETA.yml
  Finished "perl Makefile.PL" Stage

  Starting "make" Stage
/home/yorton/perl5/perlbrew/perls/perl-5.14.4/bin/perl
/home/yorton/perl5/perlbrew/perls/perl-5.14.4/lib/5.14.4/ExtUtils/xsubpp
 -typemap
"/home/yorton/perl5/perlbrew/perls/perl-5.14.4/lib/5.14.4/ExtUtils/typemap"
  test_inline_pl_21ea2.xs > test_inline_pl_21ea2.xsc && mv
test_inline_pl_21ea2.xsc test_inline_pl_21ea2.c
make: *** No rule to make target `../../../../fakethr.h', needed by
`test_inline_pl_21ea2.o'. Stop.

A problem was encountered while attempting to compile and install your
Inline
C code. The command that failed was:
  "make" with error code 2

The build directory was:
/git_tree/perl/Porting/_Inline/build/test_inline_pl_21ea2

To debug the problem, cd to the build directory, and inspect the output
files.

 at test_inline.pl line 0.
...propagated at
/home/yorton/perl5/perlbrew/perls/perl-5.14.4/lib/site_perl/5.14.4/Inline/C.pm
line 834.
INIT failed--call queue aborted.

#########################################################################################

If I build outside of my perl git checkout:

#########################################################################################

~/git_tree/hashy$ perl test_inline.pl
validate Stage
<-----------------------Information
Section----------------------------------->

Information about the processing of your Inline C code:

Your source code needs to be compiled. I'll use this build directory:
/git_tree/hashy/_Inline/build/test_inline_pl_21ea

and I'll install the executable as:
/git_tree/hashy/_Inline/lib/auto/test_inline_pl_21ea/test_inline_pl_21ea.so

get_maps Stage
The following Inline C function(s) have been successfully bound to Perl:
void greet(char * name)

<-----------------------End of Information
Section---------------------------->
Starting Build Preprocess Stage
Finished Build Preprocess Stage

Starting Build Parse Stage
Finished Build Parse Stage

Starting Build Glue 1 Stage
Finished Build Glue 1 Stage

Starting Build Glue 2 Stage
Finished Build Glue 2 Stage

Starting Build Glue 3 Stage
Finished Build Glue 3 Stage

Starting Build Compile Stage
  Starting "perl Makefile.PL" Stage
Writing Makefile for test_inline_pl_21ea
Writing MYMETA.yml
  Finished "perl Makefile.PL" Stage

  Starting "make" Stage
/home/yorton/perl5/perlbrew/perls/perl-5.14.4/bin/perl
/home/yorton/perl5/perlbrew/perls/perl-5.14.4/lib/5.14.4/ExtUtils/xsubpp
 -typemap
"/home/yorton/perl5/perlbrew/perls/perl-5.14.4/lib/5.14.4/ExtUtils/typemap"
  test_inline_pl_21ea.xs > test_inline_pl_21ea.xsc && mv
test_inline_pl_21ea.xsc test_inline_pl_21ea.c
cc -c  -I"/git_tree/hashy" -fno-strict-aliasing -pipe -fstack-protector
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2
-DVERSION=\"0.00\" -DXS_VERSION=\"0.00\" -fPIC
"-I/home/yorton/perl5/perlbrew/perls/perl-5.14.4/lib/5.14.4/x86_64-linux/CORE"
  test_inline_pl_21ea.c
Running Mkbootstrap for test_inline_pl_21ea ()
chmod 644 test_inline_pl_21ea.bs
rm -f blib/arch/auto/test_inline_pl_21ea/test_inline_pl_21ea.so
cc  -shared -O2 -L/usr/local/lib -fstack-protector test_inline_pl_21ea.o
 -o blib/arch/auto/test_inline_pl_21ea/test_inline_pl_21ea.so \
     \

chmod 755 blib/arch/auto/test_inline_pl_21ea/test_inline_pl_21ea.so
cp test_inline_pl_21ea.bs blib/arch/auto/test_inline_pl_21ea/
test_inline_pl_21ea.bs
chmod 644 blib/arch/auto/test_inline_pl_21ea/test_inline_pl_21ea.bs
  Finished "make" Stage

  Starting "make install" Stage
Files found in blib/arch: installing files in blib/lib into architecture
dependent library tree
  Finished "make install" Stage

  Starting Cleaning Up Stage
  Finished Cleaning Up Stage

Finished Build Compile Stage

Hello Ingy!
Hello 42!



-- 
perl -Mre=debug -e "/just|another|perl|hacker/"

Reply via email to