By the way, if someone need to retrieve VS2013 Community, here's a link to full ISO for offline install:
https://go.microsoft.com/fwlink/?LinkId ... lcid=0x409
Compiling on Windows
Re: Compiling on Windows
Huh, yes it seems you're right. The really strange part though is that compiling from the VS2013 command prompt still does not work for me (presumably because it is no longer available from MS with an x64 native command prompt?) - it appears to fail at:
Code: Select all
-- Using Win32 for window creation
-- Configuring done
-- Generating done
-- Build files have been written to: E:/luxcorerender/WindowsCompile/Build_CMake/LuxCore
'msbuild' is not recognized as an internal or external command,
operable program or batch file.
--- FATAL ERROR RUNNING CMAKE ---
Re: Compiling on Windows
I can't understand what's going on there... I have installed yesterday VS2013 from scratch, using the ISO I linked above, and the x64 Native prompt is available...gecko wrote: ↑Sun Jan 14, 2018 4:45 pm The really strange part though is that compiling from the VS2013 command prompt still does not work for me (presumably because it is no longer available from MS with an x64 native command prompt?) - it appears to fail at:
...
So perhaps for new coders we now need to install both VS2013 for the underlying compiler, and VS2015+ for the x64 native command prompt?
B.Y.O.B. posted the contents of that link to the x64 Native prompt before in this thread: have you tried to do that manually?
Maybe you could try reinstalling everything.
Re: Compiling on Windows
Thanks for the direct link to the ISO, didn't see your post earlier - I'm able to download this one. BYOB's link is the one I followed previously which only offered me downloads of x86 versions of VS2013. Perhaps a regional lock on versions (though that would be pretty strange for MS to have a regional lock in the US), or something to do with my MS account profile that doesn't allow me access to VS2013 x64? I've also read on several dev forums that V2013 x64 command prompt doesn't exist, so doesn't seem to be just me experiencing the problem. Anyway, really strange.acasta69 wrote: ↑Sun Jan 14, 2018 5:41 pm I can't understand what's going on there... I have installed yesterday VS2013 from scratch, using the ISO I linked above, and the x64 Native prompt is available...
B.Y.O.B. posted the contents of that link to the x64 Native prompt before in this thread: have you tried to do that manually?
Maybe you could try reinstalling everything.
Probably not worth worrying about any longer. I have a working compile environment, and the project has two functional solutions for others interested in contributing: direct link to download a version of VS2013 with x64 command prompt, and an alternate functional workaround (install any version of VS2013 and use VS2017 x64's command prompt). Appreciate your help figuring all of this out!
Re: Compiling on Windows
Building on Windows from latest today's commits gives a bunch of errors like the following:
I have no idea of possible reason, I assume it's working on Linux
Code: Select all
F:\Ale\Devel\LuxCoreRender\LuxCore\include\luxrays/utils/fileext.h(36)
: error C2784: 'std::_Revranit<_RanIt,_Base> std::operator +(_Diff,const
std::_Revranit<_RanIt,_Base> &)' : could not deduce template argument f
or 'const std::_Revranit<_RanIt,_Base> &' from 'const boost::filesystem:
:path::value_type' (F:\Ale\Devel\LuxCoreRender\LuxCore\src\slg\film\film
outputs.cpp) [F:\Ale\Devel\LuxCoreRender\WindowsCompile\Build_CMake\LuxC
ore\src\slg\slg-film.vcxproj]
F:\Ale\Devel\LuxCoreRender\LuxCore\include\luxrays/utils/fileext.h(36)
: error C2784: 'std::reverse_iterator<_RanIt> std::operator +(_Diff,cons
t std::reverse_iterator<_RanIt> &)' : could not deduce template argument
for 'const std::reverse_iterator<_RanIt> &' from 'const boost::filesyst
em::path::value_type' (F:\Ale\Devel\LuxCoreRender\LuxCore\src\slg\film\f
ilmoutputs.cpp) [F:\Ale\Devel\LuxCoreRender\WindowsCompile\Build_CMake\L
uxCore\src\slg\slg-film.vcxproj]
F:\Ale\Devel\LuxCoreRender\LuxCore\include\luxrays/utils/fileext.h(36)
: error C2784: 'std::_Array_iterator<_Ty,_Size> std::operator +(_Array_i
terator<_Ty,_Size>::difference_type,std::_Array_iterator<_Ty,_Size>)' :
could not deduce template argument for 'std::_Array_iterator<_Ty,_Size>'
from 'const boost::filesystem::path::value_type' (F:\Ale\Devel\LuxCoreR
ender\LuxCore\src\slg\film\filmoutputs.cpp) [F:\Ale\Devel\LuxCoreRender\
WindowsCompile\Build_CMake\LuxCore\src\slg\slg-film.vcxproj]
F:\Ale\Devel\LuxCoreRender\LuxCore\include\luxrays/utils/fileext.h(36)
: error C2784: 'std::move_iterator<_RanIt> std::operator +(_Diff,const s
td::move_iterator<_RanIt> &)' : could not deduce template argument for '
const std::move_iterator<_RanIt> &' from 'const boost::filesystem::path:
:value_type' (F:\Ale\Devel\LuxCoreRender\LuxCore\src\slg\film\filmoutput
s.cpp) [F:\Ale\Devel\LuxCoreRender\WindowsCompile\Build_CMake\LuxCore\sr
c\slg\slg-film.vcxproj]
F:\Ale\Devel\LuxCoreRender\LuxCore\include\luxrays/utils/fileext.h(36)
: error C2784: 'std::_String_const_iterator<_Mystr> std::operator +(_Str
ing_const_iterator<_Mystr>::difference_type,std::_String_const_iterator<
_Mystr>)' : could not deduce template argument for 'std::_String_const_i
terator<_Mystr>' from 'const boost::filesystem::path::value_type' (F:\Al
e\Devel\LuxCoreRender\LuxCore\src\slg\film\filmoutputs.cpp) [F:\Ale\Deve
l\LuxCoreRender\WindowsCompile\Build_CMake\LuxCore\src\slg\slg-film.vcxp
roj]
F:\Ale\Devel\LuxCoreRender\LuxCore\include\luxrays/utils/fileext.h(36)
: error C2676: binary '+' : 'const std::string' does not define this ope
rator or a conversion to a type acceptable to the predefined operator (F
:\Ale\Devel\LuxCoreRender\LuxCore\src\luxcore\luxcoreimpl.cpp) [F:\Ale\D
evel\LuxCoreRender\WindowsCompile\Build_CMake\LuxCore\src\luxcore\luxcor
e.vcxproj]
Re: Compiling on Windows
I was so sure that was going to hunt me
boost::filesystem::path::preferred_separator is char (8bit) on Linux and wchar (16bit) on Windows. Anyway, I should have fixed the problem.
P.S. we are going to pack the v2.0alpha2 binaries soon, I will post here when we are ready.