Things to check: 1) Ensure you have no pre-compiled xschem package installed on the system. If there is one you can delete it with sudo apt purge xschem. These pre-built packages are way too old. 2) Install xschem from one of the source repositories. Follow instructions here. 3) If you have an existing ~/.xschem directory rename this one to something different: mv ~/.xschem ~/.xschem_old 4) The first time you run xschem it will create a ~/.xschemdirectory and copies a template xschemrc file inside...
Things to check: 1) Ensure you have no pre-compiled xschem package installed on the system. If there is one you can delete it with sudo apt purge xschem. These pre-built packages are way too old. 2) Install xschem from one of the source repositories. Follow instructions here. 3) If you have an existing ~/.xschem directory rename this one to something different: mv ~/.xschem ~/.xschem_old 4) The first time you run xschem it will create a ~/.xschemdirectory and copies a template xschemrc file inside...
The symbol libraries which come with the install tarball, need to be "pointed at" by some entry in the PATH that's set in the xschemrc file first-found at startup. Check the default search path and add the real one, if absent or "custom setup". If you use the instance-place form right, you may be able to find your target by up / down navigation but this is likelier if you're "somewhere close" (like maybe the library is one level down).
do not reset xctx->netlist_name after doing `Netlist` from gui (xschem netlist -erc)
add "proc ev7" (same as "proc ev", 7 significant digits)
proc edit_prop: correctly set editprop_sympath when tcleval(...) is used
remove testcase in comp_ngspice.sch
sym_vs_sch_pins(): do tcl substitution on symbol references found in schematic being compared with symbol
load_sym_def(): process tcleval(....) (if present) in `name` argument (use tcl_hook2())
node_hash.c optimization: use inst[].lab instead of get_tok_value(..., "lab"...)
let symbol name entry box in component edit property dialog box expand in X direction if dialog box is enlarged
update hash calculation in xschemtest.tcl for LCC_instances netlist (due to changes in schematic)
replace "UNDEF" with "-" in backannotated nodes that have no value in raw file.
add .options savecurrents in examples/LCC_instances.sch
ipdated examples/poweramp_lcc.sch
draw node names in graphs even if specified file / analysis (graph rawfile or sim_type attributes) is not loaded
if autoload is set in graph and a filename is given (rawfile graph attr) load raw file immediately when drawing graph. Don`t wait for user to load an intiial raw file to trigger auto loading
double clicking in the center of a graph will now bring up the graph edit attributes dialog box even if no raw file is loaded
set autoload on poweramp.sch graphs
changed current annotator texts in symbols to layer 17 (green-cyan) instead of blue
set verison to 3.4.6RC (Release Candidate) to avoid confusion
bump version to 3.4.6, will be next release when fully tested
remove memory tracking alloc IDs
fix another small memory leak due to tclvareval("xschem exit...")--> use tcleval()
fix memory leaks introduced since introduction of my_expand()
graphs will autoload (if autoload checked) raw data even if no raw file is specified in graph dialog box (use current loaded raw file, usually a different analysis)
save 4 vars ( node, ph(node), re(node, im(node) ) instead of 2 ( node, ph(node )for ac plots
use atof_spice() instead of atof() to read cursor position data from graph attributes
Add "private cursor" check box in graph dialog box. This allow the related graph to have separate "a" and "b" cursors. These cursor positions are saved with the schematic and are thus persistent when reloading the schematic.
correctly set top_path and current_win_path in preview_window() when calling alloc_xschem_data(), don`t use fake window paths (alert_ proc uses parent win path)
fix a bug in preview symbol displaying when inserting components. Toplevel .load widget was destroyed before cleaning preview data in preview_window(), so after some insertion preview was no more displayed.
resolved_net(): correctly handle subschematic nets attached via port to upper global node. (return VCC instead of x1.VCC)
remove backslashes in translate3() call in draw_temp_symbol(), as done in draw_symbol()
removed pointless my_strcat() in translate3()
better backslash handling in translate3()
fix escape recognition in translate3(), so in symbol texts it is possible to write \\@name to an instance attribute to get literal @name in displayed text instead of the instance name. fix typo in tutorial_use_existing_subckt.html. some schematic updates (no more enable show_pin_net_names tcl variable)
port ordering for a schematic .subckt line will always be deduced from the symbol if it exists, even if the symbol type is not "subcircuit" (so it will be used for also "primitive" type symbols).
add tcl xschemrc variable "select_touch" that enables selecting objects touched by the selection rectangle if dragging to the left. Previously this behavior was enabled by "incremental_select" that shows selected elements while dragging. These two optional behaviors are now enabled/disabled by separate variables
highlight disconnected instances at end of netlisting to better find them
issue a netlist error (and report message) if instances with pins have *all* pins disconnected. This is in 99.999% of the cases an error.
added tcl variable top_is_subckt and related Simulation->LVS menu, that keeps top level wrapped inside a .subckt / .ends, as lvs_netlist does. However top_is_subckt does only that and will not enable lvs_format to differentiate device lines in netlist (usually used for LVS comparison).
update install_xschem.html (xschemrc lookup at startup)
symbols picked up from CWD are saved in parent design without absolute paths even if the CWD is not in XSCHEM_LIBRARY_PATH list of places.
update hash netlist value in xschemtest.tcl for rom8k.sch
small changes (typos) in autozero_comp.sch
update simulator_commands.sym and simulator_commands_shown.sym to handle wrong simulator names (no `?` in netlist)
Many thanks Stefan!
The -l log command option is meant to put all stderr messages into a file (log in this case). Unfortunately the erc messages after a netlist were written to stderr instead of the specified log file. The last commit fixes this. Add -l log to your netlist command and all stderr messages go to log
add `xschem log_write text` command so erc error messages are written into errfp instead of stderr by tcl
I often want to write scripts that just create netlists of various circuits. I can easily execute the following on the terminal command line to do this: xschem -q -x -n -s -N test.deck test.sch All is fine as long as there were no errors found during the netlisting process. If any errors/warnings were found then these errors are printed to stderr. If I want to capture these errors then I do the following: xschem -q -x -n -s -N test.deck test.sch 2>test.err This is easy enough as long as I do this...
fix_symbols: add optional pattern parameter: `fix_symbols 0 devices`
sym_vs_sch_pins(): check for not NULL pin_dir to avoid crash, as per Tim Edwards findings
fix typos in html docs
doc minor edits
update xschem_man/tutorial_use_existing_subckt.html, `Completely specify a subcircuit in the format section of the symbol`
add graph_autoload to tctx::global_list
add autoload checkbutton in graph properties to automatically load or not custom graph-specified raw files
add `global=...` attribute description on component instances in xschem manual
allow `global` atttributes on instances of gnd.sym and vdd.sym to override symbol `global` setting. This allows also to set global=1 to net labels (lab_net.sym, lab_pin.sym) to make the net global.
move all @spice_get_current texts in devices/ symbols to layer 12 (blue), to better distinguish from voltage annotators on layer 15 (pink)
ps/pdf export: use highlight colors on instances / wires that are highlighted
documentation for attribute text_layer_n=lay
add attribute text_layer_n=lay, where n = text object inside symbol instance to change its layer
add abs_path parameter to get_sym_name() for more flexibility
correctly evaluate tcleval(....) in spice_sym_def attributes (ie after substituting @vars)
add @symref (in addition to @symname) substitution in spice_sym_def processing
enhance spice_sym_def used in instances (with schematic=...) by substituting @param with values defined in instance if any (param=xxx)
allow @symname , @param (param defined in symbol template string) translation in instance or symbol spice_sym_def attributes
fix erroneous select_touch() usage if incremental_select is set to 0 in xschemrc
Yeah, I also get same issue when creat netlist in windows : % tcleval(): evaluation of script: netlist {D:/Sim_Models/simulation/.rlc_26112} show {rlc.spice} failed : couldn't execute "awk": no such file or directory When I patched awk with gawk-3.1.6-1-setup.exe, the netlist file generated BUT looks wrong and can't accept by ngspice:
doc updates (dataset specification in graphs.html)
removed previously added use_pwd_instead_of_current_dirname tcl variable: now a `.` in search path is always assumed to be [pwd] and not the directory of the currently opened schematic. This will hopefully fix an endless list of user complains when using symbols from dirs not listed in XSCHEM_LIBRARY_PATH.
add use_pwd_instead_of_current_dirname xschemrc variable to replace curr_dirname in `proc abs_sym_path` and `proc rel_sym_path` with [pwd] instead of [xschem get current_dirname] (the path of currently loaded schematic)
fix tcleval called with 2 arguments on windows build in print_image()
fix bus_tap netlisting with bus pin (pin # 1) connected to unnamed net. If Tap pin (pin # 0) was already named as #net... (unnamed net ) delete and take name from bus pin and tap index
sim_pinnumber attribute on schematic pins will be used for top level .subckt pin ordering if no corresponding symbol exists when creating a spice netlist
proc ev, ev0, to_eng: evaluate expr at global scope so global vars will be expanded correctly ($path)
update Changelog to 3.4.5
Use by default *.{sym,tcl} pattern in insert symbol and component browser
`xschem setprop rect layer number fill val` : update cacted .fill value, if a full path is given with -N set netlist file name as well as destination path; allow right click waveforms to set to bold even if cursors are drawn
update all text_bbox() calls to account for tabs in bbox calculation
use $tabstop setting in tk text widgets
handle TABs in draw_string() (also ps and svg draw_string()), tcl var tabstop (default = 8) sets the tab positions.
xschem swap_cursors does not redraw. Use xschem redraw for that
update docs on new `xschem cursor` and `xschem swap_cursors` commands
added command `xschem cursor 1|0 1|0` to enable or disable cursors via cmdline
add command `xschem swap_cursors`
uniquify /tmp/xschem_web (--> /tmp/xschem_web_xxxxxx), also handle like /tmp/xschem_undo_xxxxx, create on startup and remove on exit.
update out of date doc image
tests/netlisting.tcl: better error checking. Distinguish a general failure from an ERC netlist error (xschem return code 10)
netlist errors (if xschemrun from cmdline) return exit code 10
do not allow wrap variable to be set in draw_graph() and graph_fullyzoom() if viewing multiple OP simulations converted to DC (allow_wrap)
fix regression (xschem load_new_window was not working anymore with web urls)
fix missing type for sym_vs_sch_pins(all)
if top level schematic has an associated symbol (.sym) file ensure their ports match, otherwise issue an error. if netlisting fails return non zero exit code if netlisting from command line
translate(): return @spice_get_* tokens in engineerring notation if no tcleval(...) is used (no further expr processing)
resolved_net(): resolve nets passed to symbols via attributes, avoid using dtoa_eng() in returned spice voltages, use dtoa(), since it may be used further in tcl expressions.
spice_get_voltage attributes: assume "0" and "GND" equal to 0.0V (not saved by simulator), added vgs and vds showing in nmos4.sym and pmos4.sym if show/hide->show hidden texts enabled
little adjust default layer 11 color (green)