[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: hierarchy and refdes_renum



Hi Anthony,

Yes, there is device that is not in the list and this is ground symbol. Please find diff file and test_v2i.sch attached. That is what I have (Please note, that your search for '=' sign, while there is no any '=' sign in the string...)

$ spnet test_v2i.sch

spNet v0.9.1.2
gEDA/gschem Netlister
Copyright 2009 Anthony Shanks

-I- Starting Build of Cell: test_v2i
-I- Adding Library: "sym"
-I- Adding Library: "power"
-I- Combining Cells

-E- Fatal Error: Invalid Component attr "C 42200 44200 1 0 0 gnd-1.sym".

$ more ~/.spnetlibs
library: /home/username/tsmc "sym"
library: /usr/local/share/gEDA/sym "power"



On 06/23/2009 09:39 AM, Anthony Shanks wrote:
    Comments are not supported yet, it's on the todo list.



    Is the new code working yet? the invalid compoent error will come up
    with there is a symbol in your schematic without a valid device
    attribute. Here is a list of devices that are current supported
    (device=)



    RESISTOR

    CAPACITOR

    INDUCTOR

    NPN_TRANSISTOR

    PNP_TRANSISTOR
    NMOS3T

    NMOS4T

    PMOS3T

    PMOS3T

    SUBCKT
    VOLTAGE_SOURCE
    CURRENT_SOURCE

    PIN



    As stated I will add suport for [N|P]MOS_TRANSISTOR in the next
    release as a 4 terminal mosfet device. Besides this, do you have any
    components in your schematic that is not on the above list?



    BTW, thanks for all your help in debugging.



    -Anthony

    On Tue, Jun 23, 2009 at 3:12 AM, A.Burinskiy<[1]alexbour@xxxxxxxxx>
    wrote:

      Hi Anthony,
      Yes, the cause of segfault are empty strings at the end of file. Do
      you
      support comment out in .spnetlibs? I will go ahead and try your new
      code.
      Thanks,
      Alex

    On 06/23/2009 03:03 AM, Anthony Shanks wrote:
    >  Wow. I guess I have a lot to learn as far as releasing code and
    >  compiling versions go because it works fine on my end with gcc 4.3.
    >  Sorry this is the first time I've released code (this big), please
    >  bare with me.
    >
    >  I tried one lib in spnetlibs with your line exactly and it works
    fine
    >  without a segfault. Can you attach your spnetlibs to ensure I'm 100%
    >  using exactly? One thing I did notice though is that if the file
    >  exists but is empty it does segfault. I just fixed this error and
    >  reuploaded it but I think it may go back to giving you the invalid
    lib
    >  error (you can redownload it from the same link). Are you sure there
    >  are not blank lines or anything in your file?
    >
    >  Also about number 1 and number 2 thoughts. That plan was already in
    >  the works for the official release. Most of the symbols from gschem
    >  work with spnet except the mosfets since geda does not have a 3
    >  terminal symbol. I plan on making [N,P]MOS_TRANSISTOR work for 4
    >  terminal devices. Also I plan for spnet to read the libraries
    already
    >  defined in the gEDA rc files. This will also be done in the next
    >  release. I'll try to get a version that does this by the end of the
    >  week however.
    >
    >  Let me know how it goes after you try the newest update.
    >
    >  -Anthony
    >
    >

    _______________________________________________
    geda-user mailing list
    [2]geda-user@xxxxxxxxxxxxxx
    [3]http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

References

    1. mailto:alexbour@xxxxxxxxx
    2. mailto:geda-user@xxxxxxxxxxxxxx
    3. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

------------------------------------------------------------------------



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


--- ../spnet-0.9.1.2/src/netlist.c	2009-06-23 02:59:13.000000000 -0700
+++ src/netlist.c	2009-06-23 09:25:45.140068435 -0700
@@ -307,7 +307,7 @@
 		}
 		
 		// Mosfet
-		else if(strcmp(devices->device,"NMOS3T") == 0 || strcmp(devices->device,"PMOS3T") == 0 || strcmp(devices->device,"NMOS4T") == 0 || strcmp(devices->device,"PMOS4T") == 0)
+		else if(strcmp(devices->device,"NMOS3T") == 0 || strcmp(devices->device,"PMOS3T") == 0 || strcmp(devices->device,"NMOS4T") == 0 || strcmp(devices->device,"PMOS4T") == 0 || strcmp(devices->device,"PMOS_TRANSISTOR") == 0 || strcmp(devices->device,"NMOS_TRANSISTOR") == 0  )
 		{
 			// Get pininfo
 			pininfo = GrabPins(devices->filename,devices->rotate,devices->x,devices->y,devices->inverted,libs);
@@ -644,13 +644,13 @@
 	explist = explode(str,' ');
 	if(explist == NULL)
 	{
-		printf("\n-E- Fatal Error: Invalid Component.\n\n");
+		printf("\n-E- Fatal Error: Invalid Component. Empty explist\n\n");
 		exit(1);
 	}
 	explist = explist->next;
 	if(explist == NULL)
 	{
-		printf("\n-E- Fatal Error: Invalid Component.\n\n");
+		printf("\n-E- Fatal Error: Invalid Component. Empty explist->next\n\n");
 		exit(1);
 	}
 	else
@@ -658,7 +658,7 @@
 	explist = explist->next;
 	if(explist == NULL)
 	{
-		printf("\n-E- Fatal Error: Invalid Component.\n\n");
+		printf("\n-E- Fatal Error: Invalid Component 3.\n\n");
 		exit(1);
 	}
 	else
@@ -666,13 +666,13 @@
 	explist = explist->next;
 	if(explist == NULL)
 	{
-		printf("\n-E- Fatal Error: Invalid Component.\n\n");
+		printf("\n-E- Fatal Error: Invalid Component 4.\n\n");
 		exit(1);
 	}
 	explist = explist->next;
 	if(explist == NULL)
 	{
-		printf("\n-E- Fatal Error: Invalid Component.\n\n");
+		printf("\n-E- Fatal Error: Invalid Component 5.\n\n");
 		exit(1);
 	}
 	else
@@ -680,7 +680,7 @@
 	explist = explist->next;
 	if(explist == NULL)
 	{
-		printf("\n-E- Fatal Error: Invalid Component.\n\n");
+		printf("\n-E- Fatal Error: Invalid Component 6.\n\n");
 		exit(1);
 	}
 	else
@@ -688,7 +688,7 @@
 	explist = explist->next;
 	if(explist == NULL)
 	{
-		printf("\n-E- Fatal Error: Invalid Component.\n\n");
+		printf("\n-E- Fatal Error: Invalid Component 7.\n\n");
 		exit(1);
 	}
 	else
@@ -716,7 +716,7 @@
 			attrib_value = strchr(string,'=');
 			if(attrib_value == NULL)
 			{
-				printf("\n-E- Fatal Error: Invalid Component.\n\n");
+				printf("\n-E- Fatal Error: Invalid Component attr \"%s\".\n\n", string);
 				exit(1);
 			}
 			attrib_value++;

Attachment: test_v2i.sch
Description: application/geda-schematic


_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user