I am trying to simulate a circuit in which model of one of its elements is verilog-A code. But when I simulate the circuit in virtuoso -ADE (IC616 on Ubuntu 16.04-64bit), I come across these two errors:
ERROR (VACOMP-1008): Cannot compile ahdlcmi module library. Check the log file input.ahdlSimDB//c230fb6fcb3c953c385d4502e2e5acad.Model.ahdlcmi/Linux-64//..//ahdlcmi.out for details. Contact your Cadence Customer Support representative with the netlist, log files, behavioral model files, and any other information that can help identify the problem.
ERROR (SFE-91): Error when elaborating the instance Model_behavioral. Simulation should be terminated.
Any help is appreciated. P.S. the log file is also attached.
thanks
The issue is simple - you are using not recommended system.
In attached log statement is simple: problem with linking libraries by ld. Also there are two versions of gcc pointed into LD_LIBRARY_PATH.
Ensure, you are not mixing various gcc versions and your environmental variables pointing to gcc included into virtuoso installation not system defaults.
According to your answer, I have realized that two versions of gcc is located at "/opt/cadence/INCISIVE152/tools.lnx86/systemc/gcc" (4.1 and 4.8). On the other hands, one version gcc (4.8) is found at this directory : "/opt/cadence/MMSIM151/tools.lnx86/cdsgcc/gcc.
I will be very grateful if you could clarify this issue for me.
You are using Ubuntu while the only blessed distribution is RHEL in versions 5 and 6 (7 for 18 version of virtuoso).
The problem is in huge difference between these distributions in both software version and structure as well.
What you can see is a problem during linking shared libraries in the compilation process. There might be a few reasons: incompatibility between compiler version and source code, incompatibility between gcc and ld, incompatibility between linked system library and expected one and so on.
I don't know which software versions are used in your version of Ubuntu nor what is your environment setup. Without this knowledge I can only foretelling.
Look on your environment setup, all paths, etc. and check whether they are complete not crossing etc.
The most possible, the proper place to get help might be some Linux forum, Ubuntu should be the best but I am pretty sure Debian forum will be better.
I have a virtual Debian system which I use to develop. Today I wanted to try llvm/clang. After installing clang I can't compile my old c-projects (with gcc). This is the error: /usr/bin/ld: cannot ...
stackoverflow.com
//update2
Seems like old issue with libc6 and binutils version
Check following threads
Thanks, dear Dominik.
According to your exhaustive explanation, by investigating gcc version and linked system library, I realized that the link between gcc in MMSIM directory and system library has been broken. After creating it, simulation can proceed very well. I really appreciate your worthwhile help.
Regarding linux distribution, in your opinion, is it better to migrate to SUSE or RHEL to prevent encountering prospect errors?
SUSE was very close to Red Hat, but last version I have seen was SUSE 6.0 (released yet in XX century), so you can try or just ask Cadence. They should know for sure.