kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #32249
Re: Symbol library table remapping question
On 12/06/2017 04:15 PM, Bernhard Stegmaier wrote:
> Hi Wayne,
>
> Thanks for the explanation.
>
>> On 6. Dec 2017, at 21:47, Wayne Stambaugh <stambaughw@xxxxxxxxx
>> <mailto:stambaughw@xxxxxxxxx>> wrote:
>>
>> This all depends on the symbol library list and symbol library path
>> configuration of the project being remapped. Here is how the remapping
>> works:
>>
>> Attempt to find the symbol in a library from the project library list.
>> This is the list of symbol libraries stored in the project file found
>> using the project and default lookup paths.
>>
>> If the symbol is found in any library but the cache, reconstruct the
>> full path to the symbol library.
>>
>> Search the global footprint library table for an entry matching the full
>> path.
>
> OK, I might have found the problem.
>
> In the *.pro file there was:
> <<<
> LibDir=/Users/bstegmaier/10 - Projekte/KiCad/Library
> [eeschema/libraries]
> LibName1=AtmelCorporation
> LibName2=Connectors
> LibName3=Devices
> LibName4=Displays
> LibName5=Power
>>>>
>
> I have 3 different machines, but with slightly different folder setup.
> To keep things simple, I used symlinks to make the library folder look
> the same.
> The path
> /Users/bstegmaier/10 - Projekte/KiCad/Library
> Is what is used in all project files.
> It will be great to get rid of this by means of symbols-lib-table...
>
> For the machine I used to test the remap the folder
> /Users/bstegmaier/10 - Projekte/KiCad/Library
> Is actually a symlink to
> /Volumes/OSXData/bstegmaier/10 - Projekte/KiCad
>
> For the Devices library the remap-generated project table entry is
> <<<
> …
> (lib (name Devices1)(type Legacy)(uri "/Users/bstegmaier/10 -
> Projekte/KiCad/Library/Devices.lib")(options "")(descr ""))
> …
>>>>
>
> My global table has
> <<<
> …
> (lib (name Displays)(type Legacy)(uri
> ${KICAD_SYMBOL_DIR}/Displays.lib)(options "")(descr "Display devices"))
> …
>>>>
> with ${KICAD_SYMBOL_DIR} being
> /Volumes/OSXData/bstegmaier/10 - Projekte/KiCad/Library
>
>> There a several reasons why this could happen depending your environment
>> variables, global system library table configuration, project symbol
>> library list, and any symbol library lookup paths added to the project.
>
> So, I guess this won’t match as you said, or do you attempt to resolve
> the symlink for comparison?
No, the correct remap is to use the same library that was being used
prior to the remapping. I think this makes the most sense.
>
>> Is the full path and file name for Devices in the global symbol library
>> table the same as Devices1 in the project symbol library table? If not,
>> then it's your configuration and the remapping is correct. If the paths
>> are the same, then there is a bug in the remapping algorithm that I
>> missed. If it's the latter, please file a bug report so I can fix it.
>
> I did a quick check and set ${KICAD_SYMBOL_DIR} to
> /Users/bstegmaier/10 - Projekte/KiCad/Library
> => the symlink to the real folder, the same as used in the *.pro file.
>
> Remapping did work without problems then and didn’t create a project table.
>
> If you consider this a bug, I can file a bug report for it…
I do not consider this a bug. The remapping algorithm selected the
appropriate library. I have the same issue on all of my systems because
I have so many versions of kicad installed simultaneously. I suspect
this will be less of an issue for users who only have a single version
kicad installed.
>
>
> Thanks,
> Bernhard
>
>
Follow ups
References