Skip to content
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

get Error 22 when installing local Perl module #1432

Closed
JINPENG-WANG opened this issue Nov 29, 2016 · 10 comments
Closed

get Error 22 when installing local Perl module #1432

JINPENG-WANG opened this issue Nov 29, 2016 · 10 comments

Comments

@JINPENG-WANG
Copy link

JINPENG-WANG commented Nov 29, 2016

  • A brief description

    The Perl module (e.g. Finnigan::Scan) was downloaded and saved in the Desktop. I tried to install it from local directory with

    perl Makefile.PL
    make
    ...

but got an error:
Can't write-open blib/man3/Finigan::AuditTag.3pm: Invalid argument at /usr/share/perl/5.22/ExtUtils/Command/MM.pm line147.
Makefile:643: recipe for target 'manifypods' failed
make: *** [manifypods] Error 22

I have also tried other modules but got the similar error:
Can't write-open blib/man3/SelSweepRegion::FindGene.3pm: Invalid argument at /usr/share/perl/5.22/ExtUtils/Command/MM.pm line147.
Makefile:418:: recipe for target 'manifypods' failed
make: *** [manifypods] Error 22

  • Your Windows build number

    Windows 10 Home Insider Previewer China
    Build 14971.rs_prerelease.161111-1700

  • Steps / All commands required to reproduce the error from a brand new installation

    tar -xvf Finnigan-0.0206d.tar.gz
    cd Finnigan-0.0206
    perl Makefile.PL
    make

See our contributing instructions for assistance.

@stehufntdev
Copy link
Collaborator

Thanks for reporting the issue. Can you please provide an strace of the failing command?

@JINPENG-WANG
Copy link
Author

The strace is attached below.
strace.out.txt

@stehufntdev
Copy link
Collaborator

Thanks for sending out the strace! It looks like the einval error (22) is coming from the child process but the trace was only collected on the parent process:

wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 22}], 0, NULL) = 176

Can you please rerun the strace with the -f option so the child process is traced as well?

@JINPENG-WANG
Copy link
Author

You are welcome. The strace result is listed below.

strace.txt

Thank you for your reply.

@stehufntdev
Copy link
Collaborator

Thanks again! Looks like the failure is coming from an open call, but it's not obvious why it is failing since the file was reported as not existing a few lines above:

44 stat("blib/man3/SelSweepRegion::FindGene.3pm", 0x1a5a298) = -1 ENOENT (No such file or directory)
...
44 open("blib/man3/SelSweepRegion::FindGene.3pm", O_WRONLY|O_CREAT|O_TRUNC, 0666) = -1 EINVAL (Invalid argument) 44 write(2, "Can't write-open blib/man3/SelSw"..., 131) = 131

I filed a task on our side so we can debug further to see what is going on.

@stehufntdev stehufntdev added the bug label Dec 1, 2016
@JINPENG-WANG
Copy link
Author

Thanks for your work.

@thorsteneb
Copy link

Are you installing from somewhere in the /mnt path or from ~ ? I had a similar issue and resolved it by installing from within the Ubuntu file system, not the mounted Windows file system.

Also check out #186 . If that's not taken care of, perl module installations will fail. The "file not existing" line would hint towards the fact this might be related to the same issue in 186.

@JINPENG-WANG
Copy link
Author

@yorickdowne You are right. The module was successfully installed from the directory under ~ other than that under /mnt. Thanks very much.

@stehufntdev
Copy link
Collaborator

@JINPENG-WANG it sounds like the issue is resolved, but wanted to double check with you before closing out the thread.

@JINPENG-WANG
Copy link
Author

@stehufntdev Yes, the issue is resolved. Thanks for all of you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants