inexorgame-obsolete / deprecated-cube-engine-inexor

UNMAINTAINED: Please have a look at the vulkan-renderer
https://inexor.org
zlib License
11 stars 1 forks source link

WIP: Support Visual Studio 2017 + Python3 #388

Closed Croydon closed 7 years ago

Croydon commented 7 years ago

We want to support VS2017 + Python3.

Croydon commented 7 years ago

I'm running into the following error for Boost on both Win10 and Win7

missing argument global-setup C:/.conan/cg4_1fo6/1/boost_1_60_0/tools/build/src/tools\msvc.jam:798:see definition of rule 'generate-setup-cmd' being called


Boost/1.60.0@lasote/stable: Building your package in C:/.conan\cg4_1fo6\1 Boost/1.60.0@lasote/stable: Copying sources to build folder Boost/1.60.0@lasote/stable: Generated txt created conanbuildinfo.txt Building Boost.Build engine cl : Befehlszeile warning D9035 : Die Option "GZ" ist veraltet und wird in einer der nächsten Versionen entfernt. cl : Befehlszeile warning D9036 : "RTC1" anstelle von "GZ" verwenden cl : Befehlszeile warning D9002 : Unbekannte Option "/MLd" wird ignoriert.

Bootstrapping is done. To build, run:

.\b2

To adjust configuration, edit 'project-config.jam'. Further information:

- Command line help:
.\b2 --help

- Getting started guide:
http://boost.org/more/getting_started/windows.html

- Boost.Build documentation:
http://www.boost.org/build/doc/html/index.html

Boost/1.60.0@lasote/stable: WARN: cd boost_1_60_0 && b2 toolset=msvc-15.0 link=static runtime-link=static variant=debug address-model=64 -j8 --abbreviate-paths --without-python C:/.conan/cg4_1fo6/1/boost_1_60_0/tools/build/src/tools\msvc.jam:1072: in configure-really *** argument error

Boost/1.60.0@lasote/stable: ERROR: Package '0bd0c413b56aaec57c0f222a89b4e565a6729027' build failed Boost/1.60.0@lasote/stable: WARN: Build folder C:/.conan\cg4_1fo6\1 Boost/1.60.0@lasote/stable: WARN: File "C:\Users\Micha.conan\data\Boost\1.60.0\lasote\stable\export\conanfile.py", line 236, in build Boost/1.60.0@lasote/stable: WARN: self.run(full_command)#, output=False) Boost/1.60.0@lasote/stable: WARN: File "c:\users\micha\appdata\local\programs\python\python36\lib\site-packages\conans\model\conan_file.py", line 243, in run Boost/1.60.0@lasote/stable: WARN: raise ConanException("Error %d while executing %s" % (retcode, command)) Boost/1.60.0@lasote/stable: WARN: conans.errors.ConanException: Error 1 while executing cd boost_1_60_0 && b2 toolset=msvc-15.0 link=static runtime-link=static variant=debug address-model=64 -j8 --abbreviate-paths --without-python ERROR: Boost: Error 1 while executing cd boost_1_60_0 && b2 toolset=msvc-15.0 link=static runtime-link=static variant=debug address-model=64 -j8 --abbreviate-paths --without-python

a-teammate commented 7 years ago

You could try upgrading boost then Btw if you name the one file create vs 2017 bat the other one should be named 2015, or is it?

Croydon commented 7 years ago

Btw if you name the one file create vs 2017 bat the other one should be named 2015, or is it?

That's exactly what did happen in the commit :)

Croydon commented 7 years ago

With Boost 1.62 I run into https://svn.boost.org/trac/boost/ticket/12862

Croydon commented 7 years ago

@Terencode has the same Python3 problem with the Boost package on ArchLinux.

Croydon commented 7 years ago

I updated the Protobuf package, would be nice if someone could verify that it is still working with Python2. https://github.com/inexor-game/conan-protobuf/compare/696e0cce5dd8...40e421c04d6f

Next error: Inexor GlueGen, this also blocks AppVeyor. https://gist.github.com/Croydon/85d4116f0dea396ec7ef2cb144544639

a-teammate commented 7 years ago

The boost error is: it looks for 150 but has 141. Dunno how to fix that though (I can't this weekend)

Croydon commented 7 years ago

The solution is to simply update to CMake >= v3.8.1 🎉🎉 Correction: Should have been fixed there: https://gitlab.kitware.com/rleigh/cmake/commit/3ca6f70f8b27c08ad3470542705701e6e8e6ea05#6869d19a13e112f1c01d928ec1c0f76d18f30d64_903_906 https://gitlab.kitware.com/cmake/cmake/issues/16631 https://gitlab.kitware.com/cmake/cmake/merge_requests/639/commits

Croydon commented 7 years ago

@a-teammate Could we please keep a seperated dependencies.py file? It makes it easier to read the deps in other scripts, which could be handy e.g. CI.

a-teammate commented 7 years ago

Yes, seems legit. The problem is: you will miss all dependencies of our dependencies. So it's probably better to use the conanino.txt in the build dir.

At boost: nice that the error is not on our side. maybe we could just try another boost package. Maybe it's working with vc150 somewhere. (Alternatively we could export the fixed findboost in conan.)

On the python 2/3 error: maybe that helps? http://lucumr.pocoo.org/2014/1/5/unicode-in-2-and-3/ I think your solution is correct: we don't want a generally applicable replace_in_file_regex() function, but just a little helper which does not even need to deal with unicode ( I think).

Croydon commented 7 years ago

At boost: nice that the error is not on our side.

At least in theory, it should be fixed with CMake v3.8.1 but obviously isn't.

Protobuf: I'm not sure anymore if this is still a general Python2/Python3 thing. Seems like I was able to build Protobuf with Python2 on Linux and Python3 and Windows. Maybe a Python2 specific Windows thing since AppVeyor dies at that point?

a-teammate commented 7 years ago

Remaining error is in CEF inexorgame/stable (did this package even need adjustments?? If a downgrade to a_teammate/stable works, we should check where the difference between those is) error:

CMake Error: Error in cmake code at
/home/[secure]/.conan/data/CEF/3.2704.1424.gc3f0a5b/inexorgame/stable/build/6b33f5e879067eb8e138edf3adcd7e92c61c5316/CMakeLists.txt:55:
Parse error.  Expected a command name, got unquoted argument with text "'".
-- Configuring incomplete, errors occurred!
CEF/3.2704.1424.gc3f0a5b@inexorgame/stable: ERROR: Package '6b33f5e879067eb8e138edf3adcd7e92c61c5316' build failed
CEF/3.2704.1424.gc3f0a5b@inexorgame/stable: WARN: Build folder /home/[secure]/.conan/data/CEF/3.2704.1424.gc3f0a5b/inexorgame/stable/build/6b33f5e879067eb8e138edf3adcd7e92c61c5316
ERROR: CEF/3.2704.1424.gc3f0a5b@inexorgame/stable: Error in build() method, line 58
    self.run('cmake {} {} {}'.format(self.conanfile_directory, cmake.command_line, " ".join(args)))
    ConanException: Error 256 while executing cmake /home/[secure]/.conan/data/CEF/3.2704.1424.gc3f0a5b/inexorgame/stable/build/6b33f5e879067eb8e138edf3adcd7e92c61c5316 -G "Unix Makefiles" -DCMAKE_BUILD_TYPE="Release" -DCONAN_EXPORTED="1" -DCONAN_COMPILER="clang" -DCONAN_COMPILER_VERSION="3.5" -DCONAN_CXX_FLAGS="-m64" -DCONAN_SHARED_LINKER_FLAGS="-m64" -DCONAN_C_FLAGS="-m64" -DCONAN_LIBCXX="libstdc++11" -Wno-dev -DCEF_ROOT=cef_binary_3.2704.1424.gc3f0a5b_linux64 -DUSE_SANDBOX=OFF
a-teammate commented 7 years ago

Ill squash this together and i think we can merge this state afterwards! :) (I think we should postpone any non-required dependency changes to another PR)