does anyone know how to address the error @make : ...
# sky130
a
does anyone know how to address the error @make : "Error: Magic version 8.3.306 is required by this techfile, but this version of magic is 8.3.105."? Note, for some reason Magic version 8.3.306 is missing at the Git. Thanks!
m
Update to a magic version greater than 8.3.306.
a
the error has showed up after the upgrade to the magic version greater than 8.3.306, i.e. to 8.3.340
m
magic -dnull -noc --version
gives you 8.3.340?
a
Copy code
tar xvzf magic-8.3.340.tar.gz
cd magic-8.3.340
./configure
make
sudo make install
magic -dnull -noc --version results in 8.3.105. This is not what I want.
once I get things right on my WS, I plan to post a detailed upto date installation instructions for others
m
right. Where do you want to install? Currently installs in the default location.
./configure --prefix=<install_directory>
Use
which magic
to find install location. (for example
/usr/local/bin/magic
) In that case,
./configure --prefix=/usr/local
a
I want to install it on my personal ubuntu WS.
Copy code
which magic shows /usr/local/bin/magic
Copy code
could you give me an actual example for ./configure --prefix=<install_directory>, for instance, ./configure --prefix=/DIR_1/DIR_2
m
when you run
sudo make install
where does it install to?
In that case,
./configure --prefix=/usr/local
a
thanks, let me try it
installed version 8.3.340 of magic in /usr/local/bin/magic
magic -dnull -noc --version gives 8.3.340 now
I used ./configure --prefix=/usr/local for magic installation
cd ../xschem xschem Error: "Unable to open file: /usr/share/pdk/sky130A/libs.tech/xschem/sky130_tests/top.sch"
I see that file top.sch is residing at /home/owner/open_pdks/sky130/sky130A/libs.tech/xschem/sky130_tests rather than /usr/share/pdk/sky130A/libs.tech/xschem/sky130_tests
m
check your
xschemrc
file
a
I will try to "adjust" xschemrc script from "/usr/share/pdk" to "/home/owner/open_pdks"
########################################################################### #### SKYWATER PDK SPECIFIC VARIABLES ########################################################################### ## check if env var PDK_ROOT exists, and use it for building open_pdks paths if { [info exists env(PDK_ROOT)] && $env(PDK_ROOT) ne {} } { ## found variable, set tcl PDK_ROOT var if {![file isdir $env(PDK_ROOT)]} { puts stderr "Warning: PDK_ROOT environment variable is set but path not found on the system." } set PDK_ROOT $env(PDK_ROOT) } else { ## not existing or empty. puts stderr "Warning: PDK_ROOT env. var. not found or empty, trying to find an open_pdks install" if {[file isdir /home/agajan/open_pdks]} {set PDK_ROOT /home/agajan/open_pdks } elseif {[file isdir /home/agajan/open_pdks]} {set PDK_ROOT /home/agajan/open_pdks } elseif {[file isdir $env(HOME)/share/pdk]} {set PDK_ROOT $env(HOME)/share/pdk } else { puts stderr {No open_pdks installation found, set PDK_ROOT env. var. and restart xschem} } } if {[info exists PDK_ROOT]} { ## get process variant if {[info exists env(PDK)]} { set PDK $env(PDK) } else { set PDK sky130A } set SKYWATER_MODELS ${PDK_ROOT}/${PDK}/libs.tech/ngspice set SKYWATER_STDCELLS ${PDK_ROOT}/${PDK}/libs.ref/sky130_fd_sc_hd/spice puts stderr "open_pdks installation: using $PDK_ROOT" puts stderr "SKYWATER_MODELS: $SKYWATER_MODELS" puts stderr "SKYWATER_STDCELLS: $SKYWATER_STDCELLS" } # open_pdks specific: # Set variables after ${PDK_ROOT} is known # This overrides some of the variables set above. set XSCHEM_START_WINDOW ${PDK_ROOT}/${PDK}/libs.tech/xschem/sky130_tests/top.sch append XSCHEM_LIBRARY_PATH :${PDK_ROOT}/${PDK}/libs.tech/xschem
that is my "adjustment", in case if you have any feedback. There, I replaced /usr/share/pdk with /home/agajan/open_pdks
m
Probably needs to be
/home/agajan/open_pdks/sky130
a
i will run with both edits
your recommendation won. thanks!
👍 1
now, I will work on next topic, which is to enable the buttons "File", "Edit". etc
Thanks