nsis packaging fails because user-guide.chm is missing

asked 2019-08-02 22:33:12 +0000

CurtisC gravatar image

updated 2019-08-03 08:03:54 +0000

Jaap gravatar image

Following the win32/64 step-by-step guide, I am able to compile successfully. but I am unable to package the program into an installer.

The build commands complete with no errors, but I can't find the user-guide.chm file in the build tree, and when I try to package, nsis fails because it can't see the file. I've tried forcing a build of the user-guide_chm project, and it executes what looks like docbook compile commands, and says it completes, but there is no .chm file that I can find.

I already verified that I correctly installed asciidoctorj, xsltproc, and docbook-bundle

I re-ran the choco install -y asciidoctorj xsltproc docbook-bundle and it said the bundles were already up-to-date.

this first command runs without error:

msbuild /m /p:Configuration=RelWithDebInfo nsis_package_prep.vcxproj

on second command nsis fails saying the user-guide.chm file is missing

msbuild /m /p:Configuration=RelWithDebInfo nsis_package.vcxproj

         Section: "Documentation" ->(SecDocumentation)
         SetOutPath: "$INSTDIR"
         File: "C:\Curtis\wireshark_dev\wsbuild64\docbook\user-guide.chm" -> no files found.
         Usage: File [/nonfatal] [/a] ([/r] [/x filespec [...]] filespec [...] |
            /oname=outfile one_file_only)
         Error in script "wireshark.nsi" on line 1167 -- aborting creation process
     1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targe
       ts(209,5): error MSB6006: "cmd.exe" exited with code 1. [C:\Curtis\wireshark_dev\wsbuild64\nsis_package.vcxproj]
     1>Done Building Project "C:\Curtis\wireshark_dev\wsbuild64\nsis_package.vcxproj" (default targets) -- FAILED.


  "C:\Curtis\wireshark_dev\wsbuild64\nsis_package.vcxproj" (default target) (1) ->
   (CustomBuild target) ->
     C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.tar
       gets(209,5): error MSB6006: "cmd.exe" exited with code 1. [C:\Curtis\wireshark_dev\wsbuild64\nsis_package.vcxpro

  0 Warning(s)
 1 Error(s)

Time Elapsed 00:00:02.24
edit retag flag offensive close merge delete


Please execute the following build command and then post the contents of docbuild.txt to a public share, and then post a link to the file back here:

msbuild /p:Configuration=RelWithDebInfo .\docbook\user_guide_chm.vcxproj 2>&1 >docbuild.txt
grahamb gravatar imagegrahamb ( 2019-08-05 21:10:11 +0000 )edit

I did some work on my own, looking at the output from the compiler and noticed that user-guide generation was being suppressed because something in the environment was missing. So I studied the logs from the generation of the build folder and found that it said the HTMLHelp tool was missing. There were no instructions for installing HTMLHelp in the windows setup instruction page, but I found a note about it in the tools section of the setup guide. I downloaded the HTMLHelp workbench installer, and ran it. The workbench installer gave me a warning that it was already installed, then said install complete.

Just in case, I tried regenerating the builds and compiling. It all works now.

Don’t know why that HTMLHelp component wasn’t seen when the installer said it was already installed, but the repeated install seems to have fixed whatever pointer had gotten corrupted.

It ...(more)

CurtisC gravatar imageCurtisC ( 2019-08-05 21:51:20 +0000 )edit