From: gnome-perl (bugzilla.gnome.org) <bug...@bu...> - 2006-05-10 01:05:15
|
Do not reply to this via email (we are currently unable to handle email responses and they get discarded). You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=3D341090 gnome-perl | Gtk2 | Ver: unspecified muppet changed: What |Removed |Added -------------------------------------------------------------------------= --- CC| |sc...@as... ------- Comment #14 from muppet 2006-05-10 01:03 UTC ------- "require" does, indeed, happen at run time rather than at compile time, b= ut "use" is equivalent to "BEGIN { require Foo; import Foo; }". This partic= ular module exports nothing, so there is nothing to import. Also, a "use" in = a "require"'d module *does* take effect, just as it would in an "eval". The problem is that you have .../Glib, .../Glib/Install, and .../Glib/Obj= ect in your @INC. They do not belong there. You should have in your path the directory *containing* Glib.pm and the Glib directory, not the subdirecto= ries.=20 Because you have .../Glib in your path, Glib/CodeGen.pm can now be found = as simply CodeGen.pm, which is not supposed to happen. This is precisely wha= t i was suggesting in comment #2. In comment #3 you said you do not want to use environment variables. I d= on't understand this, as you're setting PATH, LD_LIBRARY_PATH, and PKG_CONFIG_= PATH in all of the examples, and perl is designed to search the library paths = listed in PERL5LIB precisely to avoid having to edit scripts in order to use nonstandard libraries. If you insist on not using environment variables,= at the very least remove the -I /.../Glib, -I /.../Glib/Install, and -I /.../Glib/Object include directives. I bet you your favorite beer that i= t will work. :-) (Perl translates the package separator "::" to directory separator "/" to= avoid the need to add every directory containing a .pm file to your @INC. By a= dding these extra directories, you're effectively breaking the library search mechanism.) --=20 Configure bugmail: http://bugzilla.gnome.org/userprefs.cgi?tab=3Demail ------- You are receiving this mail because: ------- You are the QA contact for the bug. You are the assignee for the bug. |