ucdavis-bioinformatics / assemblathon2-analysis

collection of scripts and commands used by Ian Korf, Keith Bradnam, and Joe Fass in the analysis of Assemblathon 2 entries (assemblies)
21 stars 21 forks source link

getting syntax error #4

Open Ravindra-Raut opened 6 years ago

Ravindra-Raut commented 6 years ago

getting following error while running it. syntax error at assemblathonstats.pl line 301, near "$size qw(1000 10000 100000 1000000 10000000)" Can't use global $ in "my" at assemblathonstats.pl line 302, near "{ $ " Global symbol "$size" requires explicit package name (did you forget to declare "my $size"?) at assemblathon_stats.pl line 302. Global symbol "$type" requires explicit package name (did you forget to declare "my $type"?) at assemblathon_stats.pl line 302. Global symbol "$matches" requires explicit package name (did you forget to declare "my $matches"?) at assemblathon_stats.pl line 303. Global symbol "$count" requires explicit package name (did you forget to declare "my $count"?) at assemblathon_stats.pl line 303. Global symbol "$desc" requires explicit package name (did you forget to declare "my $desc"?) at assemblathon_stats.pl line 305. Global symbol "$type" requires explicit package name (did you forget to declare "my $type"?) at assemblathon_stats.pl line 305. Global symbol "%sizes_to_shorthand" requires explicit package name (did you forget to declare "my %sizes_to_shorthand"?) at assemblathon_stats.pl line 305. Global symbol "$size" requires explicit package name (did you forget to declare "my $size"?) at assemblathon_stats.pl line 305. Execution of assemblathon_stats.pl aborted due to compilation errors.

ThymeLy commented 5 years ago

Hi, I have the same problem as well. Have you managed to solve it?

edmorenoed commented 4 years ago

This solved it for me! Visual Studio was highlighting the three quote word operators, qw, of the script bright red. This was a hint. It seems that the whole qw() expression needs to be inside parenthesis like this: (qw()), as explained here: http://blogs.perl.org/users/rurban/2010/09/qw-in-list-context-deprecated.html.

I changed the three instances of qw in the scripts and it works fine now.

Remember to place FAlite.pm in the same directory as assemblathon_stats.py. Good luck.

FYI, my perl is:

This is perl 5, version 26, subversion 2 (v5.26.2) built for darwin-thread-multi-2level

ThymeLy commented 4 years ago

Thank you for the solution!