Re: gEDA-user: vexing problem: m4:stdin:7: bad expression in eval
Traylor Roger wrote: Dan, As you requested.. nbuster_3.sch:footprint=TSSOP-65P-640L1-14N This is the culprit As you can see, many of the footprints have a - but these are from John Luciani's footprint library. These have not caused any problems up to this point. With older versions of gsch2pcb, what happens is each of the footprints gets turned into a like like: PKG_TSSOP-65P-640L1-14N(foo, bar, baz) now the whole thing is fed to m4. Some of the footprints will expand to valid footprints, some will be left as PKG_name(arg1, arg2, arg3), and some like the TSSOP one will be partially expanded. Then gsch2pcb looks for file elements for the unexpanded footprints and optionally replaces the m4 generated ones with file ones. Unfortunately, this is an abuse[1] of a *private* part of pcb so it is really no wonder that it causes problems from time to time. Newer versions of gsch2pcb (can't recall exactly when newer was) have a option that prevents ever running m4. In this particular case, PKG_TSSOP is an internal macro that expects several arguments and produces a TSSOP footprint. When you feed PKG_TSSOP-65P-640L1-14N(foo, bar, baz) to m4, it tries to expand only the PKG_TSSOP part but there are no arguments. Now the internal code there flakes out. -Dan [1] Nothing external to pcb is ever supposed to invoke m4. The way the m4 libraries have historically been implemented in pcb, there are controls against garbage in like this. The pcblib.contents file constrains what is ever passed to m4 *and* m4 is only fed 1 package macro at a time. Contrast this to gsch2pcb which freely feeds any sort of input to m4 and it feeds many at once. Note that pcb has *never* claimed that the m4 stuff should be directly called by some external program. Even pcb doesn't call it directly like that. In fact in the last couple of pcb releases, m4 doesn't need to be called at runtime by pcb. It is used at build time to generate all of the footprints which are defined via m4 macros. Before anyone says otherwise though, the m4 libraries are not deprecated though. All of the footprints build and many (but not all) are fairly decent. For example, that's where to go if you want 3-tier footprints based on IPC recommendations for things like surface mount R's and C's. So, how to fix the situation? Someone needs to endow pcb with an action that instantiates a footprint. Then gsch2pcb should generate an action file for pcb to execute to do the instantiations. pcb should provide this as a documented public interface and gsch2pcb should stop abusing a private interface. At a minimum, gsch2pcb should simply stop trying to ever call m4. ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: vexing problem: m4:stdin:7: bad expression in eval
As you can see, many of the footprints have a - but these are from John Luciani's footprint library. These have not caused any problems up to this point. John disables m4 completely in his setup, so he won't have that problem. ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: vexing problem: m4:stdin:7: bad expression in eval
Dan, As you requested.. nbuster_1.sch:footprint=0805 nbuster_1.sch:footprint=cap-elec-Panasonic-FK--D4.00-H5.80-mm nbuster_1.sch:footprint=elect_mic_horn_EM6022P-42BC10.fp nbuster_1.sch:footprint=SOT-23_Transistor.fp nbuster_1.sch:footprint=tssop-8.fp nbuster_2.sch:footprint=0805 nbuster_2.sch:footprint=1210 nbuster_2.sch:footprint=DIP28N nbuster_2.sch:footprint=DMC16249.fp nbuster_2.sch:footprint=isp_2x5_header.fp nbuster_2.sch:footprint=POT_Bourns_3318K.fp nbuster_2.sch:footprint=SO14 nbuster_2.sch:footprint=SQFP-50P-780L1-780L2-32N nbuster_2.sch:footprint=SW__Panasonic_EVQPA_Series nbuster_3.sch:footprint=0603.fp nbuster_3.sch:footprint=0805 nbuster_3.sch:footprint=0805.fp nbuster_3.sch:footprint=cap-elec-Panasonic-FK--D4.00-H5.80-mm nbuster_3.sch:footprint=CON_JMP-100 nbuster_3.sch:footprint=IND__Sumida_CR43_Series nbuster_3.sch:footprint=MSOP-50P-490L1-10N__ADI_RM-10_Package nbuster_3.sch:footprint=SO8M nbuster_3.sch:footprint=SOT23 nbuster_3.sch:footprint=SOT-23_Transistor.fp nbuster_3.sch:footprint=SuperSOT23-Fairchild.fp nbuster_3.sch:footprint=SW__Panasonic_EVQPA_Series nbuster_3.sch:footprint=TSOT23-95P-280L1-6N__LTC_S6_Package nbuster_3.sch:footprint=TSSOP-65P-640L1-14N nbuster_4.sch:footprint=0402 nbuster_4.sch:footprint=ANT_FOLDED_DIPOLE__Chipcon_2500 nbuster_4.sch:footprint=NDK_NX3225SA-26MHz_xtal.fp nbuster_4.sch:footprint=QFN-50P-400W-400L-20N-240WT-240LT__Chipcon As you can see, many of the footprints have a - but these are from John Luciani's footprint library. These have not caused any problems up to this point. Thanks for your help, Roger grep footprint= *.sch | sort -u and post the result. My guess is you have a footprint name which is not a valid identifier for m4. If you have a - (that is a dash, not an underscore) for example as the footprint name it will cause problems. -Dan ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: vexing problem: m4:stdin:7: bad expression in
Dan, entering: echo eval(-2/2) | m4 returns: -1 I'll keep looking. Gonna whip this yet. Thanks again, Roger another possibility is that you have a buggy version of m4. Try this: echo eval(-2/2) | m4 It will be fairly obvious if you have the broken one. -Dan ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: vexing problem: m4:stdin:7: bad expression in eval
Dan, nbuster_3.sch:footprint=TSSOP-65P-640L1-14N This is the culprit Do you still feel that this is the bug considering DJ's comment? I believe I was able to make another component that used the 0805 footprint and saw the same error in gsch2pcb output. At any rate, I will try it tonight and see what happens. Thanks again, Roger Message: 11 Date: Fri, 30 Nov 2007 11:32:27 -0500 From: DJ Delorie [EMAIL PROTECTED] Subject: Re: gEDA-user: vexing problem: m4:stdin:7: bad expression in eval To: geda-user@moria.seul.org Message-ID: [EMAIL PROTECTED] As you can see, many of the footprints have a - but these are from John Luciani's footprint library. These have not caused any problems up to this point. John disables m4 completely in his setup, so he won't have that problem. ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: vexing problem: m4:stdin:7: bad expression in eval
On Nov 30, 2007 3:55 PM, Traylor Roger [EMAIL PROTECTED] wrote: Dan, nbuster_3.sch:footprint=TSSOP-65P-640L1-14N This is the culprit Do you still feel that this is the bug considering DJ's comment? I believe I was able to make another component that used the 0805 footprint and saw the same error in gsch2pcb output. There is a good chance that is the TSSOP. If not check --- MSOP-50P-490L1-10N__ADI_RM-10_Package SOT-23_Transistor.fp TSOT23-95P-280L1-6N__LTC_S6_Package TSSOP-65P-640L1-14N QFN-50P-400W-400L-20N-240WT-240LT__Chipcon What probably happened is that in your new design contains a footprint that has a hyphen in the name that you hadn't used before. (* jcl *) -- http://www.luciani.org ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: vexing problem: m4:stdin:7: bad expression in eval
Guys, I have been adding symbols to a schematic I'm building and now the additon of a new symbol causes an error that I cannot figure out. Background: gEDA/gnetlist version 20061020, Ubuntu 7.04 Four page schematic. Have been making and adding symbols for weeks without problems. Everything working well through to complete layout in pcb. Built a new symbol today. Symbol checks fine with gsymcheck -vv. Did some system updates today in Ubuntu 7.04. Mostly safe stuff like openoffice, firefox; but some linux stuff. (Kicking myself for doing the updates now.) Symptoms: 1. Whatever page I put this symbol on, gsch2pcb locks up for 2-3 minutes with the message: m4:stdin:7: bad expression in eval: /2 then it says: m4: memory exhausted Then it finishes out things farily normally. 2. When this behavior occurs, I see the following from gsch2pcb: R303: added new m4 element for footprint 0805 (value=4.7K) : added new m4 element for footprint(value=) Note the last line. No Refdes, no value. Odd... 3. Other new symbols I make do not seem to cause errors, but when added to the schematic page, do not show up as newly added parts with their refdes listed. And... you always see this line reappear: : added new m4 element for footprint(value=) 4. Same problems persist after reloading gEDA suite. Any ideas? I've been stumped for hours. Thanks, Roger Traylor Extra info, if your interested Packages that were updated today:(minus firefox and openoffice stuff) Commit Log for Thu Nov 29 10:56:25 2007 Upgraded the following packages: app-install-data-commercial (7.2) to 7.3 bsdutils (1:2.12r-17ubuntu2) to 1:2.12r-17ubuntu2.1 cdrecord (9:1.1.2-1) to 9:1.1.2-1ubuntu1 cupsys (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1 cupsys-bsd (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1 cupsys-client (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1 cupsys-common (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1 fglrx-control (8.34.8+2.6.20.5-16.29) to 8.34.8+2.6.20.6-16.30 genisoimage (9:1.1.2-1) to 9:1.1.2-1ubuntu1 gnome-system-tools (2.18.1-0ubuntu1) to 2.18.1-0ubuntu2 hpijs (2.7.2+1.7.3-0ubuntu1) to 2.7.2+1.7.3-0ubuntu1.1 hplip (1.7.3-0ubuntu1) to 1.7.3-0ubuntu1.1 hplip-data (1.7.3-0ubuntu1) to 1.7.3-0ubuntu1.1 libcupsimage2 (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1 libcupsys2 (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1 libflac7 (1.1.2-5ubuntu2) to 1.1.2-5ubuntu2.1 libmagick9 (7:6.2.4.5.dfsg1-0.14ubuntu0.1) to 7:6.2.4.5.dfsg1-0.14ubuntu0.2 libnspr4 (2:1.firefox2.0.0.6+1-0ubuntu1) to 2:1.firefox2.0.0.10+1nobinonly-0ubuntu1 libnss3 (2:1.firefox2.0.0.6+1-0ubuntu1) to 2:1.firefox2.0.0.10+1nobinonly-0ubuntu1 liboggflac3 (1.1.2-5ubuntu2) to 1.1.2-5ubuntu2.1 libpoppler1 (0.5.4-0ubuntu8.1) to 0.5.4-0ubuntu8.2 libpoppler1-glib (0.5.4-0ubuntu8.1) to 0.5.4-0ubuntu8.2 libqt3-mt (3:3.3.8really3.3.7-0ubuntu5.1) to 3:3.3.8really3.3.7-0ubuntu5.2 libsmbclient (3.0.24-2ubuntu1.2) to 3.0.24-2ubuntu1.4 libsndfile1 (1.0.16-1build1) to 1.0.16-1ubuntu0.7.04.1 libssl0.9.8 (0.9.8c-4build1) to 0.9.8c-4ubuntu0.2 mkisofs (9:1.1.2-1) to 9:1.1.2-1ubuntu1 mount (2.12r-17ubuntu2) to 2.12r-17ubuntu2.1 openssl (0.9.8c-4build1) to 0.9.8c-4ubuntu0.2 poppler-utils (0.5.4-0ubuntu8.1) to 0.5.4-0ubuntu8.2 python-uno (2.2.0-1ubuntu4) to 2.2.0-1ubuntu5 rhythmbox (0.10.0-0ubuntu2) to 0.11.2-0ubuntu4~feisty1 samba-common (3.0.24-2ubuntu1.2) to 3.0.24-2ubuntu1.4 smbclient (3.0.24-2ubuntu1.2) to 3.0.24-2ubuntu1.4 ttf-opensymbol (2.2.0-1ubuntu4) to 2.2.0-1ubuntu5 tzdata (2007f-0ubuntu0.7.4) to 2007h-0ubuntu0.7.04 update-manager (1:0.59.23) to 1:0.59.25 update-manager-core (1:0.59.23) to 1:0.59.25 util-linux (2.12r-17ubuntu2) to 2.12r-17ubuntu2.1 util-linux-locales (2.12r-17ubuntu2) to 2.12r-17ubuntu2.1 wine (0.9.45~winehq0~ubuntu~7.04-1) to 0.9.49~winehq0~ubuntu~7.04-1 wodim (9:1.1.2-1) to 9:1.1.2-1ubuntu1 xorg-driver-fglrx (7.1.0-8.34.8+2.6.20.5-16.29) to 7.1.0-8.34.8+2.6.20.6-16.30 Installed the following packages: libmtp5 (0.1.3-0ubuntu2) ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: vexing problem: m4:stdin:7: bad expression in eval
Traylor Roger wrote: Guys, I have been adding symbols to a schematic I'm building and now the additon of a new symbol causes an error that I cannot figure out. Background: gEDA/gnetlist version 20061020, Ubuntu 7.04 Four page schematic. Have been making and adding symbols for weeks without problems. Everything working well through to complete layout in pcb. Built a new symbol today. Symbol checks fine with gsymcheck -vv. Did some system updates today in Ubuntu 7.04. Mostly safe stuff like openoffice, firefox; but some linux stuff. (Kicking myself for doing the updates now.) Symptoms: 1. Whatever page I put this symbol on, gsch2pcb locks up for 2-3 minutes with the message: m4:stdin:7: bad expression in eval: /2 then it says: m4: memory exhausted Then it finishes out things farily normally. 2. When this behavior occurs, I see the following from gsch2pcb: R303: added new m4 element for footprint 0805 (value=4.7K) : added new m4 element for footprint(value=) Note the last line. No Refdes, no value. Odd... grep footprint= *.sch | sort -u and post the result. My guess is you have a footprint name which is not a valid identifier for m4. If you have a - (that is a dash, not an underscore) for example as the footprint name it will cause problems. -Dan ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user