Closed Justinfront closed 9 years ago
The error looks like a MSVC compiler error, a clean build may be needed.
Try deleting the bin folder (or build with flow run --clean
which does the same thing).
I definitely deleted the bin folder at least once today after all the updating git's and ndll etc... the haxe git luxe command seemed to take forever i am really not sure why. I tried to eliminate all aspects. But tomorrow morning I can try the flow run -clean. The code works fine for luxe web target and I am pretty sure we are not doing anything specifically in our code different for luxe web and windows targets for the geometry code, and the code worked fine on the 5th of April and the only modifications made are related to luxe pixels I don't believe any have been made in relation to geometry. In fact I guess hxDaedalus is quite a good test for graphics changes. So at the moment I am leaning towards a luxe/snow bug, but I can try to dig a bit deeper into luxe code I am unsure how to create the ndll, do you have some clues on how that all works and how the c externs are created etc... I have played a long time ago with the FFI but not touched it in a few years and I expect your using it different.
@Justinfront, actually could be the same problem I have on my windows machine (discussed it a few days ago on gitter with @underscorediscovery). To see if it's it please try running the Luxe rendertexture demo (in luxe\git\tests\rendering\rendertexture
), which for me doesn't work when targeting native, but does with web.
Just tried it on mac, actually I went through all these already on the mac, trying to rem when I last updated git I think it was very recent. Seemed ok. I can try it on my thinkpad but not even sure I have luxe on there yet, or wait till tomorrow at work.
The errors can't be related to mac, this is explicitly an MSVC error:
fatal error C1083: Cannot open compiler generated file
MSVC itself is creating a file, and then unable to read it during the same compile.
haxelib run flow run --clean gives the same error on the work machine.
( I did not yet finish setting up the thinkpad at home I might take windows off it as it was behaving rather badly maybe it was just annoyed I neglected it, but more likely it's the lenovo bloatware but tricky to know what parts I can remove, but looks like I need to spend some serious time cleaning it up :( installed latest haxe and git's for snowkit and latest hxcpp, but I think after spybot had finished and some of the haxelib git's were slow, I did not yet put snow.ndll as I was not sure if that happened magically yet,but I can give that a try tonight but it might be late as I have tango lesson and there is a live salsa band in pub ).
In the meantime I guess I should look into building snow.ndll myself.
Ah found the relevant rebuild page..http://underscorediscovery.github.io/snow/guide/native-layer.html
Ok rebuild is not helping, it seems to be called libsnow.lib rather than snow.ndll ?
That's interesting if I use --arch 64 on both I get:
flow / build - running haxe ... Sys_error("bin/windows64.build/cpp/include/luxe/structural/BalancedBSTNode_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.h: No such file or directory")
Which seems odd, because the file exists for the 32bit.
Looking in the obj... 04e3d618_BalancedBST_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.obj or 04e3d618_BalancedBSTNode.obj is not the same as 04e3d618_BalancedBSTNode_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.obj
cl.exe -Iinclude -nologo -O2 /WX- /fp:precise -DHX_WINDOWS -D_USING_V120SDK71 -GR -Oy- -c -EHs -GS- -arch:SSE -IC:/HaxeToolkit/haxe/lib/hxcpp/3,2,94 /include -DHXCPP_VISIT_ALLOCS -DHXCPP_API_LEVEL=321 -D_CRT_SECURE_NO_DEPRECATE -D_ALLOW_MSC_VER_MISMATCH -D_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH -DHX_W IN_MAIN -wd4996 -MT ./src/luxe/structural/BalancedBSTNode_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.cpp -Foobj/msvc18-ncxp/04e3d618_Balan cedBSTNode_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.obj OrderedMapIterator.cpp cl.exe -Iinclude -nologo -O2 /WX- /fp:precise -DHX_WINDOWS -D_USING_V120SDK71 -GR -Oy- -c -EHs -GS- -arch:SSE -IC:/HaxeToolkit/haxe/lib/hxcpp/3,2,94 /include -DHXCPP_VISIT_ALLOCS -DHXCPP_API_LEVEL=321 -D_CRT_SECURE_NO_DEPRECATE -D_ALLOW_MSC_VER_MISMATCH -D_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH -DHX_W IN_MAIN -wd4996 -MT ./src/luxe/structural/BalancedBSTTraverseMethod.cpp -Foobj/msvc18-ncxp/04e3d618_BalancedBSTTraverseMethod.obj BalancedBST_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.cpp cl.exe -Iinclude -nologo -O2 /WX- /fp:precise -DHX_WINDOWS -D_USING_V120SDK71 -GR -Oy- -c -EHs -GS- -arch:SSE -IC:/HaxeToolkit/haxe/lib/hxcpp/3,2,94 /include -DHXCPP_VISIT_ALLOCS -DHXCPP_API_LEVEL=321 -D_CRT_SECURE_NO_DEPRECATE -D_ALLOW_MSC_VER_MISMATCH -D_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH -DHX_W IN_MAIN -wd4996 -MT ./src/luxe/structural/BalancedBSTNode.cpp -Foobj/msvc18-ncxp/04e3d618_BalancedBSTNode.obj BalancedBSTNode_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.cpp C:\projects\currentProjects\experimental\other\old\addCurveTo\hxDaedalus-luxe-examples\hxDaedalus-Luxe-Examples\07-MeshExtractionFromBitmap\bin\window s.build\cpp\src\luxe\structural\BalancedBSTNode_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.cpp : fatal error C1083: Cannot open compiler g enerated file: 'obj/msvc18-ncxp/04e3d618_BalancedBSTNode_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.obj': No such file or directory
I think the error might relate to luxe.debug.BatcherDebugView
import luxe.structural.BalancedBST.BalancedBSTNode;
is this the correct path for a class in BalancedBST. Is DCE removing the BalanecdBSTNode ? Can I disable BST , I tried moving the Class separate but still the object is not created?
Ok this is really nasty issue and seems to be a windows7 bug!!! The problem was that obj files are not created if the path, and file name are too long!!!
I moved project to a shorter folder structure and it worked fine. Sorry for this issue - not something I would have expected, I only found it by trying to manually copy the obj file from an older project, but maybe some thought to strategies to keep obj file names from getting too long might help?
I should raise the bug on hxcpp so that maybe hxcpp can warn user?
I have filed an issue on hxcpp incase Hugh can add hxcpp warning for users. https://github.com/HaxeFoundation/hxcpp/issues/233
I have updated snow and luxe this afternoon and updated one of the hxDaedalus Luxe examples ( changing image loading around ) but it fails at runtime on windows but succeeds on web I can dig deeper into how to create ndll etc... but if you know the fix that would be amazing. Details of error and how to reproduce below.
...\bin\windows.build\cpp\src\luxe\structural\BalancedBSTNode_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.cpp : fatal error C1083: Cannot open compiler generated file: 'obj/msvc18-ncxp/04e3d618_BalancedBSTNode_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.obj': No such file or directory
BalancedBST_phoenix_geometry_GeometryKey_phoenix_geometry_Geometry.cpp BalancedBSTTraverseMethod.cpp GeometryUtils.cpp *flow /_8 _build - stopping because of errors in hxcpp compile, while building arch 32**
Error: Command failed with error 1
To run the code you will need latest hxDaedalus: haxelib git hxDaedalus https://github.com/hxDaedalus/hxDaedalus and then modify this test: https://github.com/hxDaedalus/hxDaedalus-luxe-examples/tree/master/hxDaedalus-Luxe-Examples/07-MeshExtractionFromBitmap
with the following code.