11-18-2016, 02:04 PM | #16 | |
Grand Sorcerer
Posts: 27,724
Karma: 197390418
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Quote:
Color me baffled as to why it would be different on a different machine (with the same version of Sigil). We've taken great pains to ensure that Sigil's bundled Python (please check to make sure the problematic Sigil installation is set to use the Bundled Python, by the way) remains isolated and unaffected by any system system versions of Python. The reason I was so specific about how you were launching the plugin was because the F7 keyboard shortcut used to be assigned to Sigil's verification (Flightcrew) routines. When Flightcrew was removed as integral part of Sigil, the F7 became assigned to the "Sanity (later called Well-formed Check." My fear was that you may have been launching the Well-formed check with F7 thinking it was still Flightcrew (which would explain why epub spec-compliant issues weren't being flagged). But that doesn't seem to be the case. |
|
11-19-2016, 02:14 AM | #17 | |
Bibliophagist
Posts: 38,166
Karma: 152037714
Join Date: Jul 2010
Location: Vancouver
Device: Kobo Sage, Libra Colour, Lenovo M8 FHD, Paperwhite 4, Tolino epos
|
Quote:
Admittedly if I change the version to 3.0 external to Sigil, I get even more error messages from EpubCheck while FlightCrew gives it's expected Code:
Status: failed Error: FlightCrew only validates epub2 ebooks Last edited by DNSB; 11-19-2016 at 02:16 AM. |
|
Advert | |
|
11-19-2016, 03:44 AM | #18 | ||
Grand Sorcerer
Posts: 5,626
Karma: 23190435
Join Date: Dec 2010
Device: Kindle PW2
|
@JustinThought: To exclude problems with the external binary, change the following following two lines in the FlightCrew plugin.py file:
From: Code:
res_out, res_err = process.communicate() retcode = process.returncode Code:
res_out, res_err = process.communicate()
retcode = process.returncode
print('res_out: ' + str(res_out), 'res_err: ' + str(res_err), 'retcode: ' + str(retcode))
return -1
Make sure that there are exactly 4 spaces before each of the two new lines. This will cause the plugin to fail, however, clicking Details will display the raw information returned from the epubcheck binary. If the plugin works, the output should look like this for your borkified file: Spoiler:
Implement these changes on the machine where FlightCrew doesn't work and post your results. Quote:
Quote:
|
||
11-19-2016, 02:15 PM | #19 | ||
Bibliophagist
Posts: 38,166
Karma: 152037714
Join Date: Jul 2010
Location: Vancouver
Device: Kobo Sage, Libra Colour, Lenovo M8 FHD, Paperwhite 4, Tolino epos
|
Quote:
Quote:
|
||
11-23-2016, 02:03 AM | #20 | |
Groupie
Posts: 171
Karma: 3517858
Join Date: May 2016
Location: Monterrey, Mexico
Device: Samsung Tab-3 7"
|
Quote:
So I implemented the changes you suggested, ran FlightCrew against my sample file, as well as a different file which, as far as I know, has no problems, on the problematic machine, and here's what came back on both files: Status: failed Running FlightCrew ... please wait res_out: b'' res_err: b'' retcode: 3221225781 I hope that means something to you. In the meantime, while I was ignoring you guys' helpful advice, I had taken matters into my own hands, just as an experiment. What i did was to un-install Sigil and the associated Microsoft C++ runtime; then I went in and changed the name of the Sigil preferences folder (I didn't want to lose my saved searches or dictionary); deleted every other reference to Sigil that I could possibly find on my machine, and then re-installed the entire thing. Pulled up a valid Epub that I knew had some unused graphics in it, ran Flight Crew--and it came back immediately with "No Problems Found." I was laughing hysterically because it felt so good when I quit pounding my head on the keyboard. (Note to self: buy a new keyboard. Gonna need that "R" key someday.) Really, this isn't that great of an issue. The only problems that FlightCrew ever found that EpubCheck didn't was the unused media files. I can easily just use the function Tools/Delete Unused Media Files instead. And yes, I am aware that putting MP3 and MP4 files into an Epub2 file invalidates that file. Those files are my quick'n'dirty files that I use in my classes, and won't ever be published. Limited use, and only by myself. As I've said before, but can't say enough, I really do appreciate all the skull-sweat you are putting into this issue. |
|
Advert | |
|
11-23-2016, 09:20 AM | #21 | |
Grand Sorcerer
Posts: 5,626
Karma: 23190435
Join Date: Dec 2010
Device: Kindle PW2
|
Quote:
Try to temporarily disable any antivirus/malware apps with real-time scanning features before running FlightCrew. If FlightCrew works, you might have accidentally blacklisted the FlightCrew binary (flightcrew-plugin.exe). Hopefully, KevinH, who wrote the FlightCrew plugin will know more about this return code. |
|
11-23-2016, 11:47 AM | #22 | |
Groupie
Posts: 171
Karma: 3517858
Join Date: May 2016
Location: Monterrey, Mexico
Device: Samsung Tab-3 7"
|
Quote:
That machine has no internet privileges, so it also has no antivirus installed. You know, we could just be dealing with a factor of age. I built that machine about six or seven years ago, so it's getting a little long in the tooth. I don't remember the details of the CPU inside, but the motherboard is ASUS. Whereas "this" machine (my laptop) is an underpowered Lenovo, but it's fairly new. There could have been some arcane changes in the CPUs that just makes running FlightCrew impossible. But I'll keep on messing with it, and if I ever discover the solution, I promise that I'll let you know what it is. --add on: while I was contemplating this response, I decided to check the desktop to be sure the two machines were running the same version of Windows; indeed, both have Win 7 Ultimate, now with SP-1. So maybe there was a problem with memory? Nope. The desktop has 4 gb, this machine only has two. But I'll keep going through this mental checklist. There's something on that machine that sets the "FlightCrew? We don' need no steenkin' FlightCrew!" flag to TRUE. |
|
11-23-2016, 01:46 PM | #23 |
Sigil Developer
Posts: 7,881
Karma: 5449552
Join Date: Nov 2009
Device: many
|
Wow That is a new return code to me! I simply can not figure out how flightcrew can come back with no problems if the flightcrew binary will not run for some reason. Perhaps, the issue is that the C++ runtime needed for FlightCrew's binary to work properly is either not installed or has been replaced by a newer C++ runtime.
Perhaps recompiling the Flightcrew plugin with newer tools on Windows might be needed. Since I am not a Windows person, I am really grasping at straws here. I will try to look closer at that code tonight and see if I can modify the flightcrew plugin to dump more diagnostic information on failure that might help us to track down what is going on. KevinH Last edited by KevinH; 11-23-2016 at 06:02 PM. |
11-23-2016, 03:03 PM | #24 | |
Groupie
Posts: 171
Karma: 3517858
Join Date: May 2016
Location: Monterrey, Mexico
Device: Samsung Tab-3 7"
|
Quote:
If you have any suggestions for a replacement or alternative, I'd be willing to even go through the totally-clean-install again if that would clear up the mystery. edit: So I went machine to machine to compare my C++ libraries, and here's what I found: laptop (FlightCrew works): Microsoft Visual C++ 2015 Redistributable (x64) 14.0.24210 desktop (FlightCrew no workee: Microsoft Visual C++ 2015 Redistributable (x64) 14.0.23026 Hmmm. And Hmmm again. There's a reason everyone loves Microsoft so much. If I had enough nerve, I would convert to a flavor of Linux...but I'm not quite that brave--yet. Last edited by JustinThought; 11-23-2016 at 03:33 PM. |
|
11-23-2016, 04:48 PM | #25 |
null operator (he/him)
Posts: 20,787
Karma: 27405072
Join Date: Mar 2012
Location: Sydney Australia
Device: none
|
@JustinThought - my 14.0.24210 was installed on 2016-10-31, the same day I installed Sigil 0.9.7, nothing else was installed on that date - so it can be assumed its install was initiated by the Sigil install.
My memory is that the Sigil install initiates a download and install of the C++ run time it needs. Maybe it couldn't do that because your laptop has no internet, hence you're stuck on the old version of the C++ runtime. A search for 'c++ runtime 14.0.24210' leaves me with the impression that 14.0.24210 was only ever distributed within the VS package or via msdn subscriptions. As you've discovered the Download Visual C++ Redistributable for Visual Studio 2015 from Official Microsoft Download Center is still coughing up 14.0.23026. So the question is - where does one get the version of the C++ runtime Sigil needs if there is no internet connection on the machine on which Sigil is being installed? BR Added: irrelevant, but... a couple of weeks ago the Secunia PSI tool I have installed notified me out of the blue that nine VS C++ run time libraries had been uninstalled, yet I hadn't knowingly installed, reinstalled or uninstalled anything for a week or more. I had noticed there seemed to be an ever increasing number of of them. It's down to a more reasonable number now. I have no idea what triggered their removal, nothing has stopped working. This is on Win 10 1511, Windows Update is set to Notify, and Upgrades are deferred. Bit spooky. Last edited by BetterRed; 11-23-2016 at 05:26 PM. |
11-23-2016, 05:12 PM | #26 |
Grand Sorcerer
Posts: 27,724
Karma: 197390418
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
The runtime issue is very likely the problem.
The plugin needs the VC++ 2013 runtime to run. Which used to be installed with Sigil by default (if it wasn't already) in older versions of Sigil. Sigil v0.9.7 only checks for (and installs) the VC++ 2015 runtime. So if the 2013 runtime isn't installed, the current Flightcrew plugin is not going to work. For now, download and install the VC++ 2013 runtime from Microsoft to restore Flightcrew's functionality. We'll have to decide how best to proceeed with the Flightcrew plugin distribution on Windows. Last edited by DiapDealer; 11-23-2016 at 05:16 PM. |
11-23-2016, 06:10 PM | #27 |
Sigil Developer
Posts: 7,881
Karma: 5449552
Join Date: Nov 2009
Device: many
|
You can have multiple VS C++ runtime libraries installed on the same machine with no problems, right? Otherwise all older C++ apps would just fail on a clean install. So as DiapDealer suggested, please try installing the 2013 C++ runtime but do not delete the newer 2015 one.
Please let us know if that fixes the issue. Based on what BetterRed said, pehaps the newest 2015 runtime library is better at backwards compatibility thereby allowing many older C++ runtime libraries to now be deleted. That is just a wag, but it might help explain things if true. |
11-23-2016, 06:58 PM | #28 | |
Groupie
Posts: 171
Karma: 3517858
Join Date: May 2016
Location: Monterrey, Mexico
Device: Samsung Tab-3 7"
|
Quote:
to everyone who devoted so much time, thought, and effort to this issue! |
|
11-23-2016, 09:02 PM | #29 | |
Grand Sorcerer
Posts: 27,724
Karma: 197390418
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Quote:
I need to see if I can build the Windows plugin Flightcrew executable with MingW or something, so there's no runtime dependency. The problem is that the plugin's vc++ dependency and Sigil's are out of sync right now. It's not usually going to be a problem since most people that already have Sigil installed, have vc++ 2013 (from previous versions of Sigil at the very least). But as this thread proves, there's only going to be more and more machines that might not have the runtime installed that Flightcrew currently needs. I can easily update the Flightcrew plugin to use the same vc++ runtime as Sigil 0.9.7, but then the plugin wouldn't work on computers that had older versions of Sigil installed (unless they'd manually installed the vc++ 2015 runtime themselves). |
|
02-09-2019, 02:00 AM | #30 |
Junior Member
Posts: 9
Karma: 10
Join Date: Feb 2019
Device: MacBook and iPad
|
Gaaaaaaa####! The comments above seem straight forward, but there's a catch. I upgraded (from 0.8.7) to Sigil 0.9.8 from GitHub and the notes say that now the epub2 validator FlightCrew is a plugin and the latest version (0.9.1) should also be downloaded and installed.
I'm on MacOS 10.13.6 so on GitHub I chose the download FlightCrew_v0.9.1osx.zip The problem is that the plugin file in the osx folder is a Unix executable file, not a zip file, so of course it's grayed out when I try to add the plugin. Will someone please tell me how to get the horse hooked up to the buggy. Don't mean to seem so dense, but I'm a nearly 80yo author that's trying to complete a book. Thank you kind souls in advance :-) |
Tags |
flightcrew, install, plugin, setup, sigil |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[Plugin] PunctuationSmarten Sigil plugin | DiapDealer | Plugins | 138 | 07-11-2023 11:22 AM |
[Plugin] ePub3-itizer - epub3 output plugin for Sigil | KevinH | Plugins | 435 | 01-19-2023 09:46 PM |
[Plugin] KindleImport Sigil plugin | DiapDealer | Plugins | 187 | 07-04-2022 10:11 AM |
FightCrew | ADelm | Sigil | 2 | 04-07-2016 05:02 AM |