• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. Error : - Waiting for ipc: to terminate

Stats

  • Locked Locked
  • Replies 9
  • Subscribers 144
  • Views 5840
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Error : - Waiting for ipc: to terminate

saurabh96
saurabh96 over 4 years ago

Hello there,

am facing this error or some..i dont know..when am running my Gui to process..My window is getting hang badly and below messgae is prompting on ciw...with different - different ipc: no's.

Waiting for ipc:56 to terminate
Waiting for ipc:56 to terminate
Waiting for ipc:56 to terminate

Is it a machine server issue or something wrong with code..

for launching job am using below code

procedure(Runform(form)
let((cmdPid abcStdout)

cmdPid = ipcBeginProcess("./abc.sh")
ipcWait(cmdPid)
while(abcStdout=ipcReadProcess(cmdPid)
printf("%s" abcStdout ) ;
)
if(!ipcGetExitStatus(cmdPid) == 0 then
error("abc: couldnot run\n")

What happend and how to solve this problem?

Thanks to all.

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 4 years ago

    This is because you are using ipcWait and the process is blocking. I explained this in my reply to your other post here. You should use an asynchronous approach instead if you want it not to block.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • saurabh96
    saurabh96 over 4 years ago in reply to Andrew Beckett

    Thanks Andrew for you valuable feedback!!

    Andrew.. i was wondering when i started to run the process...its showing Error: as requires Tcl 8.5 or higher in CIW.

    i checked with my shell window ..in there tclsh is of version 8.6.

    Is it that skill file is running on its CIW env and taking TCL version less than 8.5?

    How can i run the script in my parent shell window and also check which version tcl version virtuoso is using...like in shell cmd there is "which tclsh"?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to saurabh96

    My guess is that the program you're launching is Tcl-based?

    SKILL doesn't care about TCL - it's just that (for various reasons) the "virtuoso" wrappers set the TCL_LIBRARY env var (I'm guessing you're running IC6.1.7 as IC6.1.8 seems to set $TCL_LIBRARY to an 8.6 version of TCL). You can either use ipcBeginProcess("unset TCL_LIBRARY; abc.sh" ...) or just use:

    unsetShellEnvVar("TCL_LIBRARY")

    in your SKILL somewhere to unset it.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • marcelpreda
    marcelpreda over 4 years ago in reply to saurabh96

    Hi there,

    What I'm doing in such situations:

    From virtuoso open the Library Manager, then from LibManager open a new shell window.
    Here you will have the an identical environment like the one where the script is running.

    It is very handy to do debug in this shell.

    E.g. in my case, I have tcl 8.4 (virtuoso 6.1.6)
    ~ :-)>echo $TCL_LIBRARY
    /opt/..../tools/dfII/etc/tcl8.4


    BR,

    Marcel

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • marcelpreda
    marcelpreda over 4 years ago in reply to saurabh96

    Hi there,

    What I'm doing in such situations:

    From virtuoso open the Library Manager, then from LibManager open a new shell window.
    Here you will have the an identical environment like the one where the script is running.

    It is very handy to do debug in this shell.

    E.g. in my case, I have tcl 8.4 (virtuoso 6.1.6)
    ~ :-)>echo $TCL_LIBRARY
    /opt/..../tools/dfII/etc/tcl8.4


    BR,

    Marcel

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • saurabh96
    saurabh96 over 4 years ago in reply to marcelpreda

    Thanks Marcel,

    I think same 8.4 is set in my tcl_lib of shell window in lib manager.

    Is there way/command to modified so that Error: as requires Tcl 8.5 or higher did not pop while running process?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to saurabh96

    There are a few things you should check - if you are seeing this error when running the command from a terminal launched from Virtuoso, you should check:

    1. What is the command you're running doing? Is it using "tclsh" or "wish" as part of the script? If so, is the path for it hardcoded in the script or is it finding tclsh/wish from the UNIX path?
    2. What does "which wish" and "which tclsh" show in the terminal window - is it from your OS, or from a Cadence hierarchy?
    3. What does "env | grep TCL_LIBRARY" and "env | grep TK_LIBRARY" show in the terminal window?

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • saurabh96
    saurabh96 over 4 years ago in reply to Andrew Beckett

    Hi Andrew,

    Below are the checkpoints ans-

    1) am running shell file...Path is hardcoded.

    2)by doing wish tclsh it is showing cadence hiearchy  /pkg/cadence-icadv-/12.20.706/i686-linux/tools/bin/64bit/tclsh

    3) TCL_LIBRARY=/pkg/cadence-icadv-/12.20.706/i686-linux/tools/dfII/etc/tcl8.4

    Moreover, still my confusion is that why process is switching to virtuoso terminal instead of parent shell terminal?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to saurabh96

    The Virtuoso wrappers adjust the UNIX path and also certain environment variables to ensure that processes launched by Virtuoso have the correct environment. This is because Virtuoso does itself use a few Tcl/Tk-based applications shipped with Virtuoso. These are probably competing with your own application.

    However, what is odd is that you said you're using IC6.1.8, and these paths are from ICADV12.2. The tclsh link in tools/bin/64bit is no longer there in IC6.1.8 or ICADVM18.1/20.1 (it happened in IC6.1.7 and ICADV12.2/ICADV12.3) - so this must be something in your environment set up before you launch Virtuoso. So check your UNIX path and environment.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information