I'm trying to make my KiCad projects portable & that requires my custom symbols & footprint I used for these different projects be portable as well. So I'm putting my "my_symbols" & "my_footprints" folders in the same level as the folders for each projects.

Now, for the projects to refer to these custom footprints I go to Preferences > Manage Footprint Libraries > Project Specific Libraries > [Browse Folder] & browse for my_footprint folder. When the absolute path is inserted in Library Path, I make it relative by overwriting "../my_footprints" & click OK. This seems to work as the footprints are available for adding, editing or updating.

The problem is doing the same for symbols. I go to Preferences > Manage Symbol Libraries > Project Specific Libraries > [Browse Folder] & browse for the individual kicad_syms I have. When the absolute path is inserted in Library Path I change it to "../my_symbols/xxxx.kicad_sym". This seemingly works as I click OK, but though the name of the symbol is in the list for adding or editing, selecting it yields nothing, "No symbols selected".

Sure I can simply import the symbols for the project every time I change folders or workstation, but there's gotta be a smoother way.


1 Answer 1


Symbol and footprint library paths can contain path variable references. They are shown in "Path substitutions" zone in Symbols/Footprint libraries dialog.

One of these variables is ${KIPRJMOD} which references the project directory. If you use path like ${KIPRJMOD}/my_symbols/Lib_Name.kicad_sym, your project will be portable.

You may also add global paths in Preferences -> Configure Paths in KiCAD project window. You may for instance define a path for checkout of a custom KiCAD library repository you use from multiple projects.

Note: IIRC, relative paths without ${KIPRJMOD} or other absolute reference are relative to current working directory of the KiCAD executable, which may sometimes work, but is totally useless for portability.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.