Ultimaker / Cura

3D printer / slicing GUI built on top of the Uranium framework
GNU Lesser General Public License v3.0
6.22k stars 2.08k forks source link

Failed in following the steps of https://github.com/Ultimaker/Cura/wiki/Running-Cura-from-Source #15018

Closed alanlt closed 1 year ago

alanlt commented 1 year ago

Application Version

Cura5.3

Platform

Win10

Printer

S5

Reproduction steps

I want to run cura from source in Win10, and follow the Guide of Running-Cura-from-Source I failed in implement the step of 3. Initialize the Virtual Python Development Environment, when I implement the command of "conan install . --build=missing --update -o cura:devtools=True -g VirtualPythonEnv" I don't know how to solve it? Can you help me?

Actual results

PS D:\curaDev\Cura> conan install . --build=missing --update -o cura:devtools=True -g VirtualPythonEnv Configuration (profile_host): [settings] arch=x86_64 arch_build=x86_64 build_type=Release compiler=Visual Studio compiler.cppstd=17 compiler.runtime=MD compiler.version=17 os=Windows os_build=Windows curaengine:compiler.cppstd=20 umspatial*:compiler.cppstd=20 scripta:compiler.cppstd=20 [options] cura:devtools=True [build_requires] [env] [conf] tools.cmake.cmaketoolchain:generator=Ninja tools.env.virtualenv:auto_use=True tools.gnu:define_libcxx11_abi=True

Configuration (profile_build): [settings] arch=x86_64 arch_build=x86_64 build_type=Release compiler=Visual Studio compiler.cppstd=17 compiler.runtime=MD compiler.version=17 os=Windows os_build=Windows [options] [build_requires] [env] [conf] tools.cmake.cmaketoolchain:generator=Ninja tools.env.virtualenv:auto_use=True tools.gnu:define_libcxx11_abi=True

arcus/5.2.2: WARN: Using dependencies specified in conandata.yml for version: 5.2.0-beta.2 while recipe is build for version: 5.2.2 WARN: arcus/5.2.2: requirement standardprojectsettings/[>=0.1.0]@ultimaker/stable overridden by pyarcus/5.2.2 to standardprojectsettings/0.1.0@ultimaker/stable WARN: cpython/3.10.4: requirement zlib/1.2.11 overridden by pyarcus/5.2.2 to zlib/1.2.12 WARN: spdlog/1.10.0: requirement fmt/8.1.1 overridden by curaengine/5.4.0-alpha+testing_41@ultimaker/testing to fmt/9.0.0 WARN: savitar/5.2.2: requirement standardprojectsettings/[>=0.1.0]@ultimaker/stable overridden by pysavitar/5.2.2 to standardprojectsettings/0.1.0@ultimaker/stable WARN: nest2d/5.2.2: requirement standardprojectsettings/[>=0.1.0]@ultimaker/stable overridden by pynest2d/5.2.2 to standardprojectsettings/0.1.0@ultimaker/stable pyarcus/5.2.2: WARN: Package binary is corrupted, removing: 46f4cc8d5d301cf7f04473c21ba4cacf2020349f Version ranges solved umbase/@ultimaker/stable versions found in 'cura' remote Version range '>=0.1.7' required by 'py_require' resolved to 'umbase/0.1.7@ultimaker/stable' in remote 'cura' translationextractor/@ultimaker/stable versions found in 'cura' remote Version range '>=2.1.1' required by 'py_require' resolved to 'translationextractor/2.1.3@ultimaker/stable' in remote 'cura' Version range '>=0.1.7' required by 'py_require' resolved to 'umbase/0.1.7@ultimaker/stable' in remote 'cura' pyprojecttoolchain/@ultimaker/stable versions found in 'cura' remote Version range '>=0.1.6' required by 'py_require' resolved to 'pyprojecttoolchain/0.1.6@ultimaker/stable' in remote 'cura' sipbuildtool/@ultimaker/stable versions found in 'cura' remote Version range '>=0.2.3' required by 'py_require' resolved to 'sipbuildtool/0.2.3@ultimaker/stable' in remote 'cura' standardprojectsettings/*@ultimaker/stable versions found in 'cura' remote Version range '>=0.1.0' required by 'pyarcus/5.2.2' resolved to 'standardprojectsettings/0.1.0@ultimaker/stable' in remote 'cura' Version range '>=0.1.7' required by 'py_require' resolved to 'umbase/0.1.7@ultimaker/stable' in remote 'cura' Version range '>=0.1.0' required by 'arcus/5.2.2' valid for downstream requirement 'standardprojectsettings/0.1.0@ultimaker/stable' Version range '>=0.1.7' required by 'py_require' resolved to 'umbase/0.1.7@ultimaker/stable' in remote 'cura' Version range '>=0.1.6' required by 'py_require' resolved to 'pyprojecttoolchain/0.1.6@ultimaker/stable' in remote 'cura' Version range '>=0.2.3' required by 'py_require' resolved to 'sipbuildtool/0.2.3@ultimaker/stable' in remote 'cura' Version range '>=0.1.0' required by 'pysavitar/5.2.2' resolved to 'standardprojectsettings/0.1.0@ultimaker/stable' in remote 'cura' Version range '>=0.1.7' required by 'py_require' resolved to 'umbase/0.1.7@ultimaker/stable' in remote 'cura' Version range '>=0.1.0' required by 'savitar/5.2.2' valid for downstream requirement 'standardprojectsettings/0.1.0@ultimaker/stable' Version range '>=0.1.7' required by 'py_require' resolved to 'umbase/0.1.7@ultimaker/stable' in remote 'cura' Version range '>=0.1.6' required by 'py_require' resolved to 'pyprojecttoolchain/0.1.6@ultimaker/stable' in remote 'cura' Version range '>=0.2.3' required by 'py_require' resolved to 'sipbuildtool/0.2.3@ultimaker/stable' in remote 'cura' Version range '>=0.1.0' required by 'pynest2d/5.2.2' resolved to 'standardprojectsettings/0.1.0@ultimaker/stable' in remote 'cura' Version range '>=0.2.3' required by 'pynest2d/5.2.2' resolved to 'sipbuildtool/0.2.3@ultimaker/stable' in remote 'cura' Version range '>=0.1.7' required by 'py_require' resolved to 'umbase/0.1.7@ultimaker/stable' in remote 'cura' Version range '>=0.1.0' required by 'nest2d/5.2.2' valid for downstream requirement 'standardprojectsettings/0.1.0@ultimaker/stable' Version range '>=0.1.7' required by 'py_require' resolved to 'umbase/0.1.7@ultimaker/stable' in remote 'cura' Version range '>=2.1.2' required by 'py_require' resolved to 'translationextractor/2.1.3@ultimaker/stable' in remote 'cura'

conanfile.py (cura/None): Installing package Requirements arcus/5.2.2 from 'cura' - Cache boost/1.79.0 from 'cura' - Cache bzip2/1.0.8 from 'cura' - Cache clipper/6.4.2 from 'cura' - Cache cpython/3.10.4 from 'cura' - Cache cura_binarydata/5.4.0-alpha+testing-1@ultimaker/testing from 'cura' - Cache curaengine/5.4.0-alpha+testing_41@ultimaker/testing from 'cura' - Cache expat/2.4.1 from 'cura' - Cache fdm_materials/6.3.0-alpha+testing_332@ultimaker/testing from 'cura' - Cache fmt/9.0.0 from 'cura' - Cache libffi/3.2.1 from 'cura' - Cache mpdecimal/2.5.0 from 'cura' - Cache nest2d/5.2.2 from 'cura' - Cache nlopt/2.7.0 from 'cura' - Cache openssl/1.1.1l from 'cura' - Cache protobuf/3.21.4 from 'cura' - Cache pugixml/1.12.1 from 'cura' - Cache pyarcus/5.2.2 from 'cura' - Cache pynest2d/5.2.2 from 'cura' - Cache pysavitar/5.2.2 from 'cura' - Cache range-v3/0.12.0 from 'cura' - Cache rapidjson/1.1.0 from 'cura' - Cache savitar/5.2.2 from 'cura' - Cache sipbuildtool/0.2.3@ultimaker/stable from 'cura' - Cache spdlog/1.10.0 from 'cura' - Cache sqlite3/3.36.0 from 'cura' - Cache standardprojectsettings/0.1.0@ultimaker/stable from 'cura' - Cache stb/20200203 from 'cura' - Cache tcl/8.6.10 from 'cura' - Cache tk/8.6.10 from 'cura' - Cache uranium/5.4.0-alpha+testing_22@ultimaker/testing from 'cura' - Cache xz_utils/5.2.5 from 'cura' - Cache zlib/1.2.12 from 'cura' - Cache Python requires translationextractor/2.1.3@ultimaker/stable umbase/0.1.7@ultimaker/stable sipbuildtool/0.2.3@ultimaker/stable pyprojecttoolchain/0.1.6@ultimaker/stable Packages arcus/5.2.2:58f840a3b633feabcf5ffb24355fa012f31c9f95 - Cache boost/1.79.0:524ea35a8120baabdde02483add58d81bf541327 - Cache bzip2/1.0.8:53b5fd22ba061620078deefdae9a437c5f693201 - Cache clipper/6.4.2:a6d82b50d0da091cd19a082f292518ff1b7252ea - Cache cpython/3.10.4:1e1dce5c5f980cc9662f9422f167ceffc2aa5e4e - Cache cura_binarydata/5.4.0-alpha+testing-1@ultimaker/testing:ca33edce272a279b24f87dc0d4cf5bbdcffbc187 - Cache curaengine/5.4.0-alpha+testing_41@ultimaker/testing:4cc7606e8a293022b9c22dee1113365cd0470536 - Cache expat/2.4.1:8e589e066a19f700666be77ed94ff8e8bc88ee10 - Cache fdm_materials/6.3.0-alpha+testing_332@ultimaker/testing:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache fmt/9.0.0:517f4eb785d8e0424c0c4c0c8d17ee062e9ad004 - Cache libffi/3.2.1:5a61a86bb3e07ce4262c80e1510f9c05e9b6d48b - Cache mpdecimal/2.5.0:5c8fc3ef602a8e57d81400f2865131af6a719c3d - Cache nest2d/5.2.2:f52bfaf660370a1d3a188de5d1bbd0abbcb4d677 - Cache nlopt/2.7.0:dca97d52f12f2bbe316aa4b1e2734ba69c011723 - Cache openssl/1.1.1l:5a61a86bb3e07ce4262c80e1510f9c05e9b6d48b - Cache protobuf/3.21.4:f14708d28559c0b096a7a0ee212e60ec3c0b3846 - Cache pugixml/1.12.1:a6d82b50d0da091cd19a082f292518ff1b7252ea - Cache pyarcus/5.2.2:46f4cc8d5d301cf7f04473c21ba4cacf2020349f - Build pynest2d/5.2.2:c7f90df6f8bd4bb2315945da77a35700f9d3c0b5 - Build pysavitar/5.2.2:76a6ddca501102b2e48fd52f6065ff36c6578668 - Build range-v3/0.12.0:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache rapidjson/1.1.0:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache savitar/5.2.2:b2b0feb9085dca980ff6ef49db74f7f57e76c757 - Cache sipbuildtool/0.2.3@ultimaker/stable:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache spdlog/1.10.0:3bcd69c83fe5a938f8f46a48459967aef822bb69 - Cache sqlite3/3.36.0:d4c90a44e87a0129d6c89e58d1337c25a5bec2b4 - Cache standardprojectsettings/0.1.0@ultimaker/stable:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache stb/20200203:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache tcl/8.6.10:fcff1a7682b466eb6f2504a0d9ba2400f494d9a7 - Cache tk/8.6.10:604976367e9e090940576d923c0209d158388d81 - Cache uranium/5.4.0-alpha+testing_22@ultimaker/testing:2522bab4dac4234dda1a8f85526096f67fc78645 - Cache xz_utils/5.2.5:5a61a86bb3e07ce4262c80e1510f9c05e9b6d48b - Cache zlib/1.2.12:5a61a86bb3e07ce4262c80e1510f9c05e9b6d48b - Cache

Installing (downloading, building) binaries... boost/1.79.0: Already installed! bzip2/1.0.8: Already installed! bzip2/1.0.8: Appending PATH environment variable: C:.conan\1a6ec2\1\bin clipper/6.4.2: Already installed! cura_binarydata/5.4.0-alpha+testing-1@ultimaker/testing: Already installed! expat/2.4.1: Already installed! fdm_materials/6.3.0-alpha+testing_332@ultimaker/testing: Already installed! fmt/9.0.0: Already installed! libffi/3.2.1: Already installed! mpdecimal/2.5.0: Already installed! nlopt/2.7.0: Already installed! openssl/1.1.1l: Already installed! pugixml/1.12.1: Already installed! range-v3/0.12.0: Already installed! rapidjson/1.1.0: Already installed! sipbuildtool/0.2.3@ultimaker/stable: Already installed! sqlite3/3.36.0: Already installed! sqlite3/3.36.0: Appending PATH env var with : C:.conan\f303b3\1\bin standardprojectsettings/0.1.0@ultimaker/stable: Already installed! stb/20200203: Already installed! xz_utils/5.2.5: Already installed! zlib/1.2.12: Already installed! nest2d/5.2.2: Already installed! protobuf/3.21.4: Already installed! protobuf/3.21.4: Appending PATH environment variable: C:.conan\6859bc\1\bin savitar/5.2.2: Already installed! spdlog/1.10.0: Already installed! tcl/8.6.10: Already installed! tcl/8.6.10: Setting TCL_LIBRARY environment variable to C:.conan\6443e9\1\lib\tcl8.6 tcl/8.6.10: Setting TCL_ROOT environment variable to C:.conan\6443e9\1 tcl/8.6.10: Setting TCLSH environment variable to C:.conan\6443e9\1\bin\tclsh86tsx.exe tcl/8.6.10: Adding PATH environment variable: C:.conan\6443e9\1\bin arcus/5.2.2: Already installed! tk/8.6.10: Already installed! tk/8.6.10: Setting TK_LIBRARY environment variable: C:/.conan/f73f0e/1/lib/tk8.6 tk/8.6.10: Setting TCL_ROOT environment variable: C:/.conan/f73f0e/1 cpython/3.10.4: Already installed! cpython/3.10.4: Appending PATH environment variable: C:.conan\69cd6c\1\bin cpython/3.10.4: Setting PYTHON environment variable: C:.conan\69cd6c\1\bin\python.exe cpython/3.10.4: Setting PYTHONHOME environment variable: C:.conan\69cd6c\1\bin cpython/3.10.4: Setting PYTHON_ROOT environment variable: C:.conan\69cd6c\1 curaengine/5.4.0-alpha+testing_41@ultimaker/testing: Already installed! pyarcus/5.2.2: WARN: Build folder is dirty, removing it: C:.conan\7cba0c\1 pyarcus/5.2.2: Copying sources to build folder pyarcus/5.2.2: Building your package in C:.conan\7cba0c\1 pyarcus/5.2.2: Generator 'VirtualBuildEnv' calling 'generate()' pyarcus/5.2.2: Generator 'CMakeDeps' calling 'generate()' pyarcus/5.2.2: Generator 'VirtualRunEnv' calling 'generate()' pyarcus/5.2.2: Calling generate() ['\n[build-system]\nrequires = ["sip >=6, <7", "setuptools>=40.8.0", "wheel"]\nbuild-backend = "sipbuild.api"', '\n[tool.sip.metadata]\nname = "pyArcus"\nversion = "5.2.2"\nsummary = "Communication library between internal components for Ultimaker software"\nhome-page = "https://github.com/Ultimaker/libArcus"\nauthor = "Ultimaker B.V."\nlicense = "LGPL-3.0"\ndescription-file = "README.md"\nrequires-python = ">=3.10.4"', '\n[tool.sip.project]\ncompile = false\nsip-files-dir = "python"\nbuild-dir = "C:/.conan/7cba0c/1/build/Release"\ntarget-dir = "C:/.conan/8781db/1/site-packages"\npy-include-dir = "C:/.conan/69cd6c/1/bin/include"\npy-major-version = 3\npy-minor-version = 10', "\n[tool.sip.bindings.pyArcus]\nexceptions = true\nrelease-gil = true\nlibraries = ['Arcus', 'python310', 'libprotoc', 'libprotobuf', 'libssl', 'libcrypto', 'libexpatMD', 'libffi', 'libmpdec++-2.5.0', 'libmpdec-2.5.0', 'bz2', 'sqlite3', 'tk86tsx', 'tkstub86', 'lzma', 'tcl86tsx', 'tcldde14sx', 'tclreg13sx', 'tclstub86', 'zlib']\nlibrary-dirs = ['C:/.conan/1881b9/1/lib', 'C:/.conan/69cd6c/1/bin/libs', 'C:/.conan/6859bc/1/lib', 'C:/.conan/4d717a/1/lib', 'C:/.conan/241174/1/lib', 'C:/.conan/eb1af4/1/lib', 'C:/.conan/7bfe13/1/lib', 'C:/.conan/1a6ec2/1/lib', 'C:/.conan/f303b3/1/lib', 'C:/.conan/f73f0e/1/lib', 'C:/.conan/7219a5/1/lib', 'C:/.conan/6443e9/1/lib', 'C:/.conan/b28da8/1/lib']\ninclude-dirs = ['C:/.conan/1881b9/1/include', 'C:/.conan/69cd6c/1/bin/include', 'C:/.conan/6859bc/1/include', 'C:/.conan/4d717a/1/include', 'C:/.conan/241174/1/include', 'C:/.conan/eb1af4/1/include', 'C:/.conan/7bfe13/1/include', 'C:/.conan/1a6ec2/1/include', 'C:/.conan/f303b3/1/include', 'C:/.conan/f73f0e/1/include', 'C:/.conan/7219a5/1/include', 'C:/.conan/6443e9/1/include', 'C:/.conan/b28da8/1/include', 'include']\npep484-pyi = true\nstatic = false\ndebug = false", "\nheaders = ['PythonMessage.h']\nsources = ['src/PythonMessage.cpp']", "\nextra-compile-args = ['/std:c++17', '-MD', '-O2', '-Ob2']\nextra-link-args = []"] pyarcus/5.2.2: Preset 'release' added to CMakePresets.json. Invoke it manually using 'cmake --preset release' pyarcus/5.2.2: If your CMake version is not compatible with CMakePresets (<3.19) call cmake like: 'cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE=C:.conan\7cba0c\1\build\generators\conan_toolchain.cmake -DCMAKE_POLICY_DEFAULT_CMP0091=NEW -DCMAKE_BUILD_TYPE=Release' pyarcus/5.2.2: Calling:

"sip-build"

----Running------

"sip-build"

These bindings will be built: pyArcus. Generating the pyArcus bindings... Generating the pyArcus .pyi file... The project has been built. pyarcus/5.2.2: Aggregating env generators pyarcus/5.2.2: Calling build() pyarcus/5.2.2: CMake command: cmake -G "Ninja" -DCMAKE_TOOLCHAIN_FILE="C:/.conan/7cba0c/1/build/generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="C:/.conan/8781db/1" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" -DCMAKE_BUILD_TYPE="Release" "C:.conan\7cba0c\1."

----Running------

"C:.conan\7cba0c\1\build\generators\conanbuild.bat" && cmake -G "Ninja" -DCMAKE_TOOLCHAIN_FILE="C:/.conan/7cba0c/1/build/generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="C:/.conan/8781db/1" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" -DCMAKE_BUILD_TYPE="Release" "C:.conan\7cba0c\1."

系统找不到指定的路径。 pyarcus/5.2.2: pyarcus/5.2.2: ERROR: Package '46f4cc8d5d301cf7f04473c21ba4cacf2020349f' build failed pyarcus/5.2.2: WARN: Build folder C:.conan\7cba0c\1\build\Release ERROR: pyarcus/5.2.2: Error in build() method, line 104 cmake.configure() ConanException: Error 1 while executing cmake -G "Ninja" -DCMAKE_TOOLCHAIN_FILE="C:/.conan/7cba0c/1/build/generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="C:/.conan/8781db/1" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" -DCMAKE_BUILD_TYPE="Release" "C:.conan\7cba0c\1."

Expected results

implement sucessfully.

Checklist of files to include

Additional information & file uploads

conan_Log.txt

MariMakes commented 1 year ago

Hey @alanlt,

😖 Sorry to hear you are stuck. Is that still the case?

I'm only a fledgling member of the Build From Source Club 👑 Before we get started, I have a few questions to narrow down the troubleshooting:

  1. Can you make sure you have specifically Conan version 1.56.0?
    pip install conan == 1.56.0 --force You can check the Conan Documentation for the latest version and installation instructions

  2. Did you try clearing the Conan Cache? conan remove "*" -f

  3. Can you make sure you have the latest config with this command? conan config install https://github.com/Ultimaker/conan-config.git

  4. Can you make sure you have a default profile? conan profile new default --detect --force

  5. With these steps you should have a clean slate and you can follow the steps on our wiki again. You can find it here.

If you are stuck in any way, please reach out. We are happy to help out. The best way to do that is to provide us with your complete run-out log. Not just the part that fails, but all the lines generated after you've given your command. We need it see your profiles and packages.

Can you help me understand. What do you want to achieve by creating a Build? Are you intending to share it with others or are you using it for research purposes? I would love to know more about your project, maybe we can help.

alanlt commented 1 year ago

Thank you for your anwer, MariMakes. Now my problem was solved. I think what I did which may be related are as below:

  1. I specifically installed “MSVC v140-VS2015 C++生成工具”. 生成工具 means Generation tool.
  2. I closed my firewall. Then it works. I don't know which one is to solve the problem exactly. And I'm confused in your Step 1 of the Guide:

**Installation

  1. Configure Conan pip install conan --upgrade conan config install https://github.com/ultimaker/conan-config.git conan profile new default --detect --force**

Since we are forced to use conan 1.56.0. Why does the Guide include "pip install conan --upgrade"? It will make conan upgraded to the latest version. Is it wrong or for any other special purpose? Thanks.

MariMakes commented 1 year ago

Glad to hear your issue is resolved.

The upgrade was true for a while until there was a bug that broke our workflow. I was under the impression that it already was corrected, but it's clearly not. I'll ask the team to take a look 👍

Good luck.

stephenlang84 commented 1 year ago

Hey @alanlt,

😖 Sorry to hear you are stuck. Is that still the case?

I'm only a fledgling member of the Build From Source Club 👑 Before we get started, I have a few questions to narrow down the troubleshooting:

1. Can you make sure you have specifically Conan version 1.56.0?
   `pip install conan == 1.56.0 --force `
   You can check the [Conan Documentation](https://docs.conan.io/en/latest/installation.html) for the latest version and installation instructions

2. Did you try clearing the Conan Cache?
   `conan remove "*" -f `

3. Can you make sure you have the latest config with this command?
   `conan config install https://github.com/Ultimaker/conan-config.git`

4. Can you make sure you have a default profile?
   `conan profile new default --detect --force`

5. With these steps you should have a clean slate and you can follow the steps on our wiki again.
   [You can find it here. ](https://github.com/Ultimaker/Cura/wiki/Running-Cura-from-Source)

If you are stuck in any way, please reach out. We are happy to help out. The best way to do that is to provide us with your complete run-out log. Not just the part that fails, but all the lines generated after you've given your command. We need it see your profiles and packages.

Can you help me understand. What do you want to achieve by creating a Build? Are you intending to share it with others or are you using it for research purposes? I would love to know more about your project, maybe we can help.

@MariMakes I'm trying to build Cura and CuraEngine on the same machine. As noted in cura configure conan, it requires minimum version is 1.62 to build Cura. Is there any solution to work with both Cura and CuraEngine and conan 1.62 and 1.56 ? Thanks for reading.