nigelhorne / ged2site

Create a family tree website from a Gedcom file
https://genealogy.nigelhorne.com
GNU General Public License v2.0
39 stars 4 forks source link

Can't link('static-site/img/M13.jpg', 'dynamic-site/img/M13.jpg') #31

Closed cablespaghetti closed 7 years ago

cablespaghetti commented 7 years ago

This looks like a great tool you've developed here. However I'm having a bit of trouble getting it to run on my mum's gedcom file from Family Tree Maker. When running ./ged2site -cFd constantine181214_2017-02-05.ged it gets to about 80/3500 and crashes out with: Can't link('static-site/img/M13.jpg', 'dynamic-site/img/M13.jpg'): No such file or directory at ./ged2site line 2887

Unfortunately I have very little knowledge of Perl or the GEDCOM format, so I have literally know idea where to start tracing the problem. I'm hoping you can help me!

cablespaghetti commented 7 years ago

Ah. Got it! I have a bit in my GEDCOM:

0 @M13@ OBJE
1 FILE C:\Users\Deborah\Documents\Family Tree Maker\constantine181214(1) Media\Francis  Eva 1957jpg.jpg
2 TITL Francis & Eva (1957).jpg

That file doesn't exist on my system. Fixing this gets rid of the error (until it gets to the next missing image). I'll see if I can improve the error message somehow...time to learn Perl I suppose!

nigelhorne commented 7 years ago

Thanks for your bug report and for using ged2site. I'm willing to admit this is not an easy piece of software to use and also that Ancestry (and by extension Family Tree Maker) doesn't make it any easier either.

I think that the problem may well be that Windows may well not support file linking. Let me change something and see if that helps. I'll post back once I have something.

cablespaghetti commented 7 years ago

I'm running linux but the file is from a windows PC, so I need to change all the paths. I'm making a pull request to output a helpful error in this case. Thanks for the quick reply!

nigelhorne commented 7 years ago

Ahah, that makes sense. In that case you'll need to copy all of the media files across and either put them in the same path on your Linux machine (rather tiresome) or do a search and replace in the Gedcom file. Luckily that file should be a text file so you can change the locations with vi or your favourite text editor.