graywolf
graywolf copied to clipboard
install greywolf on cygwin issue
Hello Ruben,
I am a hardware guy doing place and route for years and I have absolute zero knowledge about software developing, but I want to try greywolf on my design and I have no choice but to learn how to compile ;)
I am trying to compile greywolf on my windows computer and I am using Cygwin64 to do that. cmake step goes without errors, but during make it gives the following errors ( I did make -i and grepped all errors from the log so I could capture all errors, without onion peeling). There are 2 issues:
The first issue starts with getCompileDate error and translates to places where it uses this:
[ 21%] Linking C shared library cygycadgraywolf-1.dll
CMakeFiles/ycadgraywolf.dir/program.c.o:program.c:(.text+0x3d): undefined reference to getCompileDate' CMakeFiles/ycadgraywolf.dir/program.c.o:program.c:(.text+0x3d): relocation truncated to fit: R_X86_64_PC32 against undefined symbol
getCompileDate'
[ 52%] Building C object src/twmc/CMakeFiles/TimberWolfMC.dir/__/date/date.c.o make[2]: *** No rule to make target 'src/Ylib/libycadgraywolf.so', needed by 'src/twmc/TimberWolfMC.exe'. Stop.
[ 55%] Building C object src/genrows/CMakeFiles/genrows.dir/__/date/date.c.o make[2]: *** No rule to make target 'src/Ylib/libycadgraywolf.so', needed by 'src/genrows/genrows.exe'. Stop.
[ 59%] Building C object src/twflow/CMakeFiles/graywolf.dir/__/date/date.c.o make[2]: *** No rule to make target 'src/Ylib/libycadgraywolf.so', needed by 'src/twflow/graywolf.exe'. Stop.
[ 61%] Building C object src/mincut/CMakeFiles/Mincut.dir//date/date.c.o make[2]: *** No rule to make target 'src/Ylib/libycadgraywolf.so', needed by 'src/mincut/Mincut.exe'. Stop. ^ [ 89%] Building C object src/twsc/CMakeFiles/TimberWolfSC.dir//date/date.c.o make[2]: *** No rule to make target 'src/Ylib/libycadgraywolf.so', needed by 'src/twsc/TimberWolfSC.exe'. Stop.
[ 92%] Building C object src/syntax/CMakeFiles/syntax.dir/__/date/date.c.o make[2]: *** No rule to make target 'src/Ylib/libycadgraywolf.so', needed by 'src/syntax/syntax.exe'. Stop.
The second issue is related to some extra libraries needed for cygwin so it understands stdin and stdout. Or, if I somehow compile it with "#define linux" switch, they all should go away. But I don't know how. It is also same kind of issue in different files:
/cygdrive/d/FreeEDA/graywolf-master/src/twflow/readobjects_l.h:27:14: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ /cygdrive/d/FreeEDA/graywolf-master/src/twflow/readobjects_l.h:27:14: note: (near initialization for ‘yyin’) /cygdrive/d/FreeEDA/graywolf-master/src/twflow/readobjects_l.h:27:31: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ ... /cygdrive/d/FreeEDA/graywolf-master/src/mincut/readcells_l.h:27:14: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ /cygdrive/d/FreeEDA/graywolf-master/src/mincut/readcells_l.h:27:14: note: (near initialization for ‘yyin’) /cygdrive/d/FreeEDA/graywolf-master/src/mincut/readcells_l.h:27:31: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ ... /cygdrive/d/FreeEDA/graywolf-master/src/twsc/readcell_l.h:27:14: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ /cygdrive/d/FreeEDA/graywolf-master/src/twsc/readcell_l.h:27:14: note: (near initialization for ‘READCEL_yyin’) /cygdrive/d/FreeEDA/graywolf-master/src/twsc/readcell_l.h:27:31: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ ... /cygdrive/d/FreeEDA/graywolf-master/src/twsc/readnets_l.h:27:14: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ /cygdrive/d/FreeEDA/graywolf-master/src/twsc/readnets_l.h:27:14: note: (near initialization for ‘NET_yyin’) /cygdrive/d/FreeEDA/graywolf-master/src/twsc/readnets_l.h:27:31: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ ... /cygdrive/d/FreeEDA/graywolf-master/src/mc_compact/readcgraph_l.h:28:14: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ /cygdrive/d/FreeEDA/graywolf-master/src/mc_compact/readcgraph_l.h:28:14: note: (near initialization for ‘DRG_yyin’) /cygdrive/d/FreeEDA/graywolf-master/src/mc_compact/readcgraph_l.h:28:31: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ ... /cygdrive/d/FreeEDA/graywolf-master/src/mc_compact/readtiles_l.h:28:14: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ^ /cygdrive/d/FreeEDA/graywolf-master/src/mc_compact/readtiles_l.h:28:14: note: (near initialization for ‘yyin’) /cygdrive/d/FreeEDA/graywolf-master/src/mc_compact/readtiles_l.h:28:31: error: initializer element is not constant FILE *yyin ={stdin}, *yyout ={stdout}; ... ^
I am stuck with this for 2 days already, if you have any hint or solution, please let me know.
Thanks a lot in advance, Igor
I have the same problem with the latest Cygwin version : any trick ?