bug-gnucap
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-gnucap] building guncap-0.35 in cygwin


From: Dan McMahill
Subject: Re: [Bug-gnucap] building guncap-0.35 in cygwin
Date: Tue, 28 Nov 2006 20:17:48 -0500
User-agent: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.7.6) Gecko/20050412

Dan McMahill wrote:
Jon Choy wrote:


I'm attempting to do a build in the most recent version of cygwin. During the "make", I get the following errors:


Making all in modelgen
make[2]: Entering directory `/home/src/gnucap-0.35/modelgen'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/src/gnucap-0.35/modelgen'
Making all in src
make[2]: Entering directory `/home/src/gnucap-0.35/src'
make[2]: *** No rule to make target `d_bjt.cc', needed by `c_getckt.o'. Stop.
make[2]: Leaving directory `/home/src/gnucap-0.35/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/src/gnucap-0.35'
make: *** [all] Error 2


I noticed in the announcement for a November release (which I also tried) some statements about the link order being very important. http://archives.seul.org/geda/dev/Nov-2006/msg00030.html

Could this be related? I'm dying to try gnucap out within cygwin and am looking forward to the Verilog A release which is what intrigues me abou this tool.


no, your problem is something else.


Do you have the file  "/home/src/gnucap-0.35/src/d_bjt.model"?

in src/Makefile.in there is something like this:

.SUFFIXES: .model .cc .o .obj

and later:

c_getckt.${OBJEXT}: ${MODELSRCS}

%.cc : %.model %.h ${MODELGEN}
        ${MODELGEN} -cc $<

%.h : %.model ${MODELGEN}
        ${MODELGEN} -h $<

and d_bjt.cc is listed in MODELSRCS. So make should be able to figure out from the suffix rule that if it has a d_bjt.model and needs a d_bjt.cc then just run modelgen.



ok, here's whats wrong. I put in pattern rules for the modelgen generated sources. Thats the:

%.cc : %.model %.h ${MODELGEN}
        ${MODELGEN} -cc $<

%.h : %.model ${MODELGEN}
        ${MODELGEN} -h $<


part in src/Makefile.am and src/Makefile.in

The problem is with pattern rules, GNU make will look at %.model and ${MODELGEN} (the dependencies both explicit and patterns) and see if it knows how to produce those. If so, then it knows it can produce the target. The kicker is that ${MODELGEN} ends up being something like ../modelgen/gnucap-modelgen but on cygwin there is also a .exe extension. So I think all that is needed is to modify the above to be:


%.cc : %.model %.h ${MODELGEN}${EXEEXT}
        ${MODELGEN} -cc $<

%.h : %.model ${MODELGEN}${EXEEXT}
        ${MODELGEN} -h $<


This seems to work for me.

-Dan







reply via email to

[Prev in Thread] Current Thread [Next in Thread]