Im working on a project using git and 2 different versions of KiCad. The one i started the project on and have done all of the development with is running 4.0.6 and now that Ive used newer versions built from source Im really starting to miss some of the new features. The problem is that because of the schematic symbol table changes, when I load up the schematic on a different machine running a newer version of KiCad, all of the built in default libraries are a bunch of question marks. The weird part is, is that there are libraries that are usable and i can replace the components with the same thing and they show up but since there is over 150 parts I really dont want to do that. I also dont want to upgrade on my older laptop and mess everything up if im not absolutely sure I can get it working
Is your cache file defect?
Is your newer version connected to the same libs as the old version?
Did you ignore the rescue dialog?
Why compile it your self? There are nightly builds.
I guess the first question that should be asked is what “new” version of KiCad are your using? I had a similar case with an older project. It was discussed here and resulted in a bug report. Supposedly it has been fixed, so if you download a fresh nightly built everything should work. The other option would be to copy your project into a separate folder and delete EVERYTHING except for your project file, schematics files and PCB files and then try to open that new project again. I would personally first go to EEschema and remove all the libraries and add again only the ones you are using, to simplify troubleshooting.
Im using the version from git last night (1/27/18) I dont know the exact commit number right now
I had to build from source because the fedora copr nightly builds are still broken as far as I can tell
The messages from the rescue dialog make sense but it doesnt really seem to actually be fixing the components like it shoud
the symptoms are different than the bug @ArtG mentioned
I have removed all cache file to try and regenerate them
the only non built in library Im using is in the project folder and still works fine
I tried removing everything from the library table and re adding it, still did not fix anything.
When I look a schematic symbol the before modifying it will just say something like POT_Dual, but if I replace it it will say Device:POT_Dual in the symbol field. it just seems like the remap isn’t actually doing anything
You would think so, but when I was dealing with the issue I would get intermittent results. When you would open schematics the first time you could get all the symbols opened from the rescue library. If you quit at this point without saving and open it again you would get all question marks. All that was happening while the original libraries were added and available. I still can’t figure out the cup game that is happening on the background with renaming your libraries from the original name to the one with “1” at the end. Seems like a candidate for an obfuscation award.
So, the only thing that worked for me was to delete everything except for the files mentioned above and then open it with the new version of KiCad and let it do remapping.
To be fair, you probably only need to delete sym-lib-table from the old project. But when I was doing it, I would just clear everything out and start from “the good state”
I was wondering if rescue and remap were different things. Every time I open the file I get the remap dialog, it doesnt matter whether I have saved it or not but I havent seen the rescue dialog, at least on this project. I deleted sym-lib-table and it didnt seem to fix it
Are you keep trying to open the remapped project or you have a copy of the original project? I would get a copy of the original project, delete everything from it except for the .sch, kicad_pcb and .pro files open it with a release version of KiCad just to make sure that all the symbols open and libraries still there and only then try to open it with a new version and do a remap
I just tried opening your project from GitHub. First, you need to include your cache and all of the libraries. JACK_TRS_6PIN does not exist in the libraries you include and there is no symbol cache, so we lose that symbol and will need to update it once we find the library.
Other than that, your project remaps cleanly on my machine.
So, why did it break for you? Chances are that your symbol library table is invalid/incomplete. The line Warning: No symbol "GND" found in symbol library table. should tip us off that your symbol library is not correct. You should back it up and replace it with the default that comes from https://kicad.github.io/symbols/
Well, I might be a moron but then theres this in the .gitignore: *-cache.lib
Hmm I wonder why stuff isnt importing correctly, definitely couldnt be missing files or anything
Im actually fairly surprised @Seth_h got it to work, and he’s right too, there is no symbol cache
I fixed that part and now im getting the rescue dialogue when I open the project. Everything is still missing but I think that is down to how my component paths are set up. As far as the actual rescue process goes Im not sure how to do that yet.
I might should create a new thread for this but now the question is, is there a way to propagate the new library name once ive swapped the component out with one from the new libraries. For example I have a ton of c_small. the new field for this is now Device:c_small. Is there a right way to do this or do I just need to do something hackish with sed on the schematic files?
In eeschema look under Edit->Edit symbol library links. (As this is a nightly build the name of that tool might be slightly different in your version.)