Error with

Hello users,

I have recently upgraded to a newer version of EMC and gives me an error.

Command I used is

“perl ~/softwares/EMC/v9.4.4/scripts/ polymer.esh”

Error message I got

" Info: reading script from “./polymer.esh”

Undefined subroutine &EMC::IO::open called at /Users/karteek/softwares/EMC/v9.4.4/scripts/ line 2886."

However, the same syntax worked for EMC 2020 version, but I haven’t used it since then.
Could you please help me to fix this?


Hi Pieter,

I am confident that there is some difference between the old and new versions that is causing the problem, especially with file.

  1. I have made the older version run now by modifying the system time to 3 months old and it perfectly runs using the following commands.

“perl. ~/path/…/scripts/ polymer.esh”
“/path/…/bin/emc_macos build.emc”

  1. If I use new version, it gives me an error
    Undefined subroutine &EMC::IO::open called at /Users/Karteek/softwares/EMC_2022/v9.4.4/scripts/ line 2886.

  2. If I still use build.emc generated with old version, it works perfectly fine.

I appreciate if you could look into this.


I have been modularizing EMC Setup and something during auto-recognition of the modules directory went awry. A way to make the new version work, is to add

export EMC_ROOT=~/emc/v9.4.4

to your ~/.bashrc. You can replace ~/emc by the directory you unpacked it in, if this is not ~/emc. Future versions of EMC Setup will have remedied this issue.