miktex icon indicating copy to clipboard operation
miktex copied to clipboard

Can you update the way to build miktex, the official guide is so out of date

Open klefo0 opened this issue 2 years ago • 8 comments
trafficstars

  1. Background I'm build a 32-bit of v22.7.25, just before 32-bit deprecate. I follow all the step on the official guide.

  2. Preparation

Download CMake lastest version (v3.27.6 64bit) Download Qt 5.12.12 (there will have a problem with it, a bit simple google will help you) Download vs2017 pro from Microsoft official link archive. And the other file is from official link of it follow by the wikipedia page that link in official guide.

After setup all of the thing, when I nmake it and this error show.

image

And then i tried this kit that Cmake plugin in Vscode detects

image

Then the error stays the same as above

image

klefo0 avatar Oct 19 '23 15:10 klefo0

I was able to build it on Linux last month when writing a PR, but your error message makes it seem like you do not have the necessary Windows SDKs installed or your VS Code installation is misconfigured.

That said, there are long-standing documentation issues on these repos from several years ago, so I do not anticipate the build guide being updated anytime soon. You might want to debug more on your own or consult, e.g., the Discussions pages, Stack Overflow, etc.

ragibson avatar Oct 20 '23 19:10 ragibson

Thank you, btw, do you knows how can it get a binary build for v22.7.25, cus when i using v2.9 its cannot find packages and throw cannot update error

klefo0 avatar Oct 21 '23 09:10 klefo0

Here is my package installation configure

image image

Here is the kit config in VSCode

[
  {
    "name": "GCC 11.4.0 i686-w64-mingw32",
    "compilers": {
      "C": "C:\\cygwin64\\bin\\i686-w64-mingw32-gcc.exe",
      "CXX": "C:\\cygwin64\\bin\\i686-w64-mingw32-g++.exe"
    },
    "isTrusted": true,
    "environmentVariables": {
      "CMT_MINGW_PATH": "C:\\cygwin64\\bin"
    }
  },
  {
    "name": "GCC 11.4.0 x86_64-pc-cygwin",
    "compilers": {
      "C": "C:\\cygwin64\\bin\\gcc.exe",
      "CXX": "C:\\cygwin64\\bin\\g++.exe"
    },
    "isTrusted": true
  },
  {
    "name": "GCC 11.4.0 x86_64-w64-mingw32",
    "compilers": {
      "C": "C:\\cygwin64\\bin\\x86_64-w64-mingw32-gcc.exe",
      "CXX": "C:\\cygwin64\\bin\\x86_64-w64-mingw32-g++.exe"
    },
    "isTrusted": true,
    "environmentVariables": {
      "CMT_MINGW_PATH": "C:\\cygwin64\\bin"
    }
  },
  {
    "name": "Visual Studio Professional 2017 Release - amd64",
    "visualStudio": "e6353a09",
    "visualStudioArchitecture": "x64",
    "isTrusted": true,
    "preferredGenerator": {
      "name": "Visual Studio 15 2017",
      "platform": "x64",
      "toolset": "host=x64"
    }
  },
  {
    "name": "Visual Studio Professional 2017 Release - amd64_x86",
    "visualStudio": "e6353a09",
    "visualStudioArchitecture": "x64",
    "isTrusted": true,
    "preferredGenerator": {
      "name": "Visual Studio 15 2017",
      "platform": "win32",
      "toolset": "host=x64"
    }
  },
  {
    "name": "Visual Studio Professional 2017 Release - x86",
    "visualStudio": "e6353a09",
    "visualStudioArchitecture": "x86",
    "isTrusted": true,
    "preferredGenerator": {
      "name": "Visual Studio 15 2017",
      "platform": "win32",
      "toolset": "host=x86"
    }
  },
  {
    "name": "Visual Studio Professional 2017 Release - x86_amd64",
    "visualStudio": "e6353a09",
    "visualStudioArchitecture": "x86",
    "isTrusted": true,
    "preferredGenerator": {
      "name": "Visual Studio 15 2017",
      "platform": "x64",
      "toolset": "host=x86"
    }
  },
  {
    "name": "VisualStudio.14.0 - amd64",
    "visualStudio": "VisualStudio.14.0",
    "visualStudioArchitecture": "x64",
    "isTrusted": true,
    "preferredGenerator": {
      "name": "Visual Studio 14 2015",
      "platform": "x64"
    }
  },
  {
    "name": "VisualStudio.14.0 - amd64_x86",
    "visualStudio": "VisualStudio.14.0",
    "visualStudioArchitecture": "x64",
    "isTrusted": true,
    "preferredGenerator": {
      "name": "Visual Studio 14 2015",
      "platform": "win32"
    }
  },
  {
    "name": "VisualStudio.14.0 - x86",
    "visualStudio": "VisualStudio.14.0",
    "visualStudioArchitecture": "x86",
    "isTrusted": true,
    "preferredGenerator": {
      "name": "Visual Studio 14 2015",
      "platform": "win32"
    }
  },
  {
    "name": "VisualStudio.14.0 - x86_amd64",
    "visualStudio": "VisualStudio.14.0",
    "visualStudioArchitecture": "x86",
    "isTrusted": true,
    "preferredGenerator": {
      "name": "Visual Studio 14 2015",
      "platform": "x64"
    }
  }
]

Here is build command config in VSCode "C:\Program Files\CMake\bin\cmake.EXE" --build c:/Users/Klefo/Desktop/build-miktex/miktex-22.7.25/build --config Release --target all -j 10 --

If anyone know something wrong, please let me know.

klefo0 avatar Oct 21 '23 11:10 klefo0

I was able to build it on Linux last month when writing a PR, but your error message makes it seem like you do not have the necessary Windows SDKs installed or your VS Code installation is misconfigured.

That said, there are long-standing documentation issues on these repos from several years ago, so I do not anticipate the build guide being updated anytime soon. You might want to debug more on your own or consult, e.g., the Discussions pages, Stack Overflow, etc.

@ragibson Can I ask you about the exxperience when you build on Linux, because some package to build a Windows binary I cannot found on Internet like makehm?

klefo0 avatar Oct 30 '23 08:10 klefo0

@ragibson Can I ask you about the exxperience when you build on Linux, because some package to build a Windows binary I cannot found on Internet like makehm?

I remember the list of dependencies on MiKTeX's website being pretty incomplete, but everything was available in apt, so it took maybe ~5-10 minutes to get through the various dependency issues before it would build completely.

Basically, I repeatedly built the code, noted which header files were missing, and then installed the corresponding library's development packages with apt (sometimes after an apt-cache search query if I didn't immediately recognize the library).

ragibson avatar Oct 30 '23 21:10 ragibson

@ragibson Can I ask you about the exxperience when you build on Linux, because some package to build a Windows binary I cannot found on Internet like makehm?

I remember the list of dependencies on MiKTeX's website being pretty incomplete, but everything was available in apt, so it took maybe ~5-10 minutes to get through the various dependency issues before it would build completely.

Basically, I repeatedly built the code, noted which header files were missing, and then installed the corresponding library's development packages with apt (sometimes after an apt-cache search query if I didn't immediately recognize the library).

Thank you, by any chance do you know how to solve this problem

INFOfribidi libs: /usr/lib/x86_64-linux-gnu/libfribidi.so
INFOfribidi incs: /usr/include/fribidi;/usr/include
CMake Error at /usr/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message):
  Could NOT find GD (missing: GD_LIBRARY GD_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:458 (_FPHSA_FAILURE_MESSAGE)
  cmake/modules/FindGD.cmake:21 (find_package_handle_standard_args)
  CMakeLists.txt:1132 (find_package)

I've install php-gd lib and php7.6-gd lib, but they cannot recognize that lib, did i do something wrong?

klefo0 avatar Oct 31 '23 04:10 klefo0

INFOfribidi libs: /usr/lib/x86_64-linux-gnu/libfribidi.so
INFOfribidi incs: /usr/include/fribidi;/usr/include
CMake Error at /usr/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message):
  Could NOT find GD (missing: GD_LIBRARY GD_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:458 (_FPHSA_FAILURE_MESSAGE)
  cmake/modules/FindGD.cmake:21 (find_package_handle_standard_args)
  CMakeLists.txt:1132 (find_package)

I've install php-gd lib and php7.6-gd lib, but they cannot recognize that lib, did i do something wrong?

I think that'll probably be libgd-dev - GD Graphics Library (development version).

ragibson avatar Oct 31 '23 13:10 ragibson

I think that'll probably be libgd-dev - GD Graphics Library (development version).

Hey, thank you, it's worked!

klefo0 avatar Nov 03 '23 01:11 klefo0