Ho,
I’m in a trial period for the Komodo IDE and seem to have hit a potential roadblock re compilation. I’m testing some modifications to plugins for the LMS/Slimserver program (which uses the Log4Perl package). However I keep getting complie errors that the base class package: ‘Log::Log4perl::Logger’ is empty - which I don’t quite understand. I’m getting this error in the Slim::Utils::Log.pm file - which is part of the standard LMS package.
Can anyone here shed some light here and possibly suggest a workaround? The LMS server runs correctly, but gives erroneous errors when editing the file.
I checked the path for Perl in Komodo and nothing was set there (except the Perl Interpteter – which defaults to '‘Find in Path’. Since it is complaining about Slim components I get the following error:
Base class package “Log::Log4perl::Logger” is empty.
(Perhaps you need to ‘use’ the module which defines that package first,
or make that module available in @INC (@INC contains: /usr/share/perl5/Slim/Utils/Prefs . /etc/perl /usr/local/lib/perl/5.18.2 /usr/local/share/perl/5.18.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.18 /usr/share/perl/5.18 /usr/local/lib/site_perl .).
.
Fri Aug 08 2014 10:47:34 GMT-0700 (PDT)
I added a path to the library search path for '/usr/share/perl5/Slim/Utils/Pref but that does not seem to make any difference (It was already in the path perhaps). I think the reference to @INC here is meaningful, but I’m not sure how to proceed – maybe you have seen this before.
In general, though, we can’t really provide support for you setting up your system to deal with language-specific issues; we can only deal with actually using the editor (as opposed to using the language).
Well it creates log entries at run time - so afaik it’s working correctly. However I’m not sure I understand the distinction you aremaking between the editor and the language here.
IMHO support for Intellisense is a pretty basic requirement in an editor - and should be supported for any of the standard languages - including Perl. If you are saying that you can not/do not support Intellisense in Perl then you are limiting the scope of your potential customer base.
Perhaps you could clear up the confusion here - I’m a potential customer, provided I can see that there is full support for intellisense, or a reasonable explanation re the limitations of intellisense support for this feature.
Can I suggestthat you download and install the Squeezebox LMS product and verify my findings re the Log4Perl errors I’ve been getting. Maybe it helps if you can see this in your own environment.
Perl code intelligence needs figure out what’s going on with the code you’re looking at
That code needs Log4perl
Therefore, it needs to be able to find Log4perl to do code intelligence
It works fine on Squeezebox because they’ve got it installed (possibly system-wide)
Komodo can’t tell where that is
Installing Log4perl (system wide or not) on the machine you’re running Komodo on would allow Komodo to find it and use that to help provide code intelligence
Sorry, I had misread your original post as being failures trying to run the perl code locally, rather than trying to convince Komodo to do code intelligence for you.
Inothstalling Log4perl (system wide or not) on the machine you’re running Komodo on would allow Komodo to find it and use that to help provide code intelligence
OK - I think we are getting to the heart of the issue now. Based on your comments I should not be having any issue. However the IDE is NOT finding the Log4perl package - even though it is installed.
I have installed both the Squoxeezebox/Slimserver and Komodo on my laptop. At run time I see errors in the logfile which are created by the Log4perl package. However and this is my point - the Komodo IDE will not compile the code that makes the log requests and complains that a base package is empty - see my previous posting.
What I’m looking for here is for someone at Komodo to confirm they get a similar error and/or explain how to configure Komodo to correctly find the Log4Perl package and successfully compile.