Can't build symdiff from within devsim

51 views
Skip to first unread message

Noe Nieto

unread,
May 5, 2018, 5:22:58 PM5/5/18
to DEVSIM TCAD
Hi,

I'm trying to build devsim from scratch on Fedora 27, but the process fails when compiling symdif with "fatal error: Python.h: No such file or directory".

For example:

[nnieto@starblade devsim] $ pwd
/home/nnieto/DevSim/devsim
[nnieto@starblade devsim] $ git submodule init external/symdiff
[nnieto@starblade devsim] $ git submodule update external/symdiff
[nnieto@starblade devsim] $ cd external/symdiff/
[nnieto@starblade symdiff] $ scripts/setup_fedora_27.sh
 .... [Finish ok]
[nnieto@starblade symdiff] $ cd linux_x86_64_debug/
[nnieto@starblade linux_x86_64_debug] $ make -j2

[  1%] Generating mcParser.cc, mcParser.hh
[  3%] Generating mcParser.cc, mcParser.hh
[  4%] Generating mcScanner.cc
[  6%] Generating mcScanner.cc
Scanning dependencies of target symdiff
[  8%] Building CXX object src/engine/CMakeFiles/symdiff.dir/EngineAPI.o
Scanning dependencies of target symdiff_static
[  9%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/EngineAPI.o
[ 11%] Building CXX object src/engine/CMakeFiles/symdiff.dir/EquationObject.o
[ 12%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/EquationObject.o
[ 14%] Building CXX object src/engine/CMakeFiles/symdiff.dir/UserFunc.o
[ 16%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/UserFunc.o
[ 17%] Building CXX object src/engine/CMakeFiles/symdiff.dir/LogicalFunc.o
[ 19%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/LogicalFunc.o
[ 20%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/Add.o
[ 22%] Building CXX object src/engine/CMakeFiles/symdiff.dir/Add.o
[ 24%] Building CXX object src/engine/CMakeFiles/symdiff.dir/Constant.o
[ 25%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/Constant.o
[ 27%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/Exponent.o
[ 29%] Building CXX object src/engine/CMakeFiles/symdiff.dir/Exponent.o
[ 30%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/IfElse.o
[ 32%] Building CXX object src/engine/CMakeFiles/symdiff.dir/IfElse.o
[ 33%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/Log.o
[ 35%] Building CXX object src/engine/CMakeFiles/symdiff.dir/Log.o
[ 37%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/Pow.o
[ 38%] Building CXX object src/engine/CMakeFiles/symdiff.dir/Pow.o
[ 40%] Building CXX object src/engine/CMakeFiles/symdiff.dir/Product.o
[ 41%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/Product.o
[ 43%] Building CXX object src/engine/CMakeFiles/symdiff.dir/Variable.o
[ 45%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/Variable.o
[ 46%] Building CXX object src/engine/CMakeFiles/symdiff.dir/Functions.o
[ 48%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/Functions.o
[ 50%] Building CXX object src/engine/CMakeFiles/symdiff.dir/Utility.o
[ 51%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/Utility.o
[ 53%] Building CXX object src/engine/CMakeFiles/symdiff.dir/ProcessOrderedTable.o
[ 54%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/ProcessOrderedTable.o
[ 56%] Building CXX object src/engine/CMakeFiles/symdiff.dir/mcParser.o
[ 58%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/mcParser.o
[ 59%] Building CXX object src/engine/CMakeFiles/symdiff.dir/mcScanner.o
[ 61%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/mcScanner.o
[ 62%] Building CXX object src/engine/CMakeFiles/symdiff.dir/mcModelCompiler.o
[ 64%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/mcModelCompiler.o
[ 66%] Building CXX object src/engine/CMakeFiles/symdiff.dir/mcTest.o
[ 67%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/mcTest.o
[ 69%] Building CXX object src/engine/CMakeFiles/symdiff.dir/EquationFunctions.o
[ 70%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/EquationFunctions.o
[ 72%] Building CXX object src/engine/CMakeFiles/symdiff.dir/parseexpr.o
[ 74%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/parseexpr.o
[ 75%] Building CXX object src/engine/CMakeFiles/symdiff.dir/Context.o
[ 77%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/Context.o
[ 79%] Building CXX object src/engine/CMakeFiles/symdiff.dir/SubExpr.o
[ 80%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/SubExpr.o
[ 82%] Building CXX object src/engine/CMakeFiles/symdiff.dir/ProcessModelOrder.o
[ 83%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/ProcessModelOrder.o
[ 85%] Building CXX object src/engine/CMakeFiles/symdiff.dir/mcModel.o
[ 87%] Building CXX object src/engine/CMakeFiles/symdiff_static.dir/mcModel.o
[ 88%] Linking CXX shared library libsymdiff.so
[ 90%] Linking CXX static library libsymdiff_static.a
[ 90%] Built target symdiff_static
[ 90%] Built target symdiff
Scanning dependencies of target symdiff_tcl
Scanning dependencies of target symdiff_py
[ 91%] Building CXX object src/tclcomp/CMakeFiles/symdiff_tcl.dir/TclCommands.o
[ 93%] Building CXX object src/pycomp/CMakeFiles/symdiff_py.dir/PythonSymdiffCommands.o
/home/nnieto/DevSim/devsim/external/symdiff/src/pycomp/PythonSymdiffCommands.cc:23:10: fatal error: Python.h: No such file or directory
 #include "Python.h"
          ^~~~~~~~~~
compilation terminated.
make[2]: *** [src/pycomp/CMakeFiles/symdiff_py.dir/build.make:63: src/pycomp/CMakeFiles/symdiff_py.dir/PythonSymdiffCommands.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:259: src/pycomp/CMakeFiles/symdiff_py.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 95%] Building CXX object src/tclcomp/CMakeFiles/symdiff_tcl.dir/TclSymdiffCommands.o
[ 96%] Building CXX object src/tclcomp/CMakeFiles/symdiff_tcl.dir/tclcomp.o
[ 98%] Linking CXX shared library libsymdifftcl.so
[ 98%] Built target symdiff_tcl
make: *** [Makefile:95: all] Error 2

The fedora build and scripts are just the same as the one on the git repos. The Devsym revision is 18109d226d8d8178fd15c4d7d9bdb766e027d559

Any idea what could be wrong?

Juan E. Sanchez

unread,
May 5, 2018, 6:39:34 PM5/5/18
to dev...@googlegroups.com
Hi Noe,

I am able to build using a fedora 27 docker image with
devsim/scripts/build_fedora_27.sh

It installs all of the dependencies that should be required. Testing
it, I just found that "make" was missing, so it is now added. I also
made it now "make -j4".

Please do a git pull and run this script.

Regards,

Juan


On 5/5/18 4:22 PM, Noe Nieto wrote:
> Hi,
>
> I'm trying to build devsim from scratch on Fedora 27, but the process
> fails when compiling symdif with "*fatal error: Python.h: No such file
> or directory"*.

Noe Nieto

unread,
May 6, 2018, 3:47:21 AM5/6/18
to DEVSIM TCAD
Yessss it works now!

Thanks

Noe Nieto

unread,
May 15, 2018, 5:53:16 PM5/15/18
to DEVSIM TCAD
I built DevSim on another laptop with Fedora 28. The script fails due to a wrong directory path. Besides that, it compiles cleanly.

I just sent a PR for the directory path fix.


-- Noe

--
You received this message because you are subscribed to the Google Groups "DEVSIM TCAD" group.
To unsubscribe from this group and stop receiving emails from it, send an email to devsim+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/devsim.
To view this discussion on the web visit https://groups.google.com/d/msgid/devsim/4c81a5a5-a7c3-4b1c-88df-747ce257af8a%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
---
Noe Nieto
M: nni...@noenieto.com
W: http://noenieto.com
T:  @misaelnieto_a
Li: Perfil en LinkedIn
Reply all
Reply to author
Forward
0 new messages