I have never used Perl, but I am really impressed by the ack, which I would like to use for source code searching, etc.
Can anyone guide me of how to make use of this excellent library on Windows?
I have never used Perl, but I am really impressed by the ack, which I would like to use for source code searching, etc.
Can anyone guide me of how to make use of this excellent library on Windows?
Start by installing perl http://strawberryperl.com/
Install App::Ack by typing (in a windows command shell)
C:\>cpan App::Ack
And undoubtedly this will prove useful http://learn.perl.org/
cpanm(1)
is a lot easier to use than cpan(1)
, and it's also available in Strawberry Perl. –
Apoplexy Not all the tests pass on all versions of Windows. You can most likely get 100% functionality from ack even if the install tests fail. Here is the command to force installation if failing tests prevent a normal install:
perl -MCPAN -e "CPAN::Shell->force(qw(install App::Ack));"
cpanm -f App::Ack
. Add -n
to skip tests since they currently don't really pass anyway... Won't affect anything other than skipping them, saving you time, but also leaving you not knowing if they would have passed... –
Apoplexy If you already have msysgit installed, then you don't need to install Perl, because you already have a version. You just need to download the standalone version of ack and put it somewhere in your bash path1. You can then run ack from your msysgit bash prompt.
If you also want to be able to run ack from the Windows command prompt, then you will need to create a batch script somewhere in your Windows path2 with the contents:
@"C:\Program Files\Git\bin\perl" C:\path\to\ack-standalone.pl %*
(You'll obviously need to edit the paths above to match your msysgit installation and where you placed the ack script.)
1: I just stuck mine in the mysysgit bin directory: C:\Program Files\Git\bin\ack
. This isn't the most sensible location for it, but it works.
2: Again, I just created the file ack.bat
in the msysgit bin directory C:\Program File\Git\bin
.
ack-standalone.pl
in C:\Program Files\Git\bin
, using the filename ack
(without extension). After this, running ack
from Git Bash worked. No batch files or modification to the path were required. –
Merwyn If you have cygwin installed, you can simply download the standalone version. Perl is installed with cygwin. Here are the steps:
$ vim .bash_profile
Remove the comments from the lines:
# if [ -d "${HOME}/bin" ] ; then
# PATH="${HOME}/bin:${PATH}"
# fi
Load the changes:
$ source .bash_profile
Make a bin directory:
$ mkdir ~/bin
Download ack (from the homepage):
$ curl https://beyondgrep.com/ack-2.22-single-file > ~/bin/ack && chmod 0755 ~/bin/ack
Note: you will have to manually install curl as it doesn't come with cygwin by default.
.bash_profile
are the lines that check ~/bin
exists before adding it to the path. Since you create a bin directory, the checks can remain and it will work (and should remain, in case the bin directory is ever removed). –
Crumpler PATH
and .bashrc
–
Horning You should also run the following command to enable color highlights: cpan Win32::Console::ANSI
Nothing worked for me, until I went to the ack website and saw this.
And I ran the following command in cmd prompt:
choco install ack
bash: ack: command not found
when trying to run it in git bash / MINGW64. I don't know what any of these words mean and I miss linux –
Handmade I had to force cpan to install App::Ack
since some of the tests didn't pass:
C:\> cpan
cpan> force install App::Ack
cpan> q
Depending on how you feel about installing pre-built binaries from open source projects, you might also consider The Silver Searcher (ag). It's ack-compatible and faster than ack. It's also available on Linux from the repositories in recent distros.
http://blog.kowalczyk.info/software/the-silver-searcher-for-windows.html
You can install ack via cpan:
install strawberry perl
run cmd as admin
install ack:
cpan> force install App::Ack
it should work from there, followed this guide: http://www.jeedo.net/how-to-install-ack-on-windows-10/
Worked without any hitches.
© 2022 - 2024 — McMap. All rights reserved.