I have perl script for TSM reporting which was working fine in AIX version 5. After upgrading AIX to version 6, the script is not working. I'm getting this error:

byteloader version mismatch expected 0.5 , got 0.6 .

I guess after upgrading OS perl also got upgraded from perl 5.8.2 (working) to 5.8.8 (not working).

What do I have to do to make this script work on AIX 6?


Your perl script apparently uses bytecode. Bytecode is kind of like compiled code. It is pre-parsed code which loads more efficiently than normal script code (really bad explanation, wikipedia probably does a better job).
However in perl, running the bytecode is restricted to the version of the module it was built with. So what this means is that you used ByteLoader 0.5 to build the bytecode, but the box you're running it on has version 0.6.

The solution is either to rebuild the script with the newer version of the ByteLoader module (it's documentation contains instructions for doing this), or to run the normal non-bytecode script. However both require that you still have the normal non-bytecode version around.

  • Is it possible to remove bytecode 0.6 module and install bytecode 0.5 in perl , if yes can you let me know steps .
    – Amit Singh
    Jul 10 '12 at 13:56
  • i got it worked recompiled the source with bytecode 0.6 .
    – Amit Singh
    Jul 12 '12 at 21:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.