richterger / Perl-LanguageServer

Language Server for Perl
Other
225 stars 52 forks source link

Can't locate Perl/LanguageServer.pm in @INC #182

Open zhaozhaofox opened 1 year ago

zhaozhaofox commented 1 year ago

How to address this problem:

Can't locate Perl/LanguageServer.pm in @INC (you may need to install the Perl::LanguageServer module) (@INC contains: D:/Strawberry/perl/site/lib D:/Strawberry/perl/vendor/lib D:/Strawberry/perl/lib).
BEGIN failed--compilation aborted.
[Info  - 20:27:52] Connection to server got closed. Server will restart.
zhaozhaofox commented 1 year ago

I try to install Perl::LanguageSever, but it failed:

cpan install Perl::LanguageServer

Loading internal logger. Log::Log4perl recommended for better logging

CPAN: CPAN::SQLite loaded ok (v0.219)

Database was generated on Thu, 22 Jun 2023 15:46:02 GMT

Running install for module 'Perl::LanguageServer'

CPAN: Digest::SHA loaded ok (v6.02)

CPAN: Compress::Zlib loaded ok (v2.1)

Checksum for D:\Strawberry\cpan\sources\authors\id\G\GR\GRICHTER\Perl-LanguageServer-2.5.0.tar.gz ok

CPAN: Archive::Tar loaded ok (v2.38)

CPAN: YAML::XS loaded ok (v0.82)

CPAN: CPAN::Meta::Requirements loaded ok (v2.140)

CPAN: Parse::CPAN::Meta loaded ok (v2.150010)

CPAN: CPAN::Meta loaded ok (v2.150010)

CPAN: Module::CoreList loaded ok (v5.20210123)

Configuring G/GR/GRICHTER/Perl-LanguageServer-2.5.0.tar.gz with Makefile.PL

Checking if your kit is complete...

Looks good

Warning: prerequisite AnyEvent 0 not found.

Warning: prerequisite AnyEvent::AIO 0 not found.

Warning: prerequisite Class::Refresh 0 not found.

Warning: prerequisite Compiler::Lexer 0.23 not found.

Warning: prerequisite Coro 0 not found.

Warning: prerequisite Hash::SafeKeys 0 not found.

Warning: prerequisite IO::AIO 0 not found.

WARNING: Older versions of ExtUtils::MakeMaker may errantly install README.pod as part of this distribution. It is recommended to avoid using this path in CPAN modules.

Generating a gmake-style Makefile

Writing Makefile for Perl::LanguageServer

Writing MYMETA.yml and MYMETA.json

GRICHTER/Perl-LanguageServer-2.5.0.tar.gz

D:\Strawberry\perl\bin\perl.exe Makefile.PL -- OK

Running make for G/GR/GRICHTER/Perl-LanguageServer-2.5.0.tar.gz

---- Unsatisfied dependencies detected during ----

---- GRICHTER/Perl-LanguageServer-2.5.0.tar.gz ----

AnyEvent [requires]

AnyEvent::AIO [requires]

Class::Refresh [requires]

Compiler::Lexer [requires]

Coro [requires]

Hash::SafeKeys [requires]

IO::AIO [requires]

Running install for module 'AnyEvent'

Checksum for D:\Strawberry\cpan\sources\authors\id\M\ML\MLEHMANN\AnyEvent-7.17.tar.gz ok

Configuring M/ML/MLEHMANN/AnyEvent-7.17.tar.gz with Makefile.PL


*** Canary::Stability COMPATIBILITY AND SUPPORT CHECK

*** =================================================


*** Hi!


*** I do my best to provide predictable and reliable software.


*** However, in recent releases, P5P (who maintain perl) have been

*** introducing regressions that are sometimes subtle and at other times

*** catastrophic, often for personal preferences with little or no concern

*** for existing code, most notably CPAN.


*** For this reason, it has become very hard for me to maintain the level

*** of reliability and support I have committed myself to in the past, at

*** least with some perl versions: I simply can't keep up working around new

*** bugs or gratituous incompatibilities, and in turn you might suffer from

*** unanticipated problems.


*** Therefore I have introduced a support and compatibility check, the results

*** of which follow below, together with a FAQ and some recommendations.


*** This check is just to let you know that there might be a risk, so you can

*** make judgement calls on how to proceed - it will not keep the module from

*** installing or working.


*** The stability canary says: (nothing, it was driven away by harsh weather)


*** It seems you are running perl version 5.032001, likely the "official" or

*** "standard" version. While there is nothing wrong with doing that,

*** standard perl versions 5.022 and up are not supported by AnyEvent.

*** While this might be fatal, it might also be all right - if you run into

*** problems, you might want to downgrade your perl or switch to the

*** stability branch.


*** If everything works fine, you can ignore this message.



*** Stability canary mini-FAQ:


*** Do I need to do anything?

*** With luck, no. While some distributions are known to fail

*** already, most should probably work. This message is here

*** to alert you that your perl is not supported by AnyEvent,

*** and if things go wrong, you either need to downgrade, or

*** sidegrade to the stability variant of your perl version,

*** or simply live with the consequences.


*** What is this canary thing?

*** It's purpose is to check support status of AnyEvent with

*** respect to your perl version.


*** What is this "stability branch"?

*** It's a branch or fork of the official perl, by schmorp, to

*** improve stability and compatibility with existing modules.


*** How can I skip this prompt on automated installs?

*** Set PERL_CANARY_STABILITY_NOPROMPT=1 in your environment.

*** More info is in the Canary::Stability manpage.


*** Long version of this FAQ: http://stableperl.schmorp.de/faq.html

*** Stability Branch homepage: http://stableperl.schmorp.de/


Continue anyways? [y] y


*** The EV module is recommended for even better performance, unless you

*** have to use one of the other adaptors (Event, Glib, Tk, etc.).

*** The Async::Interrupt module is highly recommended to efficiently avoid

*** race conditions in/with other event loops.


*** This module does not have ANY dependencies, even if it might look

*** otherwise. If you are building a distribution package or have

*** difficulties installing this package due to dependencies, report this

*** to the packager as a bug.


*** This module is guaranteed to stay 100% pure-perl, full-featured

*** and performant, even without any of the optional modules.


Checking if your kit is complete...

Looks good

Generating a gmake-style Makefile

Writing Makefile for AnyEvent

Writing MYMETA.yml and MYMETA.json

MLEHMANN/AnyEvent-7.17.tar.gz

D:\Strawberry\perl\bin\perl.exe Makefile.PL -- OK

Running make for M/ML/MLEHMANN/AnyEvent-7.17.tar.gz

---- Unsatisfied dependencies detected during ----

---- MLEHMANN/AnyEvent-7.17.tar.gz ----

Async::Interrupt [requires,optional]

EV [requires,optional]

Guard [requires,optional]

cp lib/AnyEvent/Impl/Irssi.pm blib\lib/AnyEvent/Impl/Irssi.pm

cp lib/AnyEvent/Impl/POE.pm blib\lib/AnyEvent/Impl/POE.pm

cp lib/AnyEvent/Impl/EV.pm blib\lib/AnyEvent/Impl/EV.pm

cp lib/AnyEvent/Impl/EventLib.pm blib\lib/AnyEvent/Impl/EventLib.pm

cp lib/AnyEvent.pm blib\lib/AnyEvent.pm

cp lib/AnyEvent/Impl/Cocoa.pm blib\lib/AnyEvent/Impl/Cocoa.pm

cp lib/AnyEvent/Impl/Perl.pm blib\lib/AnyEvent/Impl/Perl.pm

cp lib/AE.pm blib\lib/AE.pm

cp lib/AnyEvent/Impl/Event.pm blib\lib/AnyEvent/Impl/Event.pm

cp lib/AnyEvent/Impl/Tk.pm blib\lib/AnyEvent/Impl/Tk.pm

cp lib/AnyEvent/IO/Perl.pm blib\lib/AnyEvent/IO/Perl.pm

cp lib/AnyEvent/Impl/FLTK.pm blib\lib/AnyEvent/Impl/FLTK.pm

cp lib/AnyEvent/Impl/Glib.pm blib\lib/AnyEvent/Impl/Glib.pm

cp lib/AnyEvent/IO.pm blib\lib/AnyEvent/IO.pm

cp lib/AnyEvent/Handle.pm blib\lib/AnyEvent/Handle.pm

cp lib/AnyEvent/Impl/UV.pm blib\lib/AnyEvent/Impl/UV.pm

cp lib/AnyEvent/Debug.pm blib\lib/AnyEvent/Debug.pm

cp lib/AnyEvent/FAQ.pod blib\lib/AnyEvent/FAQ.pod

cp lib/AnyEvent/DNS.pm blib\lib/AnyEvent/DNS.pm

cp lib/AnyEvent/IO/IOAIO.pm blib\lib/AnyEvent/IO/IOAIO.pm

cp lib/AnyEvent/Impl/Qt.pm blib\lib/AnyEvent/Impl/Qt.pm

cp lib/AnyEvent/Impl/IOAsync.pm blib\lib/AnyEvent/Impl/IOAsync.pm

cp lib/AnyEvent/TLS.pm blib\lib/AnyEvent/TLS.pm

cp lib/AnyEvent/constants.pl blib\arch/AnyEvent/constants.pl

cp lib/AnyEvent/Intro.pod blib\lib/AnyEvent/Intro.pod

cp lib/AnyEvent/Util/idna.pl blib\lib/AnyEvent/Util/idna.pl

cp lib/AnyEvent/Socket.pm blib\lib/AnyEvent/Socket.pm

cp lib/AnyEvent/Util.pm blib\lib/AnyEvent/Util.pm

cp lib/AnyEvent/Strict.pm blib\lib/AnyEvent/Strict.pm

cp lib/AnyEvent/Util/uts46data.pl blib\lib/AnyEvent/Util/uts46data.pl

cp lib/AnyEvent/Loop.pm blib\lib/AnyEvent/Loop.pm

cp lib/AnyEvent/Log.pm blib\lib/AnyEvent/Log.pm

"D:\Strawberry\perl\bin\perl.exe" "-Iblib\arch" "-Iblib\lib" constants.pl.PL constants.pl

MLEHMANN/AnyEvent-7.17.tar.gz

D:\Strawberry\c\bin\gmake.exe -- OK

Running make test for MLEHMANN/AnyEvent-7.17.tar.gz

"D:\Strawberry\perl\bin\perl.exe" "-Iblib\arch" "-Iblib\lib" constants.pl.PL constants.pl

"D:\Strawberry\perl\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef Test::Harness::Switches; test_harness(0, 'blib\lib', 'blib\arch')" t/.t t/handle/*.t

t/00_load.t ................ ok

t/01_basic.t ............... ok

t/02_signals.t ............. skipped: Broken perl detected, skipping tests.

t/03_child.t ............... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/04_condvar.t ............. ok

t/05_dns.t ................. ok

t/06_socket.t .............. ok

t/07_io.t .................. ok

t/08_idna.t ................ ok

t/09_multi.t ............... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/10_loadall.t ............. ok

t/11_io_perl.t ............. ok

t/12_io_ioaio.t ............ skipped: AnyEvent::IO::IOAIO not loadable

t/13_weaken.t .............. ok

t/61_fltk_01_basic.t ....... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/61_fltk_02_signals.t ..... skipped: Broken perl detected, skipping tests.

t/61_fltk_03_child.t ....... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/61_fltk_04_condvar.t ..... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/61_fltk_05_dns.t ......... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/61_fltk_07_io.t .......... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/61_fltk_09_multi.t ....... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/62_cocoa_01_basic.t ...... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/62_cocoa_02_signals.t .... skipped: Broken perl detected, skipping tests.

t/62_cocoa_03_child.t ...... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/62_cocoa_04_condvar.t .... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/62_cocoa_05_dns.t ........ skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/62_cocoa_07_io.t ......... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/62_cocoa_09_multi.t ...... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/64_glib_01_basic.t ....... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/64_glib_02_signals.t ..... skipped: Broken perl detected, skipping tests.

t/64_glib_03_child.t ....... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/64_glib_04_condvar.t ..... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/64_glib_05_dns.t ......... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/64_glib_07_io.t .......... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/64_glib_09_multi.t ....... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/65_event_01_basic.t ...... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/65_event_02_signals.t .... skipped: Broken perl detected, skipping tests.

t/65_event_03_child.t ...... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/65_event_04_condvar.t .... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/65_event_05_dns.t ........ skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/65_event_07_io.t ......... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/65_event_09_multi.t ...... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/66_ioasync_01_basic.t .... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/66_ioasync_02_signals.t .. skipped: Broken perl detected, skipping tests.

t/66_ioasync_03_child.t .... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/66_ioasync_04_condvar.t .. skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/66_ioasync_05_dns.t ...... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/66_ioasync_07_io.t ....... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/66_ioasync_09_multi.t .... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/67_tk_01_basic.t ......... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/67_tk_02_signals.t ....... skipped: Broken perl detected, skipping tests.

t/67_tk_03_child.t ......... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/67_tk_04_condvar.t ....... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/67_tk_05_dns.t ........... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/67_tk_07_io.t ............ skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/67_tk_09_multi.t ......... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/68_poe_01_basic.t ........ skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/68_poe_02_signals.t ...... skipped: Broken perl detected, skipping tests.

t/68_poe_03_child.t ........ skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/68_poe_04_condvar.t ...... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/68_poe_05_dns.t .......... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/68_poe_07_io.t ........... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/68_poe_09_multi.t ........ skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/69_ev_01_basic.t ......... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/69_ev_02_signals.t ....... skipped: Broken perl detected, skipping tests.

t/69_ev_03_child.t ......... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/69_ev_04_condvar.t ....... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/69_ev_05_dns.t ........... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/69_ev_07_io.t ............ skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/69_ev_09_multi.t ......... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/70_uv_01_basic.t ......... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/70_uv_02_signals.t ....... skipped: Broken perl detected, skipping tests.

t/70_uv_03_child.t ......... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/70_uv_04_condvar.t ....... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/70_uv_05_dns.t ........... skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/70_uv_07_io.t ............ skipped: PERL_ANYEVENT_LOOP_TESTS not true

t/70_uv_09_multi.t ......... skipped: Your perl interpreter is badly BROKEN. Child watchers will not work, ever. Try upgrading to a newer perl or a working perl (cygwin's perl is known to work). If that is not an option, you should be able to use the remaining functionality of AnyEvent, but child watchers WILL NOT WORK.

t/80_ssltest.t ............. 1/415

Failed test 'server_error <你的主机中的软件中止了一个已建立的连接。>'

at t/80_ssltest.t line 37.

Looks like you failed 1 test of 415.

t/80_ssltest.t ............. Dubious, test returned 1 (wstat 256, 0x100)

Failed 1/415 subtests

t/81_hosts.t ............... ok

t/handle/01_readline.t ..... ok

t/handle/02_write.t ........ ok

t/handle/03_http_req.t ..... skipped: PERL_ANYEVENT_NET_TESTS environment variable not set

t/handle/04_listen.t ....... ok

Test Summary Report


t/80_ssltest.t (Wstat: 256 Tests: 415 Failed: 1)

Failed test: 6

Non-zero exit status: 1

Files=83, Tests=602, 4 wallclock secs ( 0.01 usr + 0.05 sys = 0.06 CPU)

Result: FAIL

Failed 1/83 test programs. 1/602 subtests failed.

gmake: *** [Makefile:897: test_dynamic] Error 255

MLEHMANN/AnyEvent-7.17.tar.gz

D:\Strawberry\c\bin\gmake.exe test -- NOT OK

//hint// to see the cpan-testers results for installing this module, try:

reports MLEHMANN/AnyEvent-7.17.tar.gz

Stopping: 'install' failed for 'AnyEvent'.

发件人: @. @.> 代表 Philosoph228 发送时间: 2023年6月19日 3:56 收件人: richterger/Perl-LanguageServer @.> 抄送: sandpioneer @.>; Author @.***> 主题: Re: [richterger/Perl-LanguageServer] Can't locate Perl/LanguageServer.pm in @INC (Issue #182)

Did you follow the installation instructions and install the required packages from your distribution's repository and the Perl::LanguageServer package from cpan?

— Reply to this email directly, view it on GitHub https://github.com/richterger/Perl-LanguageServer/issues/182#issuecomment-1596264976 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ALWX7MNY5MEULO324HQO37DXL5TO5ANCNFSM6AAAAAAYVQA3CU . You are receiving this because you authored the thread. https://github.com/notifications/beacon/ALWX7MOTUDHX2NRITJL4C2DXL5TO5A5CNFSM6AAAAAAYVQA3CWWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTS7EUJBA.gif Message ID: @. @.> >

tristan957 commented 1 year ago

I am seeing the same issue. I would have thought the VSCode extension would bundle what it needed.

richterger commented 1 year ago

The extention cannot bundle this because it highly depends on the Perl installation what is needed. There is no one size fits all.

See README.md for installation instructions on different systems. Since you not even mentioned on what OS you want to install, I can't tell you anything more.

mgerhardy commented 1 year ago

Bildschirmfoto vom 2023-08-16 11-51-18

Not sure if this would be useful - but in case the language server module is not found, the extension doesn't try to restart it after X attempts. clangd language server integration has this option to let the user restart the server without reloading vscode.

richterger commented 1 year ago

fee free to provide a pull request with this enhancement.