after downloading a Git repository, I am getting e...
# sky130
a
after downloading a Git repository, I am getting error for "make" command" as below:
Copy code
make: *** No targets specified and no makefile found.  Stop.
Here are the two command lines after downloading a Git repository:
Copy code
./configure --enable-sky130-pdk
 make
There was one error with regards to 'magic' tool- please see below: configure: Found tools: klayout magic netgen irsim openlane qflow xschem xcircuit checking for magic... no configure: error: You need 'magic' to generate the needed various cell views.
m
I’m assuming you’re referring to the
open_pdk
git repo? You do need magic to install open_pdks and the version of magic may be important.
a
Yes, open_pdks. That’s correct - magic is a required tool
m
what magic version do you have installed?
magic -dnull -noc --version
a
magic is not installed yet.
I tried sudo apt-get -y install magic
.....Reading package lists... Done Building dependency tree... Done Reading state information... Done E: Unable to locate package magic
m
Maybe best to install from source. https://github.com/RTimothyEdwards/magic.git
a
valid idea, thks!
./configure --enable-magic resulted in the same : Checking technology sky130... configure: Found tools: klayout magic netgen irsim openlane qflow xschem xcircuit checking for magic... no configure: error: You need 'magic' to generate the needed various cell views.
git clone https://github.com/RTimothyEdwards/magic Cloning into 'magic'... remote: Enumerating objects: 10380, done. remote: Counting objects: 100% (440/440), done. remote: Compressing objects: 100% (234/234), done. remote: Total 10380 (delta 193), reused 386 (delta 165), pack-reused 9940 Receiving objects: 100% (10380/10380), 8.34 MiB | 15.88 MiB/s, done. Resolving deltas: 100% (6399/6399), done.
m
After cloning the magic repo
Copy code
cd magic
./configure --prefix=<your_install_path>
make
make install
Where did
./configure --enable-magic
come from? Once magic is installed, make sure it’s on your path. magic -dnull -noc --version Once that works, you can go back to
open_pdks
and try
./configure --enable-sky130-pdk
again.
a
It came from me. could you give an example for ./configure --prefix=<your_install_path>. Thx!
./configure
checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking how to run the C preprocessor... gcc -E checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking for library containing strerror... none required checking for a BSD-compatible install... /usr/bin/install -c checking for ranlib... ranlib checking for ld used by GCC... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking size of void *... 8 checking size of unsigned int... 4 checking size of unsigned long... 8 checking size of unsigned long long... 8 checking whether byte ordering is bigendian... no checking for ANSI C header files... (cached) yes checking for setenv... yes checking for putenv... yes checking for vfork... yes checking sys/mman.h usability... yes checking sys/mman.h presence... yes checking for sys/mman.h... yes checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking param.h usability... no checking param.h presence... no checking for param.h... no checking paths.h usability... yes checking paths.h presence... yes checking for paths.h... yes checking for va_copy... yes checking for __va_copy... yes checking for gzopen in -lz... yes checking for gcore... /usr/bin/gcore checking for csh... no configure: error: cannot find /bin/csh---cannot compile! agajan@agajan-HP:~/open_pdks/magic$ ./configure --enable-magic-open_pdks configure: WARNING: unrecognized options: --enable-magic-open_pdks checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking how to run the C preprocessor... gcc -E checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking for library containing strerror... none required checking for a BSD-compatible install... /usr/bin/install -c checking for ranlib... ranlib checking for ld used by GCC... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking size of void *... 8 checking size of unsigned int... 4 checking size of unsigned long... 8 checking size of unsigned long long... 8 checking whether byte ordering is bigendian... no checking for ANSI C header files... (cached) yes checking for setenv... yes checking for putenv... yes checking for vfork... yes checking sys/mman.h usability... yes checking sys/mman.h presence... yes checking for sys/mman.h... yes checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking param.h usability... no checking param.h presence... no checking for param.h... no checking paths.h usability... yes checking paths.h presence... yes checking for paths.h... yes checking for va_copy... yes checking for __va_copy... yes checking for gzopen in -lz... yes checking for gcore... /usr/bin/gcore checking for csh... no configure: error: cannot find /bin/csh---cannot compile!
m
What platform are you installing on? I don’t own the workstation I use, so I install my personal magic versions with
./configure --prefix=$HOME/local
and then
export PATH=$HOME/local/bin:$PATH
a
Many thanks, David for the swift assistance.
I have to call it a day here and resume troubleshooting tomorrow. Thanks again!
does anyone know what does the statement try to say "ConfigurationLoadError: Unable to load configuration file. path: /home/folder1/open_pdks/sources/sky130-pdk/env/conda/.condarc reason: invalid yaml at line 3, column 0" ?
m
Can you post
/home/folder1/open_pdks/sources/sky130-pdk/env/conda/.condarc
?
a
envs_dirs: - /home/folder1/open_pdks/sources/sky130-pdk/env/conda/envs onda-pkgs
line 3 there = onda-pkgs
I am new to "conda"
m
@Aga S I set
export  PDK_ROOT=$HOME/local/pdks
and then
Copy code
git clone <https://github.com/RTimothyEdwards/open_pdks.git>
cd open_pdks
./configure --prefix=$HOME/local/pdks --enable-sky130-pdk
make
and everything seemed to work without problems. commit
002b5dd29d81e9affec60cb6d57ed867c888e23c
m
Hi I have the same problem with open_pdk (during make I got eeror that does not find make file) and during config that I do not have magic . If I try to install magic from Tim's repo : with
Copy code
./configure --prefix=\$HOME/vlsi/magic
for `make`I get :
Copy code
make[2]: *** [../rules.mak:31: libgraphics.o] Error 1
make[2]: Leaving directory '/home/mihaih/vlsi/Repos/magic/graphics'
make[1]: *** [Makefile:52: modules] Error 1
make[1]: Leaving directory '/home/mihaih/vlsi/Repos/magic'
make: *** [Makefile:22: standard] Error 2
m
@Mihai Hurdugaciu What’s the
\
in
\$HOME
for?
m
I am not very experienced with linux and I have this commnad from an example, I do not remember were from .... but even with
./configure --prefix=$HOME/vlsi/magic
I have the same errors
m
Ok. So maybe the installation setting is mangled. I’m guessing you cloned the repo to
$HOME/vlsi/magic
- is that correct? If so, you probably want
--prefix
to point to somewhere else - that’s where the installed program will go. I generally use
--prefix=$HOME/local
and then add
$HOME/local/bin
to the
PATH
variable.
Copy code
export PATH=$HOME/local/bin:$PATH