Unable to build MiKTeX

classic Classic list List threaded Threaded
20 messages Options
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Unable to build MiKTeX

A
Dear MiKTeX Community,

I have tried everything that I could think of to build MiKTeX from source
on Windows, and I simply cannot get the build to work.  There is always an
error, often a long way into the build process.  I am using 64-bit Windows
7.  I have attempted to build both the 32-bit and the 64-bit versions of
MiKTeX with no success.  Depending on what I do and what version of each
dependency is installed, sometimes "cmake" fails, sometimes there are
linker errors with some of the components, and sometimes executables get
produced that don't work due to encountering faults/exceptions.

Can someone please describe everything that needs to be done step-by-step
to make the build work, including what version of Visual Studio you used,
what exact version of each dependency you installed, the hyperlink/URL to
get each dependency, and the precise commands that you ran in Windows
Command Prompt to do the build?

Unfortunately, the existing build documentation on the MiKTeX website
appears to be insufficient.  It does not specify things like the versions
of the dependencies that are needed, and I fear that having the wrong
versions might be causing the build to fail.

I would really appreciate detailed, reproducible instructions on what I
need to do from the beginning to build this project successfully.

Thank you,
A
------------------------------------------------------------------------------
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

A
Bump.  Wondering if anyone on this list can please help with this and has
ever gotten the Windows build to work?  Otherwise, are there any other
MiKTeX "developer" mailing lists for which this question would be
suitable?  Should I retry everything from scratch (i.e. extract and set up
the MiKTeX source and dependencies again according to my best guess and
retry the build) and post what I did and the precise error that I get?
Thanks in advance.

On Tue, Nov 29, 2016 at 9:12 PM, A <[hidden email]> wrote:

> Dear MiKTeX Community,
>
> I have tried everything that I could think of to build MiKTeX from source
> on Windows, and I simply cannot get the build to work.  There is always an
> error, often a long way into the build process.  I am using 64-bit Windows
> 7.  I have attempted to build both the 32-bit and the 64-bit versions of
> MiKTeX with no success.  Depending on what I do and what version of each
> dependency is installed, sometimes "cmake" fails, sometimes there are
> linker errors with some of the components, and sometimes executables get
> produced that don't work due to encountering faults/exceptions.
>
> Can someone please describe everything that needs to be done step-by-step
> to make the build work, including what version of Visual Studio you used,
> what exact version of each dependency you installed, the hyperlink/URL to
> get each dependency, and the precise commands that you ran in Windows
> Command Prompt to do the build?
>
> Unfortunately, the existing build documentation on the MiKTeX website
> appears to be insufficient.  It does not specify things like the versions
> of the dependencies that are needed, and I fear that having the wrong
> versions might be causing the build to fail.
>
> I would really appreciate detailed, reproducible instructions on what I
> need to do from the beginning to build this project successfully.
>
> Thank you,
> A
>
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

David Allsopp
A wrote:
> Bump.  Wondering if anyone on this list can please help with this and has
> ever gotten the Windows build to work?

Self-evidently, one person on this mailing list constantly has Windows building working...

> Otherwise, are there any other
> MiKTeX "developer" mailing lists for which this question would be
> suitable?  Should I retry everything from scratch (i.e. extract and set up
> the MiKTeX source and dependencies again according to my best guess and
> retry the build) and post what I did and the precise error that I get?

Indeed - the total lack of any logs or detail of error messages is certainly why I ignored your last email!

How are you doing relative to the instructions in https://github.com/MiKTeX/miktex/blob/master/README.win ?


David


------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

A
Sure thing.  I retried the build after installing most items from scratch
(the exception being Visual C++ and Java):

- Microsoft Visual C++ is installed at: "C:\Program Files (x86)\Microsoft
Visual Studio 14.0".  (I didn't bother to re-install this one from scratch,
but if this is necessary for any reason please let me know.)

- The Java JDK version 1.8.0_25 is installed at: "C:\Program
Files\java\jdk1.8.0_25".  (I didn't bother to re-install this one from
scratch, but if this is necessary for any reason please let me know.)

- I downloaded and installed Python version 2.7.12 which is currently the
latest minor version of Python 2.7.
  - Download page: "https://www.python.org/downloads/release/python-2712/"
  - Downloaded "Windows x86-64 MSI installer" -- direct link: "
https://www.python.org/ftp/python/2.7.12/python-2.7.12.amd64.msi".
  - Installed Python to "C:\Python27\".

- I downloaded and installed 64-bit Cygwin from "
https://cygwin.com/install.html" -- direct link: "
https://cygwin.com/setup-x86_64.exe".
  - Installed Cygwin to "C:\cygwin64".
  - Dependency packages selected and installed automatically by the
installer: bzip2 version 1.0.6-2, ca-certificates version 2.10-1, groff
version 1.22.3-1, less version 481-1, libargp version 20110921-3, libattr1
version 2.4.46-1, libblkid1 version 2.25.2-2, libbz2_1 version 1.0.6-2,
libffi6 version 3.2.1-2, libgcc1 version 5.4.0-1, libgdbm4 version 1.12-1,
libgmp10 version 6.1.1-1, libiconv version 1.14-3, libiconv2 version
1.14-3, libintl8 version 0.19.8.1-2, liblzma5 version 5.2.2-1, libmpfr4
version 3.1.5-1, libncursesw10 version 6.0-8.20160917, libp11-kit0 version
0.22.1-1, libpcre1 version 8.39-1, libpipeline1 version 1.4.0-1,
libpopt-common version 1.16-2, libpopt0 version 1.16-2, libsigsegv2 version
2.10-2, libsmartcols1 version 2.25.2-2, libssp0 version 5.4.0-1, libstdc++6
version 5.4.0-1, libtasn1_6 version 4.9-1, libuuid1 version 2.25.2-2,
p11-kit version 0.22.1-1, p11-kit-trust version 0.22.1-1, xz version
5.2.2-1, zlib0 version 1.2.8-3
  - I found that MiKTeX's CMake process needs these additional Cygwin
packages, and installed them afterward using the Cygwin installer: dos2unix
version 7.3.4-1, bison 3.0.4-1, m4 version 1.4.17-2 (required by bison),
flex version 2.6.1-1

- I downloaded and installed CMake version 3.7.1 which is currently the
latest version:
  - Download page: "https://cmake.org/download/"
  - Downloaded and installed the Windows win64-x64 Installer -- direct
link: "https://cmake.org/files/v3.7/cmake-3.7.1-win64-x64.msi".
  - Installed to "C:\Program Files\CMake".

- Microsoft HTML Help Workshop:
  - Download page: "
https://msdn.microsoft.com/en-us/library/windows/desktop/ms669985%28v=vs.85%29.aspx
"
  - Direct link: "http://go.microsoft.com/fwlink/p/?linkid=14188"
  - Installation directory: "C:\Program Files (x86)\HTML Help Workshop"
  - During the installation, a dialog came up saying that there is already
a newer version of Microsoft HTML Help Workshop installed.

- Apache FOP (Formatting Objects Processor):
  - Download pages: "https://xmlgraphics.apache.org/fop/download.html" --> "
http://www.apache.org/dyn/closer.cgi/xmlgraphics/fop" --> Used the US
download index link -- "http://www-us.apache.org/dist/xmlgraphics/fop" -->
"binaries"
  - Downloaded the FOP 2.1 ZIP file -- direct link: "
http://www-us.apache.org/dist/xmlgraphics/fop/binaries/fop-2.1-bin.zip".
  - Extracted to "C:\miktex\fop-2.1" using 7-Zip.

- Libxslt 64-bit version 1.1.28:
  - Download pages: "http://xmlsoft.org/libxslt/downloads.html" --> Used
the "he provides binaries" at "https://www.zlatkovic.com/libxml.en.html"
--> Used the "download area" link at "https://www.zlatkovic.com/pub/libxml/"
--> "64-bit"
  - Downloaded "libxslt-1.1.28-win32-x86_64.7z" -- direct link: "
ftp://ftp.zlatkovic.com/libxml/64bit/libxslt-1.1.28-win32-x86_64.7z".
  - Extracted to "C:\miktex\libxslt-1.1.28-win32-x86_64" using 7-Zip.

- ImageMagick version 7.0.3-9:
  - Note: Not all of the binary release packages contain "mogrify.exe"
which causes MiKTeX's CMake build to fail because it depends on that.
Apparently the Windows 64-bit Portable binary package does contain
"mogrify.exe", so I used this.
  - Download page: "https://www.imagemagick.org/script/binary-releases.php"
  - Downloaded "ImageMagick-7.0.3-9-portable-Q16-x64.zip" -- direct link: "
https://www.imagemagick.org/download/binaries/ImageMagick-7.0.3-9-portable-Q16-x64.zip
".
  - Extracted to: "C:\miktex\ImageMagick-7.0.3-9-portable-Q16-x64".

- Pandoc version 1.19 which is currently the latest release:
  - Download pages: "http://pandoc.org/installing.html" --> Used the
"download page" link which goes to "
https://github.com/jgm/pandoc/releases/latest", which currently redirects
to "https://github.com/jgm/pandoc/releases/tag/1.19".
  - Downloaded "pandoc-1.19-windows.msi" -- direct link: "
https://github.com/jgm/pandoc/releases/download/1.19/pandoc-1.19-windows.msi
".
  - Installed for all users to "C:\Program Files (x86)\Pandoc\".

- Qt:
  - The readme says to obtain Qt version 5.5 but doesn't specify the minor
version.  The latest minor version available under 5.5 is 5.5.1.
  - Download pages: "https://www.qt.io/download/" --> "Open Source" ("
https://www.qt.io/download-open-source/") --> "View All Downloads" --> "in
the archive" ("http://download.qt.io/archive/qt/") --> "5.5" --> "5.5.1" (
http://download.qt.io/archive/qt/5.5/5.5.1/)
  - Downloaded "qt-opensource-windows-x86-msvc2013_64-5.5.1.exe" -- direct
link: "
http://download.qt.io/archive/qt/5.5/5.5.1/qt-opensource-windows-x86-msvc2013_64-5.5.1.exe
".
  - Installion directory: "C:\Qt\Qt5.5.1"
  - Selected the following components for installation: "msvc2013 64-bit",
"Qt Script", "Tools" (required).

- ICU (International Components for Unicode) version 58.1, which is
currently the latest version with a 64-bit Windows download available:
  - Download page: "
http://site.icu-project.org/download/58#TOC-ICU4C-Download"
  - Downloaded "icu4c-58_1-Win64-MSVC2015.zip" -- direct link: "
http://download.icu-project.org/files/icu4c/58.1/icu4c-58_1-Win64-MSVC2015.zip
".
  - Extracted to: "C:\miktex\icu4c-58_1-Win64-MSVC2015" (contains the
single subfolder "icu").

- I downloaded the MiKTeX Source Code here:
  - https://miktex.org/download -- under "MiKTeX Source Code".  The source
code date at the time of this posting is October 31, 2016.
  - Downloaded "miktex-2.9-2016-10-30.tar.xz" -- direct link (at the
randomly chosen mirror site):
http://mirror.unl.edu/ctan/systems/win32/miktex/source/miktex-2.9-2016-10-30.tar.xz
  - Extracted to "C:\miktex\miktex-2.9-2016-10-30" using 7-Zip.

- I opened a command window (cmd) in Administrator mode and did the
following (commands follow the ">"):
  - Changed directory to the MiKTeX source directory:
    > cd C:\miktex\miktex-2.9-2016-10-30
  - Initialized path:
    > set PATH=C:\Windows\system32
  - Added Visual Studio 2015 directories to the path:
    > "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"
  - Read the updated path:
    - echo %PATH%
      - Output: C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
(x86)\Microsoft SDKs\F#\4.0\Framework\v4.0\;C:\Program Files
(x86)\MSBuild\14.0\bin;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\Tools;C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Program
Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
(x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Team Tools\Performance Tools;C:\Program Files (x86)\Windows
Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\;C:\Windows\system32
  - Added the dependencies to the path:
    > set PATH=%PATH%;C:\Program Files\CMake\bin;C:\Program
Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin64\bin;C:\Program Files
(x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-x86_64\bin
  - Read the updated path:
    > echo %PATH%
      - Output: C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
(x86)\Microsoft SDKs\F#\4.0\Framework\v4.0\;C:\Program Files
(x86)\MSBuild\14.0\bin;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\Tools;C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Program
Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
(x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Team Tools\Performance Tools;C:\Program Files (x86)\Windows
Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\;C:\Windows\system32;C:\Program
Files\CMake\bin;C:\Program
Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin64\bin;C:\Program Files
(x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-x86_64\bin
  - Set the CMake prefix path:
    > set
CMAKE_PREFIX_PATH=C:\Qt\Qt5.5.1\5.5\msvc2013_64\lib\cmake\Qt5;C:\miktex\icu4c-58_1-Win64-MSVC2015\icu\include;C:\miktex\icu4c-58_1-Win64-MSVC2015\icu\lib64
  - Ran the CMake command based on the readme:
    > cmake -G "NMake Makefiles"
  - CMake completed successfully.
  - Ran the NMake command based on the readme:
    > nmake
  - About 21 minutes into the build process, the following error occurred:

  ---- Beginning of tail of nmake output: ----
[ 14%] Linking C shared library ..\..\..\..\binlib\MiKTeX209-uriparser.dll
   Creating library ..\..\..\..\binlib\MiKTeX209-uriparser.lib and object
..\..\..\..\binlib\MiKTeX209-uriparser.exp
[ 14%] Built target MiKTeX209-uriparser
Scanning dependencies of target MiKTeX209-util
[ 14%] Building CXX object
Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-util.dir/__/StringUtil.cpp.obj
StringUtil.cpp
[ 14%] Building CXX object
Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-util.dir/__/Tokenizer.cpp.obj
Tokenizer.cpp
[ 14%] Building CXX object
Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-util.dir/__/win/winStringUtil.cpp.obj
winStringUtil.cpp
[ 14%] Building RC object
Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-util.dir/util.rc.res
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Copyright (C) Microsoft Corporation.  All rights reserved.

C:\miktex\miktex-2.9-2016-10-30\include\miktex/win/version.rc(111) :
warning RC4003: not enough actual parameters for macro 'stringify__'

C:\miktex\miktex-2.9-2016-10-30\include\miktex/win/version.rc(93) : error
RC2127 : version WORDs separated by commas expected

C:\miktex\miktex-2.9-2016-10-30\include\miktex/win/version.rc(93) : error
RC2167 : unrecognized VERSIONINFO field;  BEGIN or comma expected
NMAKE : fatal error U1077: 'C:\PROGRA~2\WI3CF2~1\10\bin\x86\rc.exe' :
return code '0x3'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.

---- End of tail of nmake output. ----

Please let me know if I did anything wrong or how this can be
troubleshooted.  Thanks in advance.

--


On Tue, Dec 6, 2016 at 12:12 PM, David Allsopp <[hidden email]>
wrote:

> A wrote:
> > Bump.  Wondering if anyone on this list can please help with this and has
> > ever gotten the Windows build to work?
>
> Self-evidently, one person on this mailing list constantly has Windows
> building working...
>
> > Otherwise, are there any other
> > MiKTeX "developer" mailing lists for which this question would be
> > suitable?  Should I retry everything from scratch (i.e. extract and set
> up
> > the MiKTeX source and dependencies again according to my best guess and
> > retry the build) and post what I did and the precise error that I get?
>
> Indeed - the total lack of any logs or detail of error messages is
> certainly why I ignored your last email!
>
> How are you doing relative to the instructions in
> https://github.com/MiKTeX/miktex/blob/master/README.win ?
>
>
> David
>
>
> ------------------------------------------------------------
> ------------------
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today.http://sdm.link/xeonphi
> _______________________________________________
> Q: How can I leave the mailing list?
> A: See http://docs.miktex.org/faq/support.html#leavingml
>
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

David Allsopp
A wrote:
> Sure thing.  I retried the build after installing most items from scratch
> (the exception being Visual C++ and Java):

<snip>

> - I downloaded and installed 64-bit Cygwin from "
> https://cygwin.com/install.html" -- direct link: "
> https://cygwin.com/setup-x86_64.exe".
>   - Installed Cygwin to "C:\cygwin64".


<snip>

YMMV, but Cygwin 32-bit is more stable (mainly because it's older) - when used as a build system, there's no practical difference between the 32 and 64 bit versions (because you're not linking anything). That said, I don't think it's related to what's going wrong.

<snip>

>   - Ran the CMake command based on the readme:
>     > cmake -G "NMake Makefiles"
>   - CMake completed successfully.
>   - Ran the NMake command based on the readme:
>     > nmake
>   - About 21 minutes into the build process, the following error occurred:
>
>   ---- Beginning of tail of nmake output: ---- [ 14%] Linking C shared
> library ..\..\..\..\binlib\MiKTeX209-uriparser.dll
>    Creating library ..\..\..\..\binlib\MiKTeX209-uriparser.lib and object
> ..\..\..\..\binlib\MiKTeX209-uriparser.exp
> [ 14%] Built target MiKTeX209-uriparser
> Scanning dependencies of target MiKTeX209-util [ 14%] Building CXX object
> Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-
> util.dir/__/StringUtil.cpp.obj
> StringUtil.cpp
> [ 14%] Building CXX object
> Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-
> util.dir/__/Tokenizer.cpp.obj
> Tokenizer.cpp
> [ 14%] Building CXX object
> Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-
> util.dir/__/win/winStringUtil.cpp.obj
> winStringUtil.cpp
> [ 14%] Building RC object
> Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-util.dir/util.rc.res
> Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
> Copyright (C) Microsoft Corporation.  All rights reserved.
>
> C:\miktex\miktex-2.9-2016-10-30\include\miktex/win/version.rc(111) :
> warning RC4003: not enough actual parameters for macro 'stringify__'
>
> C:\miktex\miktex-2.9-2016-10-30\include\miktex/win/version.rc(93) : error
> RC2127 : version WORDs separated by commas expected
>
> C:\miktex\miktex-2.9-2016-10-30\include\miktex/win/version.rc(93) : error
> RC2167 : unrecognized VERSIONINFO field;  BEGIN or comma expected NMAKE :
> fatal error U1077: 'C:\PROGRA~2\WI3CF2~1\10\bin\x86\rc.exe' :
> return code '0x3'
> Stop.
> NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> Studio 14.0\VC\BIN\nmake.exe"' : return code '0x2'
> Stop.
> NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> Studio 14.0\VC\BIN\nmake.exe"' : return code '0x2'
> Stop.

Something is going wrong with the substitution of variables. After it's aborted, what do the following files contain:

Libraries/MiKTeX/Util/util.rc
Libraries/MiKTeX/Util/util-version.h

(I'm not familiar with how MiKTeX's out-of-tree building works - those files may be in Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-util.dir - alternatively, you may need to search the build tree... they must be somewhere, or the error message would be different!)

I'm spotting one difference between the released sources tarball and the Git commit 9b912e4 (but again, it's in another library, so I don't expect it's anything to do with it) but it might be enlightening to try using a Git clone instead of a sources tarball (git clone https://github.com/MiKTeX/miktex.git C:\miktex\miktex-2.9-master / cd \miktex\miktex-2.9-master / git checkout 9b912e4)


David

------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Fwd: Unable to build MiKTeX

A
Hello David,

I checked the folder "C:\miktex\miktex-2.9-2016-10-30\Libraries\MiKTeX\Util".
There does not appear to be a file named "util.rc"; however, there is a
file named "util.rc.in".  The file "util-version.h" is present.  Also,
there is a file named "util-version.h.cmake".  I am attaching
"Util.rename_to_zip" which is a ZIP file containing "util.rc.in",
"util-version.h", and "util-version.h.cmake".  Please rename the file
extension to ".zip".  (I found that the mailing system doesn't allow
sending a file with a ".zip" extension.  Hopefully this attachment goes
through this time.  In case it doesn't work then I will try sending another
message with the contents of the files inline.)

I made the following updates as per your suggestions:

- I downloaded and installed 32-bit Cygwin:
  - Download page: "https://cygwin.com/install.html"
  - Used the "setup-x86.exe" link -- direct link: "
https://cygwin.com/setup-x86.exe"
  - Selected the following packages for install: dos2unix version 7.3.4-1,
bison 3.0.4-1, m4 version 1.4.17-2, flex version 2.6.1-1
  - The installer automatically selected and installed the following
dependency packages: bzip2 version 1.0.6-2, ca-certificates version 2.10-1,
groff version 1.22.3-1, less version 481-1, libargp version 20110921-3,
libattr1 version 2.4.46-1, libblkid1 version 2.25.2-2, libbz2_1 version
1.0.6-2, libffi6 version 3.2.1-1, libgcc1 version 5.4.0-1, libgdbm4 version
1.12-1, libgmp10 version 6.1.1-1, libiconv version 1.14-3, libiconv2
version 1.14-3, libintl8 version 0.19.8.1-2, liblzma5 version 5.2.2-1,
libmpfr4 version 3.1.5-1, libncursesw10 version 6.0-8.20160917, libp11-kit0
version 0.22.1-1, libpcre1 version 8.39-1, libpipeline1 version 1.4.0-1
libpopt-common version 1.16-2, libpopt0 version 1.16-2, libsigsegv2 version
2.10-2, libsmartcols1 version 2.25.2-2, libssp0 version 5.4.0-1, libstdc++6
version 5.4.0-1, libtasn1_6 version 4.9-1, libuuid1 version 2.25.2-2,
p11-kit version 0.22.1-1, p11-kit-trust version 0.22.1-1, xz version
5.2.2-1, zlib0 version 1.2.8-3
  - Installed to "C:\cygwin".

- I opened an Administrator Command Prompt and changed directory to
"C:\miktex":
  > cd C:\miktex
- I have an installation of Git / TortoiseGit.  I set the path to Git:
  > set PATH=C:\Program Files\Git\bin
- I ran the commands you provided to pull the repository:
  > git clone https://github.com/MiKTeX/miktex.git
C:\miktex\miktex-2.9-master
    - Completed successfully
  > cd \miktex\miktex-2.9-master
  > git checkout 9b912e4
    - Here is the output:
---- Beginning of output of git checkout command: ----
Note: checking out '9b912e4'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at 9b912e4... Fix release state

---- End of output of git checkout command. ----

- I then modified the path as follows (note that I am adding the 32-bit
Cygwin instead of 64-bit this time):
  > set PATH=%PATH%;C:\Windows\system32
  > "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"
  > set PATH=%PATH%;C:\Program Files\CMake\bin;C:\Program
Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
(x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\
ImageMagick-7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\
miktex\libxslt-1.1.28-win32-x86_64\bin
  > echo %PATH%
    - Output: C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
(x86)\Microsoft SDKs\F#\4.0\Framework\v4.0\;C:\Program Files
(x86)\MSBuild\14.0\bin;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\Tools;C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Program
Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
(x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Team Tools\Performance Tools;C:\Program Files (x86)\Windows
Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\;C:\Program
Files\Git\bin;C:\Windows\system32;C:\Program Files\CMake\bin;C:\Program
Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
(x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\
ImageMagick-7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\
miktex\libxslt-1.1.28-win32-x86_64\bin
- I set the CMAKE_PREFIX_PATH as before:
  > set CMAKE_PREFIX_PATH=C:\Qt\Qt5.5.1\5.5\msvc2013_64\lib\cmake\
Qt5;C:\miktex\icu4c-58_1-Win64-MSVC2015\icu\include;C:\
miktex\icu4c-58_1-Win64-MSVC2015\icu\lib64
- I ran CMake as before:
  > cmake -G "NMake Makefiles"
    - Completed successfully
- I ran NMake as before:
  > nmake
  - The build failed after approximately 25 minutes with apparently the
same error as before:
---- Beginning of tail of nmake output: ----
[ 24%] Linking C shared library ..\..\..\..\binlib\MiKTeX209-uriparser.dll
   Creating library ..\..\..\..\binlib\MiKTeX209-uriparser.lib and object
..\..\..\..\binlib\MiKTeX209-uriparser.exp
[ 24%] Built target MiKTeX209-uriparser
Scanning dependencies of target gen-core-sources
[ 24%] Generating miktex.der.h
[ 24%] Built target gen-core-sources
Scanning dependencies of target MiKTeX209-md5
[ 24%] Building C object Libraries/3rd/md5/shared/
CMakeFiles/MiKTeX209-md5.dir/__/source/md5.c.obj
md5.c
[ 24%] Building RC object Libraries/3rd/md5/shared/
CMakeFiles/MiKTeX209-md5.dir/md5.rc.res
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Copyright (C) Microsoft Corporation.  All rights reserved.

[ 24%] Linking C shared library ..\..\..\..\binlib\MiKTeX209-md5.dll
   Creating library ..\..\..\..\binlib\MiKTeX209-md5.lib and object
..\..\..\..\binlib\MiKTeX209-md5.exp
[ 24%] Built target MiKTeX209-md5
Scanning dependencies of target MiKTeX209-util
[ 24%] Building CXX object Libraries/MiKTeX/Util/shared/
CMakeFiles/MiKTeX209-util.dir/__/StringUtil.cpp.obj
StringUtil.cpp
[ 24%] Building CXX object Libraries/MiKTeX/Util/shared/
CMakeFiles/MiKTeX209-util.dir/__/Tokenizer.cpp.obj
Tokenizer.cpp
[ 24%] Building CXX object Libraries/MiKTeX/Util/shared/
CMakeFiles/MiKTeX209-util.dir/__/win/winStringUtil.cpp.obj
winStringUtil.cpp
[ 24%] Building RC object Libraries/MiKTeX/Util/shared/
CMakeFiles/MiKTeX209-util.dir/util.rc.res
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Copyright (C) Microsoft Corporation.  All rights reserved.

C:\miktex\miktex-2.9-master\include\miktex/win/version.rc(111) : warning
RC4003: not enough actual parameters for macro 'stringify__'

C:\miktex\miktex-2.9-master\include\miktex/win/version.rc(93) : error
RC2127 : version WORDs separated by commas expected

C:\miktex\miktex-2.9-master\include\miktex/win/version.rc(93) : error
RC2167 : unrecognized VERSIONINFO field;  BEGIN or comma expected
NMAKE : fatal error U1077: 'C:\PROGRA~2\WI3CF2~1\10\bin\x86\rc.exe' :
return code '0x3'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.

---- End of tail of nmake output. ----

Thanks for further advice on how to solve this.





On Thu, Dec 8, 2016 at 1:20 AM, David Allsopp <[hidden email]>
wrote:

> A wrote:
> > Sure thing.  I retried the build after installing most items from scratch
> > (the exception being Visual C++ and Java):
>
> <snip>
>
> > - I downloaded and installed 64-bit Cygwin from "
> > https://cygwin.com/install.html" -- direct link: "
> > https://cygwin.com/setup-x86_64.exe".
> >   - Installed Cygwin to "C:\cygwin64".
>
>
> <snip>
>
> YMMV, but Cygwin 32-bit is more stable (mainly because it's older) - when
> used as a build system, there's no practical difference between the 32 and
> 64 bit versions (because you're not linking anything). That said, I don't
> think it's related to what's going wrong.
>
> <snip>
>
> >   - Ran the CMake command based on the readme:
> >     > cmake -G "NMake Makefiles"
> >   - CMake completed successfully.
> >   - Ran the NMake command based on the readme:
> >     > nmake
> >   - About 21 minutes into the build process, the following error
> occurred:
> >
> >   ---- Beginning of tail of nmake output: ---- [ 14%] Linking C shared
> > library ..\..\..\..\binlib\MiKTeX209-uriparser.dll
> >    Creating library ..\..\..\..\binlib\MiKTeX209-uriparser.lib and
> object
> > ..\..\..\..\binlib\MiKTeX209-uriparser.exp
> > [ 14%] Built target MiKTeX209-uriparser
> > Scanning dependencies of target MiKTeX209-util [ 14%] Building CXX object
> > Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-
> > util.dir/__/StringUtil.cpp.obj
> > StringUtil.cpp
> > [ 14%] Building CXX object
> > Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-
> > util.dir/__/Tokenizer.cpp.obj
> > Tokenizer.cpp
> > [ 14%] Building CXX object
> > Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-
> > util.dir/__/win/winStringUtil.cpp.obj
> > winStringUtil.cpp
> > [ 14%] Building RC object
> > Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-util.dir/util.rc.res
> > Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
> > Copyright (C) Microsoft Corporation.  All rights reserved.
> >
> > C:\miktex\miktex-2.9-2016-10-30\include\miktex/win/version.rc(111) :
> > warning RC4003: not enough actual parameters for macro 'stringify__'
> >
> > C:\miktex\miktex-2.9-2016-10-30\include\miktex/win/version.rc(93) :
> error
> > RC2127 : version WORDs separated by commas expected
> >
> > C:\miktex\miktex-2.9-2016-10-30\include\miktex/win/version.rc(93) :
> error
> > RC2167 : unrecognized VERSIONINFO field;  BEGIN or comma expected NMAKE :
> > fatal error U1077: 'C:\PROGRA~2\WI3CF2~1\10\bin\x86\rc.exe' :
> > return code '0x3'
> > Stop.
> > NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> > Studio 14.0\VC\BIN\nmake.exe"' : return code '0x2'
> > Stop.
> > NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> > Studio 14.0\VC\BIN\nmake.exe"' : return code '0x2'
> > Stop.
>
> Something is going wrong with the substitution of variables. After it's
> aborted, what do the following files contain:
>
> Libraries/MiKTeX/Util/util.rc
> Libraries/MiKTeX/Util/util-version.h
>
> (I'm not familiar with how MiKTeX's out-of-tree building works - those
> files may be in Libraries/MiKTeX/Util/shared/CMakeFiles/MiKTeX209-util.dir
> - alternatively, you may need to search the build tree... they must be
> somewhere, or the error message would be different!)
>
> I'm spotting one difference between the released sources tarball and the
> Git commit 9b912e4 (but again, it's in another library, so I don't expect
> it's anything to do with it) but it might be enlightening to try using a
> Git clone instead of a sources tarball (git clone
> https://github.com/MiKTeX/miktex.git C:\miktex\miktex-2.9-master / cd
> \miktex\miktex-2.9-master / git checkout 9b912e4)
>
>
> David
>
> ------------------------------------------------------------
> ------------------
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today.http://sdm.link/xeonphi
> _______________________________________________
> Q: How can I leave the mailing list?
> A: See http://docs.miktex.org/faq/support.html#leavingml
>

------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

A
In reply to this post by A
By looking at the web archive of this mailing list, it appears that the
Mailman system does not like attachments at all, so here are the contents
of the three files inline (all in
"C:\miktex\miktex-2.9-2016-10-30\Libraries\MiKTeX\Util"):

---- Beginning of util.rc.in ----
/* util.rc: MiKTeX Util resource file                   -*- C++ -*-

   Copyright (C) 1996-2016 Christian Schenk

   This file is part of the MiKTeX Util Library.

   The MiKTeX Util Library is free software; you can redistribute it
   and/or modify it under the terms of the GNU General Public License
   as published by the Free Software Foundation; either version 2, or
   (at your option) any later version.

   The MiKTeX Util Library is distributed in the hope that it will be
   useful, but WITHOUT ANY WARRANTY; without even the implied warranty
   of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with the MiKTeX Util Library; if not, write to the Free
   Software Foundation, 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA. */

#include "util-version.h"

#define VER_INTERNALNAME_STR "${util_dll_name}"
#define VER_ORIGINALFILENAME_STR "${util_dll_name}.dll"

#define VER_FILEDESCRIPTION_STR "${MIKTEX_COMP_DESCRIPTION}"

#define VER_FILETYPE VFT_DLL

#include <miktex/win/version.rc>

---- End of util.rc.in ----

---- Beginning of util-version.h ----
/* util-version.h: MiKTeX DLL version number            -*- C++ -*-

   Copyright (C) 1996-2016 Christian Schenk

   This file is part of the MiKTeX Util Library.

   The MiKTeX Util Library is free software; you can redistribute it
   and/or modify it under the terms of the GNU General Public License
   as published by the Free Software Foundation; either version 2, or
   (at your option) any later version.

   The MiKTeX Util Library is distributed in the hope that it will be
   useful, but WITHOUT ANY WARRANTY; without even the implied warranty
   of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with the MiKTeX Util Library; if not, write to the Free
   Software Foundation, 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA. */

#define MIKTEX_COMP_J2000_VERSION

#include <miktex/Version>

---- End of util-version.h ----

---- Beginning of util-version.h.cmake ----
/* util-version.h: MiKTeX DLL version number            -*- C++ -*-

   Copyright (C) 1996-2016 Christian Schenk

   This file is part of the MiKTeX Util Library.

   The MiKTeX Util Library is free software; you can redistribute it
   and/or modify it under the terms of the GNU General Public License
   as published by the Free Software Foundation; either version 2, or
   (at your option) any later version.

   The MiKTeX Util Library is distributed in the hope that it will be
   useful, but WITHOUT ANY WARRANTY; without even the implied warranty
   of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with the MiKTeX Util Library; if not, write to the Free
   Software Foundation, 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA. */

#define MIKTEX_COMP_J2000_VERSION ${MIKTEX_COMP_DESCRIPTION}

#include <miktex/Version>

---- End of util-version.h.cmake ----
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

David Allsopp
Are you building in-tree (it looks like you are)? That's not recommended for this project - I believe the correct process is to create an empty directory (e.g. C:\miktex\build) and change there - you then issue cmake -G "NMake Makefiles" C:\miktex\miktex-2.9-master.

The lack of a number in util-version.h is strange, as is the fact that you haven't yet found util.rc itself (.in is a file for pre-processing).


David

> -----Original Message-----
> From: A [mailto:[hidden email]]
> Sent: 09 December 2016 05:54
> To: [hidden email]
> Subject: Re: [MiKTeX] Unable to build MiKTeX
>
> By looking at the web archive of this mailing list, it appears that the
> Mailman system does not like attachments at all, so here are the contents
> of the three files inline (all in
> "C:\miktex\miktex-2.9-2016-10-30\Libraries\MiKTeX\Util"):
>
> ---- Beginning of util.rc.in ----
> /* util.rc: MiKTeX Util resource file                   -*- C++ -*-
>
>    Copyright (C) 1996-2016 Christian Schenk
>
>    This file is part of the MiKTeX Util Library.
>
>    The MiKTeX Util Library is free software; you can redistribute it
>    and/or modify it under the terms of the GNU General Public License
>    as published by the Free Software Foundation; either version 2, or
>    (at your option) any later version.
>
>    The MiKTeX Util Library is distributed in the hope that it will be
>    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
>    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>    GNU General Public License for more details.
>
>    You should have received a copy of the GNU General Public License
>    along with the MiKTeX Util Library; if not, write to the Free
>    Software Foundation, 59 Temple Place - Suite 330, Boston, MA
>    02111-1307, USA. */
>
> #include "util-version.h"
>
> #define VER_INTERNALNAME_STR "${util_dll_name}"
> #define VER_ORIGINALFILENAME_STR "${util_dll_name}.dll"
>
> #define VER_FILEDESCRIPTION_STR "${MIKTEX_COMP_DESCRIPTION}"
>
> #define VER_FILETYPE VFT_DLL
>
> #include <miktex/win/version.rc>
>
> ---- End of util.rc.in ----
>
> ---- Beginning of util-version.h ----
> /* util-version.h: MiKTeX DLL version number            -*- C++ -*-
>
>    Copyright (C) 1996-2016 Christian Schenk
>
>    This file is part of the MiKTeX Util Library.
>
>    The MiKTeX Util Library is free software; you can redistribute it
>    and/or modify it under the terms of the GNU General Public License
>    as published by the Free Software Foundation; either version 2, or
>    (at your option) any later version.
>
>    The MiKTeX Util Library is distributed in the hope that it will be
>    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
>    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>    GNU General Public License for more details.
>
>    You should have received a copy of the GNU General Public License
>    along with the MiKTeX Util Library; if not, write to the Free
>    Software Foundation, 59 Temple Place - Suite 330, Boston, MA
>    02111-1307, USA. */
>
> #define MIKTEX_COMP_J2000_VERSION
>
> #include <miktex/Version>
>
> ---- End of util-version.h ----
>
> ---- Beginning of util-version.h.cmake ----
> /* util-version.h: MiKTeX DLL version number            -*- C++ -*-
>
>    Copyright (C) 1996-2016 Christian Schenk
>
>    This file is part of the MiKTeX Util Library.
>
>    The MiKTeX Util Library is free software; you can redistribute it
>    and/or modify it under the terms of the GNU General Public License
>    as published by the Free Software Foundation; either version 2, or
>    (at your option) any later version.
>
>    The MiKTeX Util Library is distributed in the hope that it will be
>    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
>    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>    GNU General Public License for more details.
>
>    You should have received a copy of the GNU General Public License
>    along with the MiKTeX Util Library; if not, write to the Free
>    Software Foundation, 59 Temple Place - Suite 330, Boston, MA
>    02111-1307, USA. */
>
> #define MIKTEX_COMP_J2000_VERSION ${MIKTEX_COMP_DESCRIPTION}
>
> #include <miktex/Version>
>
> ---- End of util-version.h.cmake ----
> --------------------------------------------------------------------------
> ----
> Developer Access Program for Intel Xeon Phi Processors Access to Intel
> Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today.http://sdm.link/xeonphi
> _______________________________________________
> Q: How can I leave the mailing list?
> A: See http://docs.miktex.org/faq/support.html#leavingml

------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

A
Oh, I had completely missed the fact that the readme was saying to make a
separate build directory from the source directory.  This seems to make a
difference.  I deleted the original "C:\miktex\miktex-2.9-master" directory
and re-pulled the repository to the same directory name using the two "git"
commands from before, and then I did this:

> mkdir C:\miktex\build
> cd C:\miktex\build
> cmake -G "NMake Makefiles" C:\miktex\miktex-2.9-master
  - Completed successfully
> nmake
  - The command failed at first with this error:

---- Beginning of tail of nmake output: ----
[ 25%] Building RC object
Libraries/MiKTeX/UnxEmulation/shared/CMakeFiles/MiKTeX209-unxemu.dir/unxemu.rc.res
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Copyright (C) Microsoft Corporation.  All rights reserved.

[ 25%] Linking CXX shared library ..\..\..\..\binlib\MiKTeX209-unxemu.dll
   Creating library ..\..\..\..\binlib\MiKTeX209-unxemu.lib and object
..\..\..\..\binlib\MiKTeX209-unxemu.exp
[ 25%] Built target MiKTeX209-unxemu
Scanning dependencies of target fcarch
[ 25%] Building C object
Libraries/3rd/fontconfig/CMakeFiles/fcarch.dir/source/src/fcarch.c.obj
fcarch.c
[ 25%] Linking C executable ..\..\..\binlib\fcarch.exe
LINK : fatal error LNK1168: cannot open ..\..\..\binlib\fcarch.exe for
writing
FINAL LINK failed. with 1168
NMAKE : fatal error U1077: '"C:\Program Files\CMake\bin\cmake.exe"' :
return code '0xffffffff'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.

---- End of tail of nmake output. ----

- I restarted nmake and then obtained another error after some time:
  > nmake

---- Beginning of tail of nmake output: ----
[ 30%] Building CXX object
Libraries/MiKTeX/UI/Qt/CMakeFiles/MiKTeX209-ui-Qt.dir/moc_ui_UpdateDialog.cpp.obj
moc_ui_UpdateDialog.cpp
[ 30%] Building CXX object
Libraries/MiKTeX/UI/Qt/CMakeFiles/MiKTeX209-ui-Qt.dir/qrc_mikuiqt.cpp.obj
qrc_mikuiqt.cpp
[ 30%] Linking CXX shared library ..\..\..\..\binlib\MiKTeX209-ui-Qt.dll
Qt5Widgets.lib(Qt5Widgets.dll) : fatal error LNK1112: module machine type
'x64' conflicts with target machine type 'X86'
LINK Pass 1 failed. with 1112
NMAKE : fatal error U1077: '"C:\Program Files\CMake\bin\cmake.exe"' :
return code '0xffffffff'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.

---- End of tail of nmake output. ----

- Every time that I retry the build after that point, I receive the same
error within a minute or two:
  > nmake

---- Beginning of full nmake output: ----

Microsoft (R) Program Maintenance Utility Version 14.00.24210.0
Copyright (C) Microsoft Corporation.  All rights reserved.

[  0%] Built target gen_test_char
[  0%] Built target gen-apr-headers
[  1%] Built target MiKTeX209-apr
[  2%] Built target apr-static
[  2%] Built target MiKTeX209-expat
[  3%] Built target MiKTeX209-aprutil
[  3%] Built target expat-static
[  4%] Built target aprutil-static
[  4%] Built target MiKTeX209-utf8wrap
[  4%] Built target MiKTeX209-bzip2
[  4%] Built target utf8wrap-static
[  5%] Built target bzip2-static
[  6%] Built target pixman-static
[  6%] Built target MiKTeX209-zlib
[  6%] Built target MiKTeX209-png
[  8%] Built target MiKTeX209-cairo
[ 10%] Built target MiKTeX209-curl
[ 13%] Built target curl-static
[ 13%] Built target bintoc
[ 13%] Built target gen-core-sources
[ 13%] Built target gen-crypto-sources
[ 23%] Built target MiKTeX209-libressl-crypto
[ 23%] Built target MiKTeX209-uriparser
[ 24%] Built target MiKTeX209-lzma2
[ 24%] Built target MiKTeX209-md5
[ 24%] Built target MiKTeX209-util
[ 24%] Built target MiKTeX209-trace
[ 25%] Built target MiKTeX209-core
[ 25%] Built target MiKTeX209-unxemu
[ 25%] Built target fcarch
[ 28%] Built target MiKTeX209-log4cxx
[ 28%] Built target gen-core-com
[ 28%] Built target MiKTeX209-mspack
[ 28%] Built target MiKTeX209-extractor
[ 28%] Built target MiKTeX209-packagemanager
[ 28%] Linking CXX shared library ..\..\..\..\binlib\MiKTeX209-ui-Qt.dll
Qt5Widgets.lib(Qt5Widgets.dll) : fatal error LNK1112: module machine type
'x64' conflicts with target machine type 'X86'
LINK Pass 1 failed. with 1112
NMAKE : fatal error U1077: '"C:\Program Files\CMake\bin\cmake.exe"' :
return code '0xffffffff'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.

---- End of full nmake output. ----

As a reminder, here is my PATH:
  > echo %PATH%
    - Output: C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
(x86)\Microsoft SDKs\F#\4.0\Framework\v4.0\;C:\Program Files
(x86)\MSBuild\14.0\bin;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\Tools;C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Program
Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
(x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Team Tools\Performance Tools;C:\Program Files (x86)\Windows
Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\;C:\Program
Files\Git\bin;C:\Windows\system32;C:\Program Files\CMake\bin;C:\Program
Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
(x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-x86_64\bin


Am I still doing anything incorrect?

Thanks.



On Sat, Dec 10, 2016 at 3:43 AM, David Allsopp <[hidden email]>
wrote:

> Are you building in-tree (it looks like you are)? That's not recommended
> for this project - I believe the correct process is to create an empty
> directory (e.g. C:\miktex\build) and change there - you then issue cmake -G
> "NMake Makefiles" C:\miktex\miktex-2.9-master.
>
> The lack of a number in util-version.h is strange, as is the fact that you
> haven't yet found util.rc itself (.in is a file for pre-processing).
>
>
> David
>
> > -----Original Message-----
> > From: A [mailto:[hidden email]]
> > Sent: 09 December 2016 05:54
> > To: [hidden email]
> > Subject: Re: [MiKTeX] Unable to build MiKTeX
> >
> > By looking at the web archive of this mailing list, it appears that the
> > Mailman system does not like attachments at all, so here are the contents
> > of the three files inline (all in
> > "C:\miktex\miktex-2.9-2016-10-30\Libraries\MiKTeX\Util"):
> >
> > ---- Beginning of util.rc.in ----
> > /* util.rc: MiKTeX Util resource file                   -*- C++ -*-
> >
> >    Copyright (C) 1996-2016 Christian Schenk
> >
> >    This file is part of the MiKTeX Util Library.
> >
> >    The MiKTeX Util Library is free software; you can redistribute it
> >    and/or modify it under the terms of the GNU General Public License
> >    as published by the Free Software Foundation; either version 2, or
> >    (at your option) any later version.
> >
> >    The MiKTeX Util Library is distributed in the hope that it will be
> >    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
> >    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> >    GNU General Public License for more details.
> >
> >    You should have received a copy of the GNU General Public License
> >    along with the MiKTeX Util Library; if not, write to the Free
> >    Software Foundation, 59 Temple Place - Suite 330, Boston, MA
> >    02111-1307, USA. */
> >
> > #include "util-version.h"
> >
> > #define VER_INTERNALNAME_STR "${util_dll_name}"
> > #define VER_ORIGINALFILENAME_STR "${util_dll_name}.dll"
> >
> > #define VER_FILEDESCRIPTION_STR "${MIKTEX_COMP_DESCRIPTION}"
> >
> > #define VER_FILETYPE VFT_DLL
> >
> > #include <miktex/win/version.rc>
> >
> > ---- End of util.rc.in ----
> >
> > ---- Beginning of util-version.h ----
> > /* util-version.h: MiKTeX DLL version number            -*- C++ -*-
> >
> >    Copyright (C) 1996-2016 Christian Schenk
> >
> >    This file is part of the MiKTeX Util Library.
> >
> >    The MiKTeX Util Library is free software; you can redistribute it
> >    and/or modify it under the terms of the GNU General Public License
> >    as published by the Free Software Foundation; either version 2, or
> >    (at your option) any later version.
> >
> >    The MiKTeX Util Library is distributed in the hope that it will be
> >    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
> >    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> >    GNU General Public License for more details.
> >
> >    You should have received a copy of the GNU General Public License
> >    along with the MiKTeX Util Library; if not, write to the Free
> >    Software Foundation, 59 Temple Place - Suite 330, Boston, MA
> >    02111-1307, USA. */
> >
> > #define MIKTEX_COMP_J2000_VERSION
> >
> > #include <miktex/Version>
> >
> > ---- End of util-version.h ----
> >
> > ---- Beginning of util-version.h.cmake ----
> > /* util-version.h: MiKTeX DLL version number            -*- C++ -*-
> >
> >    Copyright (C) 1996-2016 Christian Schenk
> >
> >    This file is part of the MiKTeX Util Library.
> >
> >    The MiKTeX Util Library is free software; you can redistribute it
> >    and/or modify it under the terms of the GNU General Public License
> >    as published by the Free Software Foundation; either version 2, or
> >    (at your option) any later version.
> >
> >    The MiKTeX Util Library is distributed in the hope that it will be
> >    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
> >    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> >    GNU General Public License for more details.
> >
> >    You should have received a copy of the GNU General Public License
> >    along with the MiKTeX Util Library; if not, write to the Free
> >    Software Foundation, 59 Temple Place - Suite 330, Boston, MA
> >    02111-1307, USA. */
> >
> > #define MIKTEX_COMP_J2000_VERSION ${MIKTEX_COMP_DESCRIPTION}
> >
> > #include <miktex/Version>
> >
> > ---- End of util-version.h.cmake ----
> > ------------------------------------------------------------
> --------------
> > ----
> > Developer Access Program for Intel Xeon Phi Processors Access to Intel
> > Xeon Phi processor-based developer platforms.
> > With one year of Intel Parallel Studio XE.
> > Training and support from Colfax.
> > Order your platform today.http://sdm.link/xeonphi
> > _______________________________________________
> > Q: How can I leave the mailing list?
> > A: See http://docs.miktex.org/faq/support.html#leavingml
>
> ------------------------------------------------------------
> ------------------
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today.http://sdm.link/xeonphi
> _______________________________________________
> Q: How can I leave the mailing list?
> A: See http://docs.miktex.org/faq/support.html#leavingml
>
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

A
In reply to this post by A
After researching online some more, I found out that the "vcvarsall.bat"
script actually takes an argument for the machine type, which needs to be
specified as 64-bit when doing a 64-bit build.  I deleted everything in
"C:\miktex\build" again and did the following, with the working directory
as "C:\miktex\build".  Now I am getting a different error.

> set PATH=C:\Windows\system32
> "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64
> echo %PATH%
  - Output: C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
(x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Program
Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
(x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
(x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
(x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
(x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\;C:\Windows\system32
> set PATH=%PATH%;C:\Program Files\CMake\bin;C:\Program
Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
(x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-x86_64\bin
> echo %PATH%
  - Output: C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
(x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Program
Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
(x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
(x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
(x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
(x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
SDKs\Windows\v10.0A\bin\NETFX 4.6.1
Tools\x64\;C:\Windows\system32;C:\Program Files\CMake\bin;C:\Program
Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
(x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-x86_64\bin
- I set the CMAKE_PREFIX_PATH as before:
  > set
CMAKE_PREFIX_PATH=C:\Qt\Qt5.5.1\5.5\msvc2013_64\lib\cmake\Qt5;C:\miktex\icu4c-58_1-Win64-MSVC2015\icu\include;C:\miktex\icu4c-58_1-Win64-MSVC2015\icu\lib64
- I ran CMake again:
> cmake -G "NMake Makefiles" C:\miktex\miktex-2.9-master
  - Completed successfully
- I ran nmake again:
> nmake
---- Beginning of tail of nmake output: ----
[ 30%] Building CXX object
Libraries/MiKTeX/UI/Qt/CMakeFiles/MiKTeX209-ui-Qt.dir/moc_ui_UpdateDialog.cpp.obj
moc_ui_UpdateDialog.cpp
[ 30%] Building CXX object
Libraries/MiKTeX/UI/Qt/CMakeFiles/MiKTeX209-ui-Qt.dir/qrc_mikuiqt.cpp.obj
qrc_mikuiqt.cpp
[ 30%] Linking CXX shared library ..\..\..\..\binlib\MiKTeX209-ui-Qt.dll
   Creating library ..\..\..\..\binlib\MiKTeX209-ui-Qt.lib and object
..\..\..\..\binlib\MiKTeX209-ui-Qt.exp
ConnectionSettingsDialog.cpp.obj : error LNK2019: unresolved external
symbol "__declspec(dllimport) public: class QByteArray __cdecl
QString::toUtf8(v
oid)&& " (__imp_?toUtf8@QString@@QEHAA?AVQByteArray@@XZ) referenced in
function "protected: virtual void __cdecl
ConnectionSettingsDialog::accept(void
)" (?accept@ConnectionSettingsDialog@@MEAAXXZ)
mikuiqt.cpp.obj : error LNK2001: unresolved external symbol
"__declspec(dllimport) public: class QByteArray __cdecl
QString::toUtf8(void)&& " (__imp_?
toUtf8@QString@@QEHAA?AVQByteArray@@XZ)
RepositoryTableModel.cpp.obj : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: class QString __cdecl
QString::toUpper(void)&&
 " (__imp_?toUpper@QString@@QEHAA?AV1@XZ) referenced in function "public:
virtual class QVariant __cdecl RepositoryTableModel::data(class QModelIndex
const &,int)const " (?data@RepositoryTableModel@@UEBA?AVQVariant@
@AEBVQModelIndex@@H@Z)
SiteWizLocal.cpp.obj : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: class QByteArray __cdecl
QString::toLocal8Bit(void)&&
" (__imp_?toLocal8Bit@QString@@QEHAA?AVQByteArray@@XZ) referenced in
function "public: virtual bool __cdecl SiteWizLocal::validatePage(void)"
(?valida
tePage@SiteWizLocal@@UEAA_NXZ)
..\..\..\..\binlib\MiKTeX209-ui-Qt.dll : fatal error LNK1120: 3 unresolved
externals
LINK Pass 1 failed. with 1120
NMAKE : fatal error U1077: '"C:\Program Files\CMake\bin\cmake.exe"' :
return code '0xffffffff'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
Stop.

---- End of tail of nmake output. ----

Am I doing anything else incorrectly?
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

David Allsopp
Those are linker errors with Qt, which isn't too surprising as you're using a VS2013 build of Qt 5.5. However, you're doing that because the instructions in README.win are clearly out of date (you could make a pull request for that) - https://miktex.org/howto/build-win would suggest that Christian is using the 5.8.0 beta. See if that gets you past the linker error.

> -----Original Message-----
> From: A [mailto:[hidden email]]
> Sent: 11 December 2016 01:13
> To: [hidden email]
> Subject: Re: [MiKTeX] Unable to build MiKTeX
>
> After researching online some more, I found out that the "vcvarsall.bat"
> script actually takes an argument for the machine type, which needs to be
> specified as 64-bit when doing a 64-bit build.  I deleted everything in
> "C:\miktex\build" again and did the following, with the working directory
> as "C:\miktex\build".  Now I am getting a different error.
>
> > set PATH=C:\Windows\system32
> > "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"
> > x64 echo %PATH%
>   - Output: C:\Program Files (x86)\Microsoft Visual Studio
> 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
> (x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual
> Studio
> 14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Progr
> am
> Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
> (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
> (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
> (x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
> 14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
> Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
> (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
> Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
> SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\;C:\Windows\system32
> > set PATH=%PATH%;C:\Program Files\CMake\bin;C:\Program
> Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
> (x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-
> 7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-
> x86_64\bin
> > echo %PATH%
>   - Output: C:\Program Files (x86)\Microsoft Visual Studio
> 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
> (x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual
> Studio
> 14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Progr
> am
> Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
> (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
> (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
> (x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
> 14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
> Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
> (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
> Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
> SDKs\Windows\v10.0A\bin\NETFX 4.6.1
> Tools\x64\;C:\Windows\system32;C:\Program Files\CMake\bin;C:\Program
> Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
> (x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-
> 7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-
> x86_64\bin
> - I set the CMAKE_PREFIX_PATH as before:
>   > set
> CMAKE_PREFIX_PATH=C:\Qt\Qt5.5.1\5.5\msvc2013_64\lib\cmake\Qt5;C:\miktex\ic
> u4c-58_1-Win64-MSVC2015\icu\include;C:\miktex\icu4c-58_1-Win64-
> MSVC2015\icu\lib64
> - I ran CMake again:
> > cmake -G "NMake Makefiles" C:\miktex\miktex-2.9-master
>   - Completed successfully
> - I ran nmake again:
> > nmake
> ---- Beginning of tail of nmake output: ---- [ 30%] Building CXX object
> Libraries/MiKTeX/UI/Qt/CMakeFiles/MiKTeX209-ui-
> Qt.dir/moc_ui_UpdateDialog.cpp.obj
> moc_ui_UpdateDialog.cpp
> [ 30%] Building CXX object
> Libraries/MiKTeX/UI/Qt/CMakeFiles/MiKTeX209-ui-Qt.dir/qrc_mikuiqt.cpp.obj
> qrc_mikuiqt.cpp
> [ 30%] Linking CXX shared library ..\..\..\..\binlib\MiKTeX209-ui-Qt.dll
>    Creating library ..\..\..\..\binlib\MiKTeX209-ui-Qt.lib and object
> ..\..\..\..\binlib\MiKTeX209-ui-Qt.exp
> ConnectionSettingsDialog.cpp.obj : error LNK2019: unresolved external
> symbol "__declspec(dllimport) public: class QByteArray __cdecl
> QString::toUtf8(v oid)&& " (__imp_?toUtf8@QString@@QEHAA?AVQByteArray@@XZ)
> referenced in function "protected: virtual void __cdecl
> ConnectionSettingsDialog::accept(void
> )" (?accept@ConnectionSettingsDialog@@MEAAXXZ)
> mikuiqt.cpp.obj : error LNK2001: unresolved external symbol
> "__declspec(dllimport) public: class QByteArray __cdecl
> QString::toUtf8(void)&& " (__imp_?
> toUtf8@QString@@QEHAA?AVQByteArray@@XZ)
> RepositoryTableModel.cpp.obj : error LNK2019: unresolved external symbol
> "__declspec(dllimport) public: class QString __cdecl
> QString::toUpper(void)&&  " (__imp_?toUpper@QString@@QEHAA?AV1@XZ)
> referenced in function "public:
> virtual class QVariant __cdecl RepositoryTableModel::data(class
> QModelIndex const &,int)const "
> (?data@RepositoryTableModel@@UEBA?AVQVariant@
> @AEBVQModelIndex@@H@Z)
> SiteWizLocal.cpp.obj : error LNK2019: unresolved external symbol
> "__declspec(dllimport) public: class QByteArray __cdecl
> QString::toLocal8Bit(void)&& "
> (__imp_?toLocal8Bit@QString@@QEHAA?AVQByteArray@@XZ) referenced in
> function "public: virtual bool __cdecl SiteWizLocal::validatePage(void)"
> (?valida
> tePage@SiteWizLocal@@UEAA_NXZ)
> ..\..\..\..\binlib\MiKTeX209-ui-Qt.dll : fatal error LNK1120: 3 unresolved
> externals LINK Pass 1 failed. with 1120 NMAKE : fatal error U1077:
> '"C:\Program Files\CMake\bin\cmake.exe"' :
> return code '0xffffffff'
> Stop.
> NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> Studio 14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
> Stop.
> NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> Studio 14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
> Stop.
>
> ---- End of tail of nmake output. ----
>
> Am I doing anything else incorrectly?
> --------------------------------------------------------------------------
> ----
> Developer Access Program for Intel Xeon Phi Processors Access to Intel
> Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today.http://sdm.link/xeonphi
> _______________________________________________
> Q: How can I leave the mailing list?
> A: See http://docs.miktex.org/faq/support.html#leavingml

------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

A
In the interim I had even tried Qt 5.7.0 which is the latest release (using
"
http://download.qt.io/official_releases/qt/5.7/5.7.0/qt-opensource-windows-x86-msvc2015_64-5.7.0.exe"
-- that's the 64-bit one built with Visual C++ 2015), and that didn't even
work.  Evidently there's a need for a very specific version and build,
5.8.0-beta.  Not only that, but you have to know specifically to get the
one built with MSVC2015.  (I understand that an inference could be made on
that based on the fact that we're using MSVC2015 to build MiKTeX, but
still.)  IMHO, the build documentation needs to point people to the exact
download, aside from the fact that the readme that we were viewing is
out-of-date.

So Qt 5.8.0-beta got me past this hurdle, but now I'm getting a different
error when it builds the documentation.  Here's what happened:

- I got Qt 5.8.0-beta, 64-bit built by Visual C++ 2015:
  - Download page:
http://download.qt.io/development_releases/qt/5.8/5.8.0-beta/
  - Direct link:
http://download.qt.io/development_releases/qt/5.8/5.8.0-beta/qt-opensource-windows-x86-msvc2015_64-5.8.0-beta.exe
  - Selected components for installation: "msvc2015 64-bit", "Qt Script
(Deprecated)"

- I set the PATH as follows:
> set PATH=C:\Windows\system32
> "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64
> echo %PATH%
  - Output: C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
(x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Program
Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
(x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
(x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
(x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
(x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\;C:\Windows\system32
> set PATH=%PATH%;C:\Program Files\CMake\bin;C:\Program
Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
(x86)\Pandoc;C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin;C:\miktex\ImageMagick-7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-x86_64\bin
> echo %PATH%
  - Output: C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
(x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Program
Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
(x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
(x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
(x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
(x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
SDKs\Windows\v10.0A\bin\NETFX 4.6.1
Tools\x64\;C:\Windows\system32;C:\Program Files\CMake\bin;C:\Program
Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
(x86)\Pandoc;C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin;C:\miktex\ImageMagick-7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-x86_64\bin
- I set the CMAKE_PREFIX_PATH as follows:
  > set
CMAKE_PREFIX_PATH=C:\Qt\Qt5.8.0\5.8\msvc2015_64\lib\cmake\Qt5;C:\miktex\icu4c-58_1-Win64-MSVC2015\icu\include;C:\miktex\icu4c-58_1-Win64-MSVC2015\icu\lib64

- I deleted the existing "C:\miktex\build\CMakeCache.txt" file.  I left
everything that was already built this time.
- With my working directory as "C:\miktex\build", I ran CMake again:
> cmake -G "NMake Makefiles" C:\miktex\miktex-2.9-master
  - Completed successfully
- Note: Deleting "CMakeCache.txt" and running CMake again causes a new
"CMakeCache.txt" to be generated with the updated dependency paths that I
changed in PATH and CMAKE_PREFIX_PATH, in this case the Qt paths.
- I ran nmake again:
> nmake
---- Beginning of tail of nmake output: ----
[ 65%] Generating html/faq/index.html
Exit code 0xc0000135

NMAKE : fatal error U1077: 'echo' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
Stop.

---- End of tail of nmake output. ----

This error is repeatable each time I retry nmake.

Cygwin does have C:\cygwin\bin\echo.exe, but when I try "echo" on the
command-line, it is using Windows's version of "echo".  I'm not sure if
that makes any difference.

Am I doing anything else incorrectly?  Could this be an issue with one of
the versions of the other dependencies that the readme says are needed to
build the documentation -- FOP, libxslt, and Pandoc?  As a reminder, here
are the versions that I'm using (see my previous message at
https://sourceforge.net/p/miktex/mailman/message/35538765/ for the download
links and details):
  - FOP: 2.1
  - Libxslt: 1.1.28
  - Pandoc: 1.19

The versions for all three of these were whatever was the latest available
when I went to download them, because the build documentation does not
specify the versions.

Thanks.




On Sun, Dec 11, 2016 at 1:38 AM, David Allsopp <[hidden email]>
wrote:

> Those are linker errors with Qt, which isn't too surprising as you're
> using a VS2013 build of Qt 5.5. However, you're doing that because the
> instructions in README.win are clearly out of date (you could make a pull
> request for that) - https://miktex.org/howto/build-win would suggest that
> Christian is using the 5.8.0 beta. See if that gets you past the linker
> error.
>
> > -----Original Message-----
> > From: A [mailto:[hidden email]]
> > Sent: 11 December 2016 01:13
> > To: [hidden email]
> > Subject: Re: [MiKTeX] Unable to build MiKTeX
> >
> > After researching online some more, I found out that the "vcvarsall.bat"
> > script actually takes an argument for the machine type, which needs to be
> > specified as 64-bit when doing a 64-bit build.  I deleted everything in
> > "C:\miktex\build" again and did the following, with the working directory
> > as "C:\miktex\build".  Now I am getting a different error.
> >
> > > set PATH=C:\Windows\system32
> > > "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"
> > > x64 echo %PATH%
> >   - Output: C:\Program Files (x86)\Microsoft Visual Studio
> > 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
> > (x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual
> > Studio
> > 14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.
> 0.30319;C:\Progr
> > am
> > Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
> > (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
> > (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
> > (x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
> > 14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
> > Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
> > (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
> > Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
> > SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\;C:\Windows\system32
> > > set PATH=%PATH%;C:\Program Files\CMake\bin;C:\Program
> > Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
> > (x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-
> > 7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\
> libxslt-1.1.28-win32-
> > x86_64\bin
> > > echo %PATH%
> >   - Output: C:\Program Files (x86)\Microsoft Visual Studio
> > 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
> > (x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual
> > Studio
> > 14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.
> 0.30319;C:\Progr
> > am
> > Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
> > (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
> > (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
> > (x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
> > 14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
> > Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
> > (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
> > Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
> > SDKs\Windows\v10.0A\bin\NETFX 4.6.1
> > Tools\x64\;C:\Windows\system32;C:\Program Files\CMake\bin;C:\Program
> > Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
> > (x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-
> > 7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\
> libxslt-1.1.28-win32-
> > x86_64\bin
> > - I set the CMAKE_PREFIX_PATH as before:
> >   > set
> > CMAKE_PREFIX_PATH=C:\Qt\Qt5.5.1\5.5\msvc2013_64\lib\cmake\
> Qt5;C:\miktex\ic
> > u4c-58_1-Win64-MSVC2015\icu\include;C:\miktex\icu4c-58_1-Win64-
> > MSVC2015\icu\lib64
> > - I ran CMake again:
> > > cmake -G "NMake Makefiles" C:\miktex\miktex-2.9-master
> >   - Completed successfully
> > - I ran nmake again:
> > > nmake
> > ---- Beginning of tail of nmake output: ---- [ 30%] Building CXX object
> > Libraries/MiKTeX/UI/Qt/CMakeFiles/MiKTeX209-ui-
> > Qt.dir/moc_ui_UpdateDialog.cpp.obj
> > moc_ui_UpdateDialog.cpp
> > [ 30%] Building CXX object
> > Libraries/MiKTeX/UI/Qt/CMakeFiles/MiKTeX209-ui-Qt.
> dir/qrc_mikuiqt.cpp.obj
> > qrc_mikuiqt.cpp
> > [ 30%] Linking CXX shared library ..\..\..\..\binlib\MiKTeX209-ui-Qt.dll
> >    Creating library ..\..\..\..\binlib\MiKTeX209-ui-Qt.lib and object
> > ..\..\..\..\binlib\MiKTeX209-ui-Qt.exp
> > ConnectionSettingsDialog.cpp.obj : error LNK2019: unresolved external
> > symbol "__declspec(dllimport) public: class QByteArray __cdecl
> > QString::toUtf8(v oid)&& " (__imp_?toUtf8@QString@@QEHAA?AVQByteArray@
> @XZ)
> > referenced in function "protected: virtual void __cdecl
> > ConnectionSettingsDialog::accept(void
> > )" (?accept@ConnectionSettingsDialog@@MEAAXXZ)
> > mikuiqt.cpp.obj : error LNK2001: unresolved external symbol
> > "__declspec(dllimport) public: class QByteArray __cdecl
> > QString::toUtf8(void)&& " (__imp_?
> > toUtf8@QString@@QEHAA?AVQByteArray@@XZ)
> > RepositoryTableModel.cpp.obj : error LNK2019: unresolved external symbol
> > "__declspec(dllimport) public: class QString __cdecl
> > QString::toUpper(void)&&  " (__imp_?toUpper@QString@@QEHAA?AV1@XZ)
> > referenced in function "public:
> > virtual class QVariant __cdecl RepositoryTableModel::data(class
> > QModelIndex const &,int)const "
> > (?data@RepositoryTableModel@@UEBA?AVQVariant@
> > @AEBVQModelIndex@@H@Z)
> > SiteWizLocal.cpp.obj : error LNK2019: unresolved external symbol
> > "__declspec(dllimport) public: class QByteArray __cdecl
> > QString::toLocal8Bit(void)&& "
> > (__imp_?toLocal8Bit@QString@@QEHAA?AVQByteArray@@XZ) referenced in
> > function "public: virtual bool __cdecl SiteWizLocal::validatePage(void)"
> > (?valida
> > tePage@SiteWizLocal@@UEAA_NXZ)
> > ..\..\..\..\binlib\MiKTeX209-ui-Qt.dll : fatal error LNK1120: 3
> unresolved
> > externals LINK Pass 1 failed. with 1120 NMAKE : fatal error U1077:
> > '"C:\Program Files\CMake\bin\cmake.exe"' :
> > return code '0xffffffff'
> > Stop.
> > NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> > Studio 14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
> > Stop.
> > NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> > Studio 14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
> > Stop.
> >
> > ---- End of tail of nmake output. ----
> >
> > Am I doing anything else incorrectly?
> > ------------------------------------------------------------
> --------------
> > ----
> > Developer Access Program for Intel Xeon Phi Processors Access to Intel
> > Xeon Phi processor-based developer platforms.
> > With one year of Intel Parallel Studio XE.
> > Training and support from Colfax.
> > Order your platform today.http://sdm.link/xeonphi
> > _______________________________________________
> > Q: How can I leave the mailing list?
> > A: See http://docs.miktex.org/faq/support.html#leavingml
>
> ------------------------------------------------------------
> ------------------
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today.http://sdm.link/xeonphi
> _______________________________________________
> Q: How can I leave the mailing list?
> A: See http://docs.miktex.org/faq/support.html#leavingml
>
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

David Allsopp
A wrote:

> In the interim I had even tried Qt 5.7.0 which is the latest release
> (using
> "
> http://download.qt.io/official_releases/qt/5.7/5.7.0/qt-opensource-
> windows-x86-msvc2015_64-5.7.0.exe"
> -- that's the 64-bit one built with Visual C++ 2015), and that didn't even
> work.  Evidently there's a need for a very specific version and build,
> 5.8.0-beta.  Not only that, but you have to know specifically to get the
> one built with MSVC2015.  (I understand that an inference could be made on
> that based on the fact that we're using MSVC2015 to build MiKTeX, but
> still.)  IMHO, the build documentation needs to point people to the exact
> download, aside from the fact that the readme that we were viewing is
> out-of-date.

Indeed - you could make a pull request with updated documentation (indeed, your whole experience - extra links, etc. would be a valuable addition to the README.win file) - GitHub is very easy to use, if you haven't done it before and while extremely scary for a beginner, Git itself is not that scary for editing one document.

Looking below, it looks to me as though your xsltproc does not work. After you've set-up your PATH, what happens if you run xsltproc --version? I bet you get an error about a missing libxml2 DLLm not 4 lines of text. You also need to extract the following from ftp://ftp.zlatkovic.com/libxml/64bit/ (also to C:\miktex\libxslt-1.1.28-win32-x86_64):
        * libxml2-2.9.3-win32-x86_64.7z
        * mingwrt-5.2.0-win32-x86_64.7z
        * iconv-1.14-win32-x86_64.7z
        * zlib-1.2.8-win32-x86_64.7z
It's possible that the last two are not required for MiKTeX's particular use, but you definitely need the first two (see the diagram on https://www.zlatkovic.com/libxml.en.html under "Getting The Binaries" - though it doesn't explicitly mention the mingwrt - however, you'll get messages about a missing pthread DLL which gives the game away)

See how that works!


David

> So Qt 5.8.0-beta got me past this hurdle, but now I'm getting a different
> error when it builds the documentation.  Here's what happened:
>
> - I got Qt 5.8.0-beta, 64-bit built by Visual C++ 2015:
>   - Download page:
> http://download.qt.io/development_releases/qt/5.8/5.8.0-beta/
>   - Direct link:
> http://download.qt.io/development_releases/qt/5.8/5.8.0-beta/qt-
> opensource-windows-x86-msvc2015_64-5.8.0-beta.exe
>   - Selected components for installation: "msvc2015 64-bit", "Qt Script
> (Deprecated)"
>
> - I set the PATH as follows:
> > set PATH=C:\Windows\system32
> > "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"
> x64
> > echo %PATH%
>   - Output: C:\Program Files (x86)\Microsoft Visual Studio
> 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
> (x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual
> Studio
> 14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Progr
> am
> Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
> (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
> (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
> (x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
> 14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
> Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
> (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
> Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
> SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\;C:\Windows\system32
> > set PATH=%PATH%;C:\Program Files\CMake\bin;C:\Program
> Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
> (x86)\Pandoc;C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin;C:\miktex\ImageMagick-
> 7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-
> x86_64\bin
> > echo %PATH%
>   - Output: C:\Program Files (x86)\Microsoft Visual Studio
> 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files
> (x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual
> Studio
> 14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Progr
> am
> Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program Files
> (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
> (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
> (x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual Studio
> 14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
> Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
> (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
> Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
> SDKs\Windows\v10.0A\bin\NETFX 4.6.1
> Tools\x64\;C:\Windows\system32;C:\Program Files\CMake\bin;C:\Program
> Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
> (x86)\Pandoc;C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin;C:\miktex\ImageMagick-
> 7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\libxslt-1.1.28-win32-
> x86_64\bin
> - I set the CMAKE_PREFIX_PATH as follows:
>   > set
> CMAKE_PREFIX_PATH=C:\Qt\Qt5.8.0\5.8\msvc2015_64\lib\cmake\Qt5;C:\miktex\ic
> u4c-58_1-Win64-MSVC2015\icu\include;C:\miktex\icu4c-58_1-Win64-
> MSVC2015\icu\lib64
>
> - I deleted the existing "C:\miktex\build\CMakeCache.txt" file.  I left
> everything that was already built this time.
> - With my working directory as "C:\miktex\build", I ran CMake again:
> > cmake -G "NMake Makefiles" C:\miktex\miktex-2.9-master
>   - Completed successfully
> - Note: Deleting "CMakeCache.txt" and running CMake again causes a new
> "CMakeCache.txt" to be generated with the updated dependency paths that I
> changed in PATH and CMAKE_PREFIX_PATH, in this case the Qt paths.
> - I ran nmake again:
> > nmake
> ---- Beginning of tail of nmake output: ----
> [ 65%] Generating html/faq/index.html
> Exit code 0xc0000135
>
> NMAKE : fatal error U1077: 'echo' : return code '0x1'
> Stop.
> NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> Studio
> 14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
> Stop.
> NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> Studio
> 14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
> Stop.
>
> ---- End of tail of nmake output. ----
>
> This error is repeatable each time I retry nmake.
>
> Cygwin does have C:\cygwin\bin\echo.exe, but when I try "echo" on the
> command-line, it is using Windows's version of "echo".  I'm not sure if
> that makes any difference.
>
> Am I doing anything else incorrectly?  Could this be an issue with one of
> the versions of the other dependencies that the readme says are needed to
> build the documentation -- FOP, libxslt, and Pandoc?  As a reminder, here
> are the versions that I'm using (see my previous message at
> https://sourceforge.net/p/miktex/mailman/message/35538765/ for the
> download
> links and details):
>   - FOP: 2.1
>   - Libxslt: 1.1.28
>   - Pandoc: 1.19
>
> The versions for all three of these were whatever was the latest available
> when I went to download them, because the build documentation does not
> specify the versions.
>
> Thanks.
>
>
>
>
> On Sun, Dec 11, 2016 at 1:38 AM, David Allsopp <[hidden email]>
> wrote:
>
> > Those are linker errors with Qt, which isn't too surprising as you're
> > using a VS2013 build of Qt 5.5. However, you're doing that because the
> > instructions in README.win are clearly out of date (you could make a
> pull
> > request for that) - https://miktex.org/howto/build-win would suggest
> that
> > Christian is using the 5.8.0 beta. See if that gets you past the linker
> > error.
> >
> > > -----Original Message-----
> > > From: A [mailto:[hidden email]]
> > > Sent: 11 December 2016 01:13
> > > To: [hidden email]
> > > Subject: Re: [MiKTeX] Unable to build MiKTeX
> > >
> > > After researching online some more, I found out that the
> "vcvarsall.bat"
> > > script actually takes an argument for the machine type, which needs to
> be
> > > specified as 64-bit when doing a 64-bit build.  I deleted everything
> in
> > > "C:\miktex\build" again and did the following, with the working
> directory
> > > as "C:\miktex\build".  Now I am getting a different error.
> > >
> > > > set PATH=C:\Windows\system32
> > > > "C:\Program Files (x86)\Microsoft Visual Studio
> 14.0\VC\vcvarsall.bat"
> > > > x64 echo %PATH%
> > >   - Output: C:\Program Files (x86)\Microsoft Visual Studio
> > > 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program
> Files
> > > (x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual
> > > Studio
> > > 14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.
> > 0.30319;C:\Progr
> > > am
> > > Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program
> Files
> > > (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
> > > (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
> > > (x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual
> Studio
> > > 14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
> > > Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
> > > (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
> > > Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
> > > SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\;C:\Windows\system32
> > > > set PATH=%PATH%;C:\Program Files\CMake\bin;C:\Program
> > > Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
> > > (x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-
> > > 7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\
> > libxslt-1.1.28-win32-
> > > x86_64\bin
> > > > echo %PATH%
> > >   - Output: C:\Program Files (x86)\Microsoft Visual Studio
> > > 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program
> Files
> > > (x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual
> > > Studio
> > > 14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.
> > 0.30319;C:\Progr
> > > am
> > > Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;C:\Program
> Files
> > > (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files
> > > (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Program Files
> > > (x86)\HTML Help Workshop;C:\Program Files (x86)\Microsoft Visual
> Studio
> > > 14.0\Team Tools\Performance Tools\x64;C:\Program Files (x86)\Microsoft
> > > Visual Studio 14.0\Team Tools\Performance Tools;C:\Program Files
> > > (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows
> > > Kits\10\bin\x86;C:\Program Files (x86)\Microsoft
> > > SDKs\Windows\v10.0A\bin\NETFX 4.6.1
> > > Tools\x64\;C:\Windows\system32;C:\Program Files\CMake\bin;C:\Program
> > > Files\java\jdk1.8.0_25\bin;C:\Python27;C:\cygwin\bin;C:\Program Files
> > > (x86)\Pandoc;C:\Qt\Qt5.5.1\5.5\msvc2013_64\bin;C:\miktex\ImageMagick-
> > > 7.0.3-9-portable-Q16-x64;C:\miktex\fop-2.1;C:\miktex\
> > libxslt-1.1.28-win32-
> > > x86_64\bin
> > > - I set the CMAKE_PREFIX_PATH as before:
> > >   > set
> > > CMAKE_PREFIX_PATH=C:\Qt\Qt5.5.1\5.5\msvc2013_64\lib\cmake\
> > Qt5;C:\miktex\ic
> > > u4c-58_1-Win64-MSVC2015\icu\include;C:\miktex\icu4c-58_1-Win64-
> > > MSVC2015\icu\lib64
> > > - I ran CMake again:
> > > > cmake -G "NMake Makefiles" C:\miktex\miktex-2.9-master
> > >   - Completed successfully
> > > - I ran nmake again:
> > > > nmake
> > > ---- Beginning of tail of nmake output: ---- [ 30%] Building CXX
> object
> > > Libraries/MiKTeX/UI/Qt/CMakeFiles/MiKTeX209-ui-
> > > Qt.dir/moc_ui_UpdateDialog.cpp.obj
> > > moc_ui_UpdateDialog.cpp
> > > [ 30%] Building CXX object
> > > Libraries/MiKTeX/UI/Qt/CMakeFiles/MiKTeX209-ui-Qt.
> > dir/qrc_mikuiqt.cpp.obj
> > > qrc_mikuiqt.cpp
> > > [ 30%] Linking CXX shared library ..\..\..\..\binlib\MiKTeX209-ui-
> Qt.dll
> > >    Creating library ..\..\..\..\binlib\MiKTeX209-ui-Qt.lib and object
> > > ..\..\..\..\binlib\MiKTeX209-ui-Qt.exp
> > > ConnectionSettingsDialog.cpp.obj : error LNK2019: unresolved external
> > > symbol "__declspec(dllimport) public: class QByteArray __cdecl
> > > QString::toUtf8(v oid)&& " (__imp_?toUtf8@QString@@QEHAA?AVQByteArray@
> > @XZ)
> > > referenced in function "protected: virtual void __cdecl
> > > ConnectionSettingsDialog::accept(void
> > > )" (?accept@ConnectionSettingsDialog@@MEAAXXZ)
> > > mikuiqt.cpp.obj : error LNK2001: unresolved external symbol
> > > "__declspec(dllimport) public: class QByteArray __cdecl
> > > QString::toUtf8(void)&& " (__imp_?
> > > toUtf8@QString@@QEHAA?AVQByteArray@@XZ)
> > > RepositoryTableModel.cpp.obj : error LNK2019: unresolved external
> symbol
> > > "__declspec(dllimport) public: class QString __cdecl
> > > QString::toUpper(void)&&  " (__imp_?toUpper@QString@@QEHAA?AV1@XZ)
> > > referenced in function "public:
> > > virtual class QVariant __cdecl RepositoryTableModel::data(class
> > > QModelIndex const &,int)const "
> > > (?data@RepositoryTableModel@@UEBA?AVQVariant@
> > > @AEBVQModelIndex@@H@Z)
> > > SiteWizLocal.cpp.obj : error LNK2019: unresolved external symbol
> > > "__declspec(dllimport) public: class QByteArray __cdecl
> > > QString::toLocal8Bit(void)&& "
> > > (__imp_?toLocal8Bit@QString@@QEHAA?AVQByteArray@@XZ) referenced in
> > > function "public: virtual bool __cdecl
> SiteWizLocal::validatePage(void)"
> > > (?valida
> > > tePage@SiteWizLocal@@UEAA_NXZ)
> > > ..\..\..\..\binlib\MiKTeX209-ui-Qt.dll : fatal error LNK1120: 3
> > unresolved
> > > externals LINK Pass 1 failed. with 1120 NMAKE : fatal error U1077:
> > > '"C:\Program Files\CMake\bin\cmake.exe"' :
> > > return code '0xffffffff'
> > > Stop.
> > > NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> > > Studio 14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
> > > Stop.
> > > NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> > > Studio 14.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
> > > Stop.
> > >
> > > ---- End of tail of nmake output. ----
> > >
> > > Am I doing anything else incorrectly?
> > > ------------------------------------------------------------
> > --------------
> > > ----
> > > Developer Access Program for Intel Xeon Phi Processors Access to Intel
> > > Xeon Phi processor-based developer platforms.
> > > With one year of Intel Parallel Studio XE.
> > > Training and support from Colfax.
> > > Order your platform today.http://sdm.link/xeonphi
> > > _______________________________________________
> > > Q: How can I leave the mailing list?
> > > A: See http://docs.miktex.org/faq/support.html#leavingml
> >
> > ------------------------------------------------------------
> > ------------------
> > Developer Access Program for Intel Xeon Phi Processors
> > Access to Intel Xeon Phi processor-based developer platforms.
> > With one year of Intel Parallel Studio XE.
> > Training and support from Colfax.
> > Order your platform today.http://sdm.link/xeonphi
> > _______________________________________________
> > Q: How can I leave the mailing list?
> > A: See http://docs.miktex.org/faq/support.html#leavingml
> >
> --------------------------------------------------------------------------
> ----
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today.http://sdm.link/xeonphi
> _______________________________________________
> Q: How can I leave the mailing list?
> A: See http://docs.miktex.org/faq/support.html#leavingml

------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

A
In reply to this post by A
Hi David,

Okay, I will likely look into possibly doing that sometime after getting
the whole thing working.

You're absolutely right that I cannot run "xsltproc" or "xsltproc
--version".  It comes up with an error dialog with title "xsltproc.exe -
System Error" and text "The program can't start because libxml2-2.dll is
missing from your computer. Try reinstalling the program to fix this
problem."

I made the following changes:

- Downloaded from "ftp://ftp.zlatkovic.com/libxml/64bit/":
  - "libxml2-2.9.3-win32-x86_64.7z" -- direct link: "
ftp://ftp.zlatkovic.com/libxml/64bit/libxml2-2.9.3-win32-x86_64.7z"
  - "mingwrt-5.2.0-win32-x86_64.7z" -- direct link: "
ftp://ftp.zlatkovic.com/libxml/64bit/mingwrt-5.2.0-win32-x86_64.7z"
    - It is also disappointing that, as you said, the instruction page at "
https://www.zlatkovic.com/libxml.en.html" doesn't mention the need for this.
- I merged the extracted directory contents of these two archives into
"C:\miktex\libxslt-1.1.28-win32-x86_64" (that was previously extracted from
"libxslt-1.1.28-win32-x86_64.7z").
- Then, when I run "xsltproc" / "xsltproc --version" again, I get a new
error dialog with title "xsltproc.exe - System Error" and text "The program
can't start because libiconv-2.dll is missing from your computer. Try
reinstalling the program to fix this problem."  Therefore, I obtained the
remaining two libraries that you mentioned you were unsure were necessary:
  - "iconv-1.14-win32-x86_64.7z" -- direct link: "ftp://ftp.zlatkovic.com/
libxml/64bit/iconv-1.14-win32-x86_64.7z"
  - "zlib-1.2.8-win32-x86_64.7z" -- direct link: "ftp://ftp.zlatkovic.com/
libxml/64bit/zlib-1.2.8-win32-x86_64.7z"
- I merged the extracted directory contents of these two archives into
"C:\miktex\libxslt-1.1.28-win32-x86_64" as well.

After doing this, "xsltproc" and "xsltproc --version" appear to work.  Here
is the output of "xsltproc --version":
---- Begin output ----
Using libxml 20903, libxslt 10128 and libexslt 817
xsltproc was compiled against libxml 20903, libxslt 10128 and libexslt 817
libxslt 10128 was compiled against libxml 20903
libexslt 817 was compiled against libxml 20903
---- End output ----

Now, with the command window still in "C:\miktex\build" and the PATH /
CMAKE_PREFIX_PATH set up as before, and with all of the previously-built
contents still present, I retried nmake.  This time, the build process
reached 100% and appeared to complete successfully!

I think that we're almost there.  I attempted to run
"C:\miktex\build\binlib\miktex-texworks.exe" (TeXWorks, the main program
for MiKTeX), and it gives me an error dialog:
  - Title: "miktex-texworks.exe - Entry Point Not Found"
  - Text: "The procedure entry point ?deadlineNSecs@QDeadlineTimer@@QEBA_JXZ
could not be located in the dynamic link library Qt5Core.dll."

I am able to run some other of the built executables in
"C:\miktex\build\binlib", for example, "bibtex8.exe".

I tried running "setup.exe", and this program itself appears to work, but
I'm not really sure what to give it for the installation directory.  When I
look at "MiKTeX Download Files" from a previous installation that I did
from one of the regular binary releases of MiKTeX, I see a bunch of ".lzma"
and ".cab" files; however, in my build directory "C:\miktex\build", I am
not finding any ".lzma" or ".cab" files produced by the build process.

I'm wondering if there's an extra step I need to get TeXWorks working and
to run the full setup from my build?  Does the error I got for TeXWorks
indicate that the program failed to build correctly?

Thanks.
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

David Allsopp
You need to install it first - nmake install will install it to C:\MiKTeX-Builds\2.9 although you can also set CMAKE_INSTALL_PREFIX to override that.

The specific problem with TeXworks sounds like either Qt5core.dll is not in your path or a slightly different version of it is in path. The install target may well copy it for you, but I wouldn't expect to be able to run a project of this size from its build tree.

There are various build options you may want to set in CMake itself: for example, MIKTEX_SELF_CONTAINED, INSTALL_PACKAGE_DATABASE.

The build system for MiKTeX is not going to assemble packages for you - that's part of the packaging repo. But this really does beg the question of why are you doing this, at this point? :o)


David

> -----Original Message-----
> From: A [mailto:[hidden email]]
> Sent: 12 December 2016 00:18
> To: A place for MiKTeX users to discuss MiKTeX related questions. <miktex-
> [hidden email]>
> Subject: Re: [MiKTeX] Unable to build MiKTeX
>
> Hi David,
>
> Okay, I will likely look into possibly doing that sometime after getting
> the whole thing working.
>
> You're absolutely right that I cannot run "xsltproc" or "xsltproc
> --version".  It comes up with an error dialog with title "xsltproc.exe -
> System Error" and text "The program can't start because libxml2-2.dll is
> missing from your computer. Try reinstalling the program to fix this
> problem."
>
> I made the following changes:
>
> - Downloaded from "ftp://ftp.zlatkovic.com/libxml/64bit/":
>   - "libxml2-2.9.3-win32-x86_64.7z" -- direct link: "
> ftp://ftp.zlatkovic.com/libxml/64bit/libxml2-2.9.3-win32-x86_64.7z"
>   - "mingwrt-5.2.0-win32-x86_64.7z" -- direct link: "
> ftp://ftp.zlatkovic.com/libxml/64bit/mingwrt-5.2.0-win32-x86_64.7z"
>     - It is also disappointing that, as you said, the instruction page at
> "
> https://www.zlatkovic.com/libxml.en.html" doesn't mention the need for
> this.
> - I merged the extracted directory contents of these two archives into
> "C:\miktex\libxslt-1.1.28-win32-x86_64" (that was previously extracted
> from
> "libxslt-1.1.28-win32-x86_64.7z").
> - Then, when I run "xsltproc" / "xsltproc --version" again, I get a new
> error dialog with title "xsltproc.exe - System Error" and text "The
> program
> can't start because libiconv-2.dll is missing from your computer. Try
> reinstalling the program to fix this problem."  Therefore, I obtained the
> remaining two libraries that you mentioned you were unsure were necessary:
>   - "iconv-1.14-win32-x86_64.7z" -- direct link: "ftp://ftp.zlatkovic.com/
> libxml/64bit/iconv-1.14-win32-x86_64.7z"
>   - "zlib-1.2.8-win32-x86_64.7z" -- direct link: "ftp://ftp.zlatkovic.com/
> libxml/64bit/zlib-1.2.8-win32-x86_64.7z"
> - I merged the extracted directory contents of these two archives into
> "C:\miktex\libxslt-1.1.28-win32-x86_64" as well.
>
> After doing this, "xsltproc" and "xsltproc --version" appear to work.
> Here
> is the output of "xsltproc --version":
> ---- Begin output ----
> Using libxml 20903, libxslt 10128 and libexslt 817
> xsltproc was compiled against libxml 20903, libxslt 10128 and libexslt 817
> libxslt 10128 was compiled against libxml 20903
> libexslt 817 was compiled against libxml 20903
> ---- End output ----
>
> Now, with the command window still in "C:\miktex\build" and the PATH /
> CMAKE_PREFIX_PATH set up as before, and with all of the previously-built
> contents still present, I retried nmake.  This time, the build process
> reached 100% and appeared to complete successfully!
>
> I think that we're almost there.  I attempted to run
> "C:\miktex\build\binlib\miktex-texworks.exe" (TeXWorks, the main program
> for MiKTeX), and it gives me an error dialog:
>   - Title: "miktex-texworks.exe - Entry Point Not Found"
>   - Text: "The procedure entry point
> ?deadlineNSecs@QDeadlineTimer@@QEBA_JXZ
> could not be located in the dynamic link library Qt5Core.dll."
>
> I am able to run some other of the built executables in
> "C:\miktex\build\binlib", for example, "bibtex8.exe".
>
> I tried running "setup.exe", and this program itself appears to work, but
> I'm not really sure what to give it for the installation directory.  When
> I
> look at "MiKTeX Download Files" from a previous installation that I did
> from one of the regular binary releases of MiKTeX, I see a bunch of
> ".lzma"
> and ".cab" files; however, in my build directory "C:\miktex\build", I am
> not finding any ".lzma" or ".cab" files produced by the build process.
>
> I'm wondering if there's an extra step I need to get TeXWorks working and
> to run the full setup from my build?  Does the error I got for TeXWorks
> indicate that the program failed to build correctly?
>
> Thanks.
> --------------------------------------------------------------------------
> ----
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today.http://sdm.link/xeonphi
> _______________________________________________
> Q: How can I leave the mailing list?
> A: See http://docs.miktex.org/faq/support.html#leavingml

------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/xeonphi
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

A
Hi David,

Answering your question about the basic background for what I'm doing: My
goal is to add a certain Lua library to LuaLaTeX.  The library has to be
built from source, but when I build it with LuaRocks and try to use it in
an existing MiKTeX installation, then the module's DLL doesn't work and is
rejected by LuaLaTeX for some reason.  I'm hoping to either build MiKTeX
statically with this Lua module to get it working, or perhaps make it so
that MiKTeX and the library DLL are built with the same environment so that
the DLL can be accepted.  I might ask for further assistance on this soon.
Anyways...

It looks like my DLL errors with running "miktex-texworks.exe" might have
been something transient because I needed to try different Qt versions
earlier, needed to take additional steps to get Xsltproc working, and was
trying to resume my build.  I "bit the bullet" and rebuilt everything from
the beginning using the most recent setup that we found works with Qt
version 5.8.0-beta (and after taking the needed steps to get Xsltproc
working).  I got "nmake" and "nmake install" to complete successfully.  The
latter command installs to the folder "C:\miktex\build-install".  In order
to get "miktex-texworks.exe" to work, I found that I first need to copy the
following DLL files from "C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin" to
"C:\miktex\build-install\texmf\miktex\bin\x64" (the folder containing
"miktex-texworks.exe" in the "nmake install" destination):
  - Qt5Widgets.dll
  - Qt5Gui.dll
  - Qt5Core.dll
After copying these DLL files, "miktex-texworks.exe" is able to run and the
window comes up.  Note: Simply having "C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin"
in my PATH environment variable does not seem to suffice.  The program
seems to need the DLL files to be present in the same folder with it.
Please let me know if manually copying these DLL files this way is not the
ideal method.

When you say to set the CMake build options, is the primary way to do this
by editing the values in "C:\miktex\build\CMakeCache.txt" (which is
generated by the CMake command and used as an input to NMake)?  Here's what
happened when I edited the file to enable the options you mentioned and
similar options, and then ran "nmake install" again afterward:
  - Setting "INSTALL_MIKTEX_HEADERS", "INSTALL_STATIC_LIBRARIES", and
"MIKTEX_SELF_CONTAINED" to "ON" (default was "OFF"): I think that the build
process built some additional items, and I found that the resulting install
target directory ("C:\miktex\build-install") has some more contents in the
"include" and "lib" subdirectories.
  - Setting "INSTALL_PACKAGE_DATABASE" to "ON" (default was "OFF"): The
build process seems to want the "wget" program so that it can connect to
the Internet and download packages.  (Based on information in the source
file "C:\miktex\miktex-2.9-master\CMakeLists.txt", I believe that it wants
to download from "ctan.org".)

I ran the Cygwin setup again and installed "wget" (version 1.18-1).  This
makes Cygwin install the following dependencies: libgnutls28 version
3.3.17-1, libhogweed2 version 2.7.1-1, libidn11 version 1.29-1, libidn2_0
version 0.11-1, libnettle4 version 2.7.1-1, libpsl5 version 0.14.0-2,
libunistring2 version 0.9.6-1.  (An update for the Cygwin installer became
available since the last time that I ran it, but I didn't install that
update at this time.)

With "INSTALL_MIKTEX_HEADERS", "INSTALL_STATIC_LIBRARIES",
"MIKTEX_SELF_CONTAINED", and "INSTALL_PACKAGE_DATABASE" all set to "ON" in
"C:\miktex\build\CMakeCache.txt", I then deleted the
"C:\miktex\build-install" directory and re-ran "nmake" in
"C:\miktex\build".  I got the following errors at the beginning and the end:
---- Beginning of head of nmake output: ----

Microsoft (R) Program Maintenance Utility Version 14.00.24210.0
Copyright (C) Microsoft Corporation.  All rights reserved.

xz: (stdin): File format not recognized
/usr/bin/tar: Child returned status 1
/usr/bin/tar: Error is not recoverable: exiting now
xz: (stdin): File format not recognized
/usr/bin/tar: Child returned status 1
/usr/bin/tar: Error is not recoverable: exiting now
-- Configuring done
-- Generating done
-- Build files have been written to: C:/miktex/build
[  0%] Built target gen_test_char
[  0%] Built target gen-apr-headers
[  1%] Built target MiKTeX209-apr
---- End of head of nmake output. ----

---- Beginning of tail of nmake output: ----
[100%] Built target miktex-luajit
Install the project...
-- Install configuration: "RelWithDebInfo"
CMake Error at cmake_install.cmake:31 (file):
  file INSTALL cannot find "C:/miktex/build/mpm.ini".


NMAKE : fatal error U1077: 'echo' : return code '0x1'
Stop.

---- End of tail of nmake output. ----

If I retry "nmake install", then the errors at beginning don't repeat, but
the error at the end does repeat.

If I then change "INSTALL_PACKAGE_DATABASE" back to "OFF", then the
build/install works as before.

What I'm actually wondering is: Can I generate the "Basic MiKTeX Installer"
that contains the full MiKTeX installation without an immediate need to
download anything external?  This is usually named
"basic-miktex-<version>-x64.exe" when you download it from "
https://miktex.org/download".  Currently I only see what seems to be the
"MiKTeX Net Installer" being generated, which is the setup that requires a
download of external packages; the file path is
"C:\miktex\build-install\texmf\miktex\bin\x64\setup.exe" in my install
target, and is named "setup-<version>-x64.exe" when you download it from "
https://miktex.org/download".  Is a successful build with
"INSTALL_PACKAGE_DATABASE" set to "ON" required in order to generate the
"Basic MiKTeX Installer"?  You mentioned the packaging repo which I see at "
https://github.com/MiKTeX/miktex-packaging".  Is that repo required to
build the "Basic MiKTeX Installer"?

Thanks.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

David Allsopp
A wrote:

> Answering your question about the basic background for what I'm doing: My
> goal is to add a certain Lua library to LuaLaTeX.  The library has to be
> built from source, but when I build it with LuaRocks and try to use it in
> an existing MiKTeX installation, then the module's DLL doesn't work and is
> rejected by LuaLaTeX for some reason.  I'm hoping to either build MiKTeX
> statically with this Lua module to get it working, or perhaps make it so
> that MiKTeX and the library DLL are built with the same environment so
> that the DLL can be accepted.  I might ask for further assistance on this
> soon.
> Anyways...

One step at a time :o)

> It looks like my DLL errors with running "miktex-texworks.exe" might have
> been something transient because I needed to try different Qt versions
> earlier, needed to take additional steps to get Xsltproc working, and was
> trying to resume my build.  I "bit the bullet" and rebuilt everything from
> the beginning using the most recent setup that we found works with Qt
> version 5.8.0-beta (and after taking the needed steps to get Xsltproc
> working).  I got "nmake" and "nmake install" to complete successfully.
> The latter command installs to the folder "C:\miktex\build-install".  In
> order to get "miktex-texworks.exe" to work, I found that I first need to
> copy the following DLL files from "C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin" to
> "C:\miktex\build-install\texmf\miktex\bin\x64" (the folder containing
> "miktex-texworks.exe" in the "nmake install" destination):
>   - Qt5Widgets.dll
>   - Qt5Gui.dll
>   - Qt5Core.dll
> After copying these DLL files, "miktex-texworks.exe" is able to run and
> the window comes up.  Note: Simply having
> "C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin"
> in my PATH environment variable does not seem to suffice.  The program
> seems to need the DLL files to be present in the same folder with it.
> Please let me know if manually copying these DLL files this way is not the
> ideal method.

It surprises me that you *have* to copy it - is that even the case if you put the Qt PATH *first* in your PATH? However, this is how MiKTeX does it, so you're probably fine - in fact, at this stage, it's worth just comparing your installed directory with a tree created by MiKTeX's own installer. It's sadly normal on Windows to install all the libraries you need with each program - I guess disk space is cheap, but it's very dirty (I, for example, resent having multiple installation of Cygwin/MSYS arising from Git-for-Windows, etc. having to package it internally).

> When you say to set the CMake build options, is the primary way to do this
> by editing the values in "C:\miktex\build\CMakeCache.txt" (which is
> generated by the CMake command and used as an input to NMake)?  Here's
> what happened when I edited the file to enable the options you mentioned
> and similar options, and then ran "nmake install" again afterward:
>   - Setting "INSTALL_MIKTEX_HEADERS", "INSTALL_STATIC_LIBRARIES", and
> "MIKTEX_SELF_CONTAINED" to "ON" (default was "OFF"): I think that the
> build process built some additional items, and I found that the resulting
> install target directory ("C:\miktex\build-install") has some more
> contents in the "include" and "lib" subdirectories.
>   - Setting "INSTALL_PACKAGE_DATABASE" to "ON" (default was "OFF"): The
> build process seems to want the "wget" program so that it can connect to
> the Internet and download packages.  (Based on information in the source
> file "C:\miktex\miktex-2.9-master\CMakeLists.txt", I believe that it wants
> to download from "ctan.org".)

I think the official way is -DINSTALL_PACKAGE_DATABASE=ON (possibly -DINSTALL_PACKAGE_DATABASE:BOOL=ON).

> I ran the Cygwin setup again and installed "wget" (version 1.18-1).  This
> makes Cygwin install the following dependencies: libgnutls28 version
> 3.3.17-1, libhogweed2 version 2.7.1-1, libidn11 version 1.29-1, libidn2_0
> version 0.11-1, libnettle4 version 2.7.1-1, libpsl5 version 0.14.0-2,
> libunistring2 version 0.9.6-1.  (An update for the Cygwin installer became
> available since the last time that I ran it, but I didn't install that
> update at this time.)
>
> With "INSTALL_MIKTEX_HEADERS", "INSTALL_STATIC_LIBRARIES",
> "MIKTEX_SELF_CONTAINED", and "INSTALL_PACKAGE_DATABASE" all set to "ON" in
> "C:\miktex\build\CMakeCache.txt", I then deleted the "C:\miktex\build-
> install" directory and re-ran "nmake" in "C:\miktex\build".  I got the
> following errors at the beginning and the end:
> ---- Beginning of head of nmake output: ----
>
> Microsoft (R) Program Maintenance Utility Version 14.00.24210.0 Copyright
> (C) Microsoft Corporation.  All rights reserved.
>
> xz: (stdin): File format not recognized
> /usr/bin/tar: Child returned status 1
> /usr/bin/tar: Error is not recoverable: exiting now
> xz: (stdin): File format not recognized
> /usr/bin/tar: Child returned status 1
> /usr/bin/tar: Error is not recoverable: exiting now

Hmm, looking at it, I wonder if it's not actually downloading anything. What's the output from wget further up the log?

> -- Configuring done
> -- Generating done
> -- Build files have been written to: C:/miktex/build [  0%] Built target
> gen_test_char [  0%] Built target gen-apr-headers [  1%] Built target
> MiKTeX209-apr
> ---- End of head of nmake output. ----
>
> ---- Beginning of tail of nmake output: ---- [100%] Built target miktex-
> luajit Install the project...
> -- Install configuration: "RelWithDebInfo"
> CMake Error at cmake_install.cmake:31 (file):
>   file INSTALL cannot find "C:/miktex/build/mpm.ini".
>
>
> NMAKE : fatal error U1077: 'echo' : return code '0x1'
> Stop.
>
> ---- End of tail of nmake output. ----

This is predictable given the earlier failure.

> If I retry "nmake install", then the errors at beginning don't repeat, but
> the error at the end does repeat.
>
> If I then change "INSTALL_PACKAGE_DATABASE" back to "OFF", then the
> build/install works as before.
>
> What I'm actually wondering is: Can I generate the "Basic MiKTeX
> Installer"
> that contains the full MiKTeX installation without an immediate need to
> download anything external?  This is usually named "basic-miktex-
> <version>-x64.exe" when you download it from "
> https://miktex.org/download".  Currently I only see what seems to be the
> "MiKTeX Net Installer" being generated, which is the setup that requires a
> download of external packages; the file path is "C:\miktex\build-
> install\texmf\miktex\bin\x64\setup.exe" in my install target, and is named
> "setup-<version>-x64.exe" when you download it from "
> https://miktex.org/download".  Is a successful build with
> "INSTALL_PACKAGE_DATABASE" set to "ON" required in order to generate the
> "Basic MiKTeX Installer"?  You mentioned the packaging repo which I see at
> "
> https://github.com/MiKTeX/miktex-packaging".  Is that repo required to
> build the "Basic MiKTeX Installer"?

This is something I couldn't see from the main repository - I'm not sure if Christian is following this thread - it might be worth your starting a new one for how to (re-)create the standard installers.

It looks to me that the project for doing this is not included in the repo.

I would be surprised if you can generate the installer without needing to go online (at least not without editing or maintaining your own CTAN cache) - once you've compiled the MiKTeX binaries, the rest of the package repository is "just" repackaged from CTAN.

For what you're trying to do, it may be better to be trying to replace appropriate binaries in a pre-installed MiKTeX installation - once that's working, you could then look possibly at creating your own packages. But (personally) I'd try getting your DLL to work with your new build of lualatex before worrying about making the whole process neater.


David


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
A
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

A
Aha, you're right!  It turns out that "C:\Program Files\CMake\bin" has its
own Qt DLLs that interfere with the DLLs that "miktex-texworks.exe" uses,
so "C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin" needs to go before it in the PATH
(or you need to remove the CMake directory from the PATH) when running the
built programs that require the Qt DLLs.  Doing this, then
"miktex-texworks" can run without the DLLs being in the folder with it.

Is there a "minimum set" of CTAN libraries that's needed for MiKTeX?  Is
there a list of these somewhere?

So the "Basic MiKTeX Installer" is not open-sourced like the rest of the
project??

Thanks.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

Thompson,Paul-2
Yes, open-source hell.

-----Original Message-----
From: A [mailto:[hidden email]]
Sent: Thursday, December 15, 2016 9:55 AM
To: A place for MiKTeX users to discuss MiKTeX related questions.
Subject: Re: [MiKTeX] Unable to build MiKTeX

Aha, you're right!  It turns out that "C:\Program Files\CMake\bin" has its own Qt DLLs that interfere with the DLLs that "miktex-texworks.exe" uses, so "C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin" needs to go before it in the PATH (or you need to remove the CMake directory from the PATH) when running the built programs that require the Qt DLLs.  Doing this, then "miktex-texworks" can run without the DLLs being in the folder with it.

Is there a "minimum set" of CTAN libraries that's needed for MiKTeX?  Is there a list of these somewhere?

So the "Basic MiKTeX Installer" is not open-sourced like the rest of the project??

Thanks.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most engaging tech sites, SlashDot.org! http://sdm.link/slashdot _______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
-----------------------------------------------------------------------
Confidentiality Notice: This e-mail message, including any attachments,
is for the sole use of the intended recipient(s) and may contain
privileged and confidential information.  Any unauthorized review, use,
disclosure or distribution is prohibited.  If you are not the intended
recipient, please contact the sender by reply e-mail and destroy
all copies of the original message.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Unable to build MiKTeX

David Allsopp
In reply to this post by A
A wrote:
> Aha, you're right!  It turns out that "C:\Program Files\CMake\bin" has its
> own Qt DLLs that interfere with the DLLs that "miktex-texworks.exe" uses,
> so "C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin" needs to go before it in the PATH
> (or you need to remove the CMake directory from the PATH) when running the
> built programs that require the Qt DLLs.  Doing this, then "miktex-
> texworks" can run without the DLLs being in the folder with it.

Good, that was weird otherwise! However, your life will be simpler if you copy the correct DLLs into the folder, as the Windows dynamic linker always first looks in the same directory when loading DLLs.

> Is there a "minimum set" of CTAN libraries that's needed for MiKTeX?  Is
> there a list of these somewhere?
>
> So the "Basic MiKTeX Installer" is not open-sourced like the rest of the
> project??

I don't think there is a public list - although it may be in some of the documents in the source repo (have a grep).

I think only Christian can answer the other question - the installer is certainly a separate project (and it's not uncommon for binary installers to be entirely separate projects).


David


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Q: How can I leave the mailing list?
A: See http://docs.miktex.org/faq/support.html#leavingml
Loading...