openvpn-build icon indicating copy to clipboard operation
openvpn-build copied to clipboard

Building 2.6_git for Windows with NSIS fails for openvpn.8.html

Open TinCanTech opened this issue 4 years ago • 4 comments

I presume this is related to the new manual parts.

Log:

Packing images
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/libopenvpnmsica.dll
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/libcrypto-1_1-x64.dll
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/libssl-1_1-x64.dll
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/openvpn.exe
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/lz4c.exe
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/unlz4.exe
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/lz4.exe
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/openssl.exe
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/openvpn-gui.exe
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/liblzo2-2.dll
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/tapctl.exe
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/openvpnserv.exe
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/lz4cat.exe
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/bin/libpkcs11-helper-1.dll
Signing /home/tct/openvpn/build-system/ovpn-build-new/windows-nsis/tmp/image-x86_64/openvpn/lib/engines-1_1/padlock.dll
find: ‘tmp/installer/openvpn/share/doc/*’: No such file or directory
unix2dos: converting file tmp/installer/easy-rsa/2.0/openssl-0.9.6.cnf to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/2.0/openssl-0.9.8.cnf to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/2.0/openssl-1.0.0.cnf to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/README.txt to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/build-ca-pass.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/build-ca.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/build-dh.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/build-key-pass.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/build-key-pkcs12.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/build-key-server-pass.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/build-key-server.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/build-key.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/clean-all.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/index.txt.start to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/init-config.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/revoke-full.bat to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/serial.start to DOS format...
unix2dos: converting file tmp/installer/easy-rsa/Windows/vars.bat.sample to DOS format...
Command line defined: "ARCH="
Command line defined: "PACKAGE_NAME=OpenVPN"
Command line defined: "VERSION_STRING=2.6_git-I601-Win10"
Command line defined: "SPECIAL_BUILD="
Command line defined: "OPENVPN_ROOT=tmp\installer\openvpn"
Command line defined: "OPENVPN_ROOT_I686=tmp\installer\i686"
Command line defined: "OPENVPN_ROOT_X86_64=tmp\installer\x86_64"
Command line defined: "TAP_WINDOWS_INSTALLER=tmp\tap-windows-9.24.2-I601-Win10.exe"
Command line defined: "USE_TAP_WINDOWS"
Command line defined: "WINTUN_INSTALLER_X86_64=tmp\wintun-amd64.msi"
Command line defined: "WINTUN_INSTALLER_I686=tmp\wintun-x86.msi"
Command line defined: "OPENVPNSERV2_EXECUTABLE=tmp\openvpnserv2-1.3.0.0.exe"
Command line defined: "EASYRSA_ROOT=tmp\installer\easy-rsa"
Command line defined: "USE_EASYRSA"
Command line defined: "USE_OPENVPN_GUI"
Command line defined: "OUTPUT=./openvpn-install-2.6_git-I601-Win10.exe"
Processing config: /etc/nsisconf.nsh
Processing script file: "openvpn.nsi" (UTF8)
File: "tmp\installer\i686\share\doc\openvpn\openvpn.8.html" -> no files found.
Usage: File [/nonfatal] [/a] ([/r] [/x filespec [...]] filespec [...] |
   /oname=outfile one_file_only)
Error in script "openvpn.nsi" on line 365 -- aborting creation process
FATAL: makensis
FATAL: pack installer >&2

I commented out three references to openvpn.8.html in openvpn.nsi and successfully built the complete installer.

TinCanTech avatar May 27 '21 17:05 TinCanTech

Hi,

On Thu, May 27, 2021 at 10:02:10AM -0700, TinCanTech wrote:

I presume this is related to the new manual parts.

You need to have "rst2man" installed. On Gentoo this is part of the "docutils" package.

@samuli: can you please include that in your "how to set up a NSIS building machine" documentation?

I commented out three references to openvpn.8.html in openvpn.nsi and successfully built the complete installer.

No, you built an incomplete installer :-)

gert

"If was one thing all people took for granted, was conviction that if you feed honest figures into a computer, honest figures come out. Never doubted it myself till I met a computer with a sense of humor." Robert A. Heinlein, The Moon is a Harsh Mistress

Gert Doering - Munich, Germany @.***

cron2 avatar May 27 '21 17:05 cron2

You need to have "rst2man" installed. On Gentoo this is part of the "docutils" package.

Indeed, I did not have docutils-common as it is called by ubuntu

Would it be better for this script to check for prerequisites before starting ? Otherwise, it is a fair time to wait for a failure. (20mins for --build-depcache and 5mins more for --use-depcache).

In this use case, I did not have quite a few of the requirements installed, so it took me ages to complete. Even after reading the requirements here: https://community.openvpn.net/openvpn/wiki/SettingUpGenericBuildsystem

I can edit that page.

No, you built an incomplete installer :-)

Story of my life ;-)

TinCanTech avatar May 27 '21 19:05 TinCanTech

I leave this open so someone who feels like hacking on openvpn-build can find it.

TO DO: check prerequisites early, so it doesn't fail after wasting 5..20 minutes of build time.

cron2 avatar Jun 15 '21 08:06 cron2

This feature is a side-effect of how openvpn-build was originally designed: the packaging phase was tightly integrated with the build phase. It is possible to run the packaging phase separate - I believe our Trac wiki has some of my notes about it - but it is clumsy. Basically you need to figure out all the variables that get passed down from the build to the NSIS command-line. Checking for file presence in advance would be fairly easy, though, at least in the actual build scripts.

mattock avatar Jun 17 '21 03:06 mattock

We have decided to remove the nsis/mingw buildsystem since it is not maintained anymore. Only the msi/msvc buildsystem will remain, unless someone steps up to maintain the other parts. This issue will be closed when the removal actually happens.

flichtenheld avatar Dec 14 '22 13:12 flichtenheld

NSIS installer is not supported anymore. Closing issues.

flichtenheld avatar Jan 20 '23 12:01 flichtenheld