RE: Compilation errors
"Ko, Yao" <[email protected]>
| Newsgroups | gmane.comp.gnu.gnucap.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi Al, Would you happen to have some detailed architectural design documentation for Gnucap? I'm diving deeper into the source code to attempt to add the 'B' element. However, I couldn't find the explanation for all the classes and methods in the "Technical notes" of the manual, nor in the comments of the source code. I'm creating a device with this hierarchy: CKT_BASE -> CARD -> COMPONENT -> ELEMENT -> DEV_DS "DS" for dependent source. From where can I get the parameter list entered in the netlist? For example, if there's a line: B1 100 200 I=SIN(V(1,2)) how can I retrieve that "I=SIN(V(1,2))" for later parsing? Any insight would be greatly appreciated, Yao Ko -----Original Message----- From: Al Davis [mailto:[email protected]] Sent: Friday, October 25, 2002 11:09 PM To: [email protected]; [email protected]; [email protected] Subject: Re: [Gnucap-devel] Compilation errors On Thursday 24 October 2002 02:38 pm, Ko, Yao wrote: > I just downloaded gnucap, versions 0.30, 0.31 and 0.32 and all these > versions had similar compilation errors. I'm running RedHat 8.0 with GCC > 3.2 on Intel arch. > > Here is a snippet of the error when I ran configure; make: > > [...] > cat Make1 Make2.g++ Make3 Make.depend >O/Makefile > (cd O; make -k) > make[2]: Entering directory `/cais2/yaok/development/gnucap-0.31/src/O' > g++ -DUNIX -O2 -DNDEBUG -I.. -I. -fno-exceptions -W -c ../m_matrix.cc > ../m_matrix.cc: In member function `BSMATRIX<T>& BSMATRIX<T>::fbsub(T*, > const > T*, T*) [with T = double]': > ../m_matrix.cc:438: instantiated from here > ../m_matrix.cc:410: `copy_n' undeclared in namespace `std' "copy_n" is a function that is supplied with some versions of STL but not others. I thought all Linux versions used the GNU STL, which did supply it. In 0.31 and earlier, you need to #define NEEDS_COPY_N in the Makefile (Make2.g++). You should not see this problem with 0.32, because it (supposedly) is fixed to never use the questionable STL copy_n. The confugure script should take care of this, but doesn't. It should be a non-issue in 0.32, but is in earlier versions. > g++ -DUNIX -O2 -DNDEBUG -I.. -I. -fno-exceptions -W -c ../u_xprobe.cc > ../u_xprobe.cc:29: default argument given for parameter 1 of `double > XPROBE::operator()(mod_t = mtNONE, bool = false) const' > ../u_xprobe.h:51: after previous specification in `double > XPROBE::operator()(mod_t = mtNONE, bool = false) const' The default arguments are given twice. To fix, remove them from u_xprobe.cc:29. It is not a problem on older versions of g++, and will be fixed in 0.33. Thanks. > The manual says that "any high quality C++ compiler available today should > work." That's the intent. Sometimes there are bugs. Thanks for the bug report. Version 0.32 is available from ftp://progeny.isu.edu/pub/gnucap/gnucap-0.32.tar.gz . It should appear on the gnu and geda sites soon. There are some other documents, including papers and presentations, at progeny.isu.edu that may be of interest.