Hello Romano,
I am testing now Ubuntu Gnome 14.04; and this morning I was checking
xcircuit (which has seen an upgrade from 3.7.24 to 3.7.55) and I discovered
that my libraries (and I think some of my files) are read incorrectly. I am
almost sure that this is my error or a distro error, but I was not able to
find the problem.
XCircuit wants to keep all objects that are used by a library within
the library itself, even if the original definition comes from outside
that library. This avoids the problem of having libraries using
object names that are not found inside the library. When xcircuit
loads a library and sees that there are more than one object with the
same name, it will compare the objects and determine whether or not they
are really the same object, then either delete one of them (if it's the
same) or rename it (if it's not).
Your library "utility.lps" is making use of some of the objects from
libraries that are loaded into xcircuit on startup, like "arrowhead",
"arrow", "diode", etc. However, those definitions are not in the .lps
file. In that case, they must come from a pre-loaded library, where
they must be defined *exactly* as they are referenced.
The problem stems from a change I made to start using prefixes in front
of object names. This change was made largely to make it possible to
keep track of which libraries each object comes from, and makes it
easier to swap parts between libraries. In the updated system,
"arrowhead" changed to "generic::arrowhead", "diode" changed to
"analog::diode", etc.
There are several ways around this problem. The best is to just
replace the names of the objects in "utility.lps" that come from
files installed with xcircuit (generic.lps and analog.lps) with
the name used in the updated files. This is easy enough to do that
I went ahead and did it for you. But if you encounter this problem
again, you'll know why it happened, and what you can do about it.
By the way, a simpler way to solve the problem would be to specifically
load the older versions of the files "generic.lps", "analog.lps", and
"digital.lps" in your .xcircuitrc-3.7 file. But I'm not sure how often
you would see this problem show up. I think it happened because you
removed the duplicate objects from the library file, and I think the
only way that can happen is if you removed them by hand (but I'm not
certain about that). Using the fixed library file might solve all the
problems.
Regards,
Tim
+--------------------------------+-------------------------------------+
| R. Timothy Edwards (Tim) | email: [email protected] |
| Open Circuit Design | web: http://opencircuitdesign.com |
| 22815 Timber Creek Lane | phone: (301) 528-5030 |
| Clarksburg, MD 20871-4001 | cell: (240) 401-0616 |
+--------------------------------+-------------------------------------+
%! PostScript set of library objects for XCircuit
% Version: 3.1
% Library name is: utility.lps
% Author: Romano Giannetti,D-204,2410, <[email protected]>
%
% XCircuitLib library objects
/utility::RinOhm_Cinf {
% -64 -32 115 74 bbox
begingate
(W) {/Symbol cf} (R in ) {/Helvetica cf} 4 16 0 1.00 -64 16 label
(C =) {/Helvetica cf} 2 16 0 1.00 -64 -32 label
(\245) {/Symbol cf} 2 16 0 1.00 16 -32 label
endgate
} def
/utility::RinOhm_Cmicro {
% -64 -32 130 76 bbox
begingate
(W) {/Symbol cf} (R in ) {/Helvetica cf} 4 16 0 1.00 -64 16 label
(F) {/Helvetica cf} (m) {/Symbol cf} (C in ) {/Helvetica cf} 6 16 0 1.00 -64
-32 label
endgate
} def
/utility::RinOhm {
% -64 -16 115 28 bbox
begingate
(W) {/Symbol cf} (R in ) {/Helvetica cf} 4 16 0 1.00 -64 -16 label
endgate
} def
/utility::Cinmicro {
% -64 -16 130 28 bbox
begingate
(F) {/Helvetica cf} (m) {/Symbol cf} (C in ) {/Helvetica cf} 6 16 0 1.00 -64
-16 label
endgate
} def
/utility::dep_i {
% -32 -64 64 128 bbox
begingate
1 1.00 0 32 -32 0 0 -32 32 0 0 32 5 polygon
1 1.00 0 32 0 64 2 polygon
1 1.00 0 -32 0 -64 2 polygon
0.75 -181 0 -20 generic::arrowhead
1 1.00 0 -12 0 16 2 polygon
endgate
} def
/utility::dep_v {
% -32 -64 64 128 bbox
begingate
1 1.00 0 32 -32 0 0 -32 32 0 0 32 5 polygon
1 1.00 0 32 0 64 2 polygon
1 1.00 0 -32 0 -64 2 polygon
1 1.00 0 20 0 4 2 polygon
1 1.00 -8 12 8 12 2 polygon
1 1.00 -8 -16 8 -16 2 polygon
endgate
} def
/utility::alt_v {
% -32 -64 64 128 bbox
begingate
1 1.00 0 0 32 0.00 360.00 xcarc
1 1.00 0 32 0 64 2 polygon
1 1.00 0 -32 0 -64 2 polygon
1 2.00 0 16 0 -16 2 polygon
endgate
} def
/utility::alt_i {
% -32 -64 64 128 bbox
begingate
1 1.00 0 0 32 0.00 360.00 xcarc
1 1.00 0 -32 0 -64 2 polygon
1 1.00 0 32 0 64 2 polygon
1 2.00 -16 0 16 0 2 polygon
endgate
} def
/utility::pila {
% -48 -48 96 96 bbox
begingate
1 1.00 0 48 0 16 2 polygon
1 1.00 -48 16 48 16 2 polygon
240 1.00 -32 0 -32 -16 32 -16 32 0 4 polygon
1 1.00 0 -16 0 -48 2 polygon
endgate
} def
/utility::elettrolit {
% -32 -80 64 144 bbox
begingate
0 1.00 -32 16 -32 0 32 0 32 16 4 polygon
240 1.00 -32 -16 -32 -32 32 -32 32 -16 4 polygon
1 1.00 0 16 0 64 2 polygon
1 1.00 0 -32 0 -80 2 polygon
endgate
} def
/utility::zener {
% -32 -48 64 96 bbox
begingate
1.00 0 0 0 analog::diode
1 1.00 20 16 32 32 2 polygon
1 1.00 -20 16 -32 0 2 polygon
endgate
} def
/utility::tunnel {
% -24 -48 52 96 bbox
begingate
1.00 0 0 0 analog::diode
1 1.00 -24 8 -24 16 -20 16 3 polygon
1 1.00 20 16 24 16 24 8 3 polygon
endgate
} def
/utility::varicap {
% -16 -48 32 96 bbox
begingate
1 1.00 -16 16 16 16 2 polygon
1 1.00 -16 24 16 24 2 polygon
1 1.00 0 24 0 48 2 polygon
241 1.00 0 16 -16 -16 16 -16 0 16 4 polygon
1 1.00 0 -16 0 -48 2 polygon
endgate
} def
/utility::generic_z {
% -16 -64 32 128 bbox
begingate
0 1.00 -16 32 -16 -32 16 -32 16 32 4 polygon
1 1.00 0 64 0 32 2 polygon
1 1.00 0 -32 0 -64 2 polygon
endgate
} def
/utility::sensor_z {
% -32 -64 80 128 bbox
begingate
0 1.00 -16 32 -16 -32 16 -32 16 32 4 polygon
1 1.00 0 64 0 32 2 polygon
1 1.00 0 -32 0 -64 2 polygon
1 1.00 -32 -32 32 32 48 32 3 polygon
endgate
} def
/utility::sensor_r {
% -32 -64 80 128 bbox
begingate
1.00 0 0 0 analog::resistor
1 1.00 -32 -32 32 32 48 32 3 polygon
endgate
} def
/utility::led {
begingate
1.00 0 -32 -16 analog::diode
1.00 45 32 16 generic::arrow
1.00 45 32 0 generic::arrow
1.00 45 32 -16 generic::arrow
endgate
} def
/utility::fotodiodo {
begingate
1.00 0 -32 -16 analog::diode
-1.00 225 16 16 generic::arrow
-1.00 225 16 0 generic::arrow
-1.00 225 16 32 generic::arrow
endgate
} def
/utility::sensor_c {
% -48 -64 80 128 bbox
begingate
1.00 0 0 0 analog::capacitor
1 1.00 -48 -32 16 32 2 polygon
1 1.00 16 32 32 32 2 polygon
endgate
} def
/utility::supply_vcc {
% -44 -40 96 80 bbox
begingate
1.00 0 -32 0 generic::arrow
(CC) {ss} (V) {/Helvetica cf} 4 16 0 1.00 -16 8 label
endgate
} def
/utility::supply_vccp {
% -60 -40 112 84 bbox
begingate
(CC) {ss} (+V) {/Helvetica cf} 4 16 0 1.00 -40 16 label
1.00 0 -48 0 generic::arrow
endgate
} def
/utility::supply_vccm {
% -60 -40 118 80 bbox
begingate
1.00 -181 -48 0 generic::arrow
1 1.00 -48 -24 -48 -16 2 polygon
(CC) {ss} (-V) {/Helvetica cf} 4 16 0 1.00 -32 -40 label
endgate
} def
/utility::supply_veem {
% -60 -40 118 80 bbox
begingate
1.00 -181 -48 0 generic::arrow
1 1.00 -48 -24 -48 -16 2 polygon
(EE) {ss} (-V) {/Helvetica cf} 4 16 0 1.00 -32 -40 label
endgate
} def
/utility::vert_R {
% -30 -64 73 128 bbox
begingate
1.00 0 -16 0 analog::resistor
(R) {/Helvetica cf} 2 16 0 1.00 16 -16 label
endgate
} def
/utility::hor_R {
% -64 -30 128 72 bbox
begingate
1.00 270 0 -16 analog::resistor
(R) {/Helvetica cf} 2 16 0 1.00 -16 16 label
endgate
} def
/utility::vs_gnd {
% -48 -92 112 188 bbox
begingate
1.00 0 32 32 analog::vsource
1.00 0 32 -32 analog::gnd
(s) {ss} (v) {/Helvetica cf} 4 16 0 1.00 -48 32 label
endgate
} def
/utility::vo_gnd {
% -48 -44 99 76 bbox
begingate
1.00 0 16 -32 generic::circle
(o) {ss} (v) {/Helvetica cf} 4 16 0 1.00 16 16 label
1 1.00 -48 -32 16 -32 2 polygon
endgate
} def
/utility::horiz_R1 {
% -64 -30 128 72 bbox
begingate
1.00 270 0 -16 analog::resistor
(1) {ss} (R) {/Helvetica cf} 4 16 0 1.00 -16 16 label
endgate
} def
/utility::vert_R1 {
% -32 -64 78 128 bbox
begingate
1.00 0 32 0 analog::resistor
(1) {ss} (R) {/Helvetica cf} 4 16 0 1.00 -32 -16 label
endgate
} def
/utility::vsrsgnd {
% -48 -156 112 316 bbox
begingate
1.00 0 0 -64 utility::vs_analog::gnd
1.00 0 32 96 analog::resistor
1 1.00 32 160 64 160 2 polygon
(S) {ss} (R) {/Helvetica cf} 4 16 0 1.00 -48 80 label
endgate
} def
/utility::recegnd {
% -144 -124 285 252 bbox
begingate
(E) {ss} (R) {/Helvetica cf} 4 16 0 1.00 -64 0 label
(E) {ss} (C) {/Helvetica cf} 4 16 0 1.00 96 0 label
1.00 0 -112 0 analog::resistor
1 1.00 -112 128 -112 64 2 polygon
1.00 0 -112 -64 analog::gnd
1.00 0 48 -16 analog::capacitor
1 1.00 -112 64 48 64 48 48 3 polygon
1.00 0 48 -64 analog::gnd
endgate
} def
/utility::arrowhead {
begingate
8 -28 beginpath
3 -18 3 -15 0 0 curveto
-3 -15 -3 -18 -8 -28 curveto
-2 -26 2 -26 8 -28 curveto
249 1.00 endpath
endgate
} def
/utility::jfet_n {
begingate
1 1.00 48 64 48 32 16 32 16 -32 48 -32 48 -64 6 polygon
1.00 90 16 -32 generic::arrowhead
1 1.00 -32 -32 0 -32 2 polygon
1 1.00 16 48 16 -32 2 polygon
1 1.00 16 -48 16 -32 2 polygon
endgate
} def
/utility::jfet_p {
begingate
1 1.00 48 64 48 32 16 32 16 -32 48 -32 48 -64 6 polygon
1.00 270 -32 -32 generic::arrowhead
1 1.00 -16 -32 16 -32 2 polygon
1 1.00 16 48 16 -48 2 polygon
endgate
} def
/utility::rvista {
begingate
3 1.00 -32 -96 -32 96 16 96 3 polygon
1.00 90 32 96 generic::arrowhead
endgate
} def
/utility::rvista_in {
begingate
3 1.00 -64 -96 -64 96 -16 96 3 polygon
1.00 90 0 96 generic::arrowhead
(in) {ss} (R) {/Helvetica cf} 4 16 0 1.00 16 80 label
endgate
} def
/utility::rvista_out {
begingate
3 1.00 80 -112 80 80 16 80 3 polygon
-1.00 270 0 80 generic::arrowhead
(out) {ss} (R) {/Helvetica cf} 4 16 0 1.00 -80 80 label
endgate
} def
/utility::currentprobe {
begingate
1 1.00 0 -48 0 -16 2 polygon
1 1.00 -32 0 -16 48 8 48 0 -16 spline
1 1.00 16 -48 16 -16 2 polygon
1 1.00 48 0 32 48 8 48 16 -16 spline
1 1.00 -36 16 -20 16 2 polygon
1 1.00 -4 16 48 16 2 polygon
endgate
} def
/utility::ferrite_core {
begingate
0.600 0.600 0.600 scb
0 5.00 -48 80 -48 -80 48 -80 48 80 4 polygon
0 5.00 -16 48 -16 -48 16 -48 16 48 4 polygon
endgate
} def
/utility::motore {
begingate
1 1.00 0 0 45 41 0.00 360.00 ellipse
1 1.00 -32 32 -32 48 32 48 32 32 4 polygon
1 1.00 -32 -32 -32 -48 32 -48 32 -32 4 polygon
endgate
} def
/utility::motore_dc {
begingate
1.00 0 16 0 utility::motore
1 1.00 32 16 0 16 2 polygon
1 1.00 32 0 0 0 2 polygon
1 1.00 32 -16 0 -16 2 polygon
endgate
} def
/utility::biswitch {
begingate
1.000 180 32 48 generic::circle
1.000 180 32 -48 generic::circle
1.000 225 -15 -49 generic::arrowhead
1 1.000 -32 0 45 48 -63.435 63.435 ellipse
1.000 315 -15 48 generic::arrowhead
1 4.000 -16 0 32 0 2 polygon
1.000 0 -32 0 generic::circle
endgate
} def
% EndLib
_______________________________________________
Xcircuit-dev mailing list
[email protected]
http://www.opencircuitdesign.com/mailman/listinfo/xcircuit-dev