{"action":"created","issue":{"url":"https://api.github.com/repos/alexrj/Slic3r/issues/3555","repository_url":"https://api.github.com/repos/alexrj/Slic3r","labels_url":"https://api.github.com/repos/alexrj/Slic3r/issues/3555/labels{/name}","comments_url":"https://api.github.com/repos/alexrj/Slic3r/issues/3555/comments","events_url":"https://api.github.com/repos/alexrj/Slic3r/issues/3555/events","html_url":"https://github.com/alexrj/Slic3r/issues/3555","id":186637584,"number":3555,"title":"Compilation issues with Slic3r 1.29.0","user":{"login":"bwbeall","id":23196166,"avatar_url":"https://avatars.githubusercontent.com/u/23196166?v=3","gravatar_id":"","url":"https://api.github.com/users/bwbeall","html_url":"https://github.com/bwbeall","followers_url":"https://api.github.com/users/bwbeall/followers","following_url":"https://api.github.com/users/bwbeall/following{/other_user}","gists_url":"https://api.github.com/users/bwbeall/gists{/gist_id}","starred_url":"https://api.github.com/users/bwbeall/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bwbeall/subscriptions","organizations_url":"https://api.github.com/users/bwbeall/orgs","repos_url":"https://api.github.com/users/bwbeall/repos","events_url":"https://api.github.com/users/bwbeall/events{/privacy}","received_events_url":"https://api.github.com/users/bwbeall/received_events","type":"User","site_admin":false},"labels":[{"id":63873496,"url":"https://api.github.com/repos/alexrj/Slic3r/labels/OS:%20Windows","name":"OS: Windows","color":"eb6420","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":16,"created_at":"2016-11-01T20:27:21Z","updated_at":"2016-11-13T17:15:33Z","closed_at":null,"body":"### Version\r\n1.29.0\r\n\r\n### Operating system type + version\r\nWindows 10.0.14393 Pro x64\r\nVS 2013 Version 12.0.40629.00 Update 5\r\nNET Framework 4.6.01586\r\n\r\n### Behavior\r\nCompiler errors building Slic3r for x64 platform\r\n\r\nI've tried building version 1.29.0 using Strawberry, CitrusPerl, and VS2013 Community Edition, and have had limited success with all three.\r\n\r\nSo, I've uninstalled all of the development tools (except VS2013) and started again (with VS2013), following the instruction in Running Slic3r from git on Windows. I'll document what I've found so far, and any assistance would be greatly appreciated. First, thanks for all the effort put into this project, including the build instructions.\r\n\r\nSo, here are my build notes/questions from the VS 2013 portion.\r\n1. How do you move the cpan config.pm from the Users folder to a global place (or more correctly, how do you let cpan know where to look for it)? I specified the other folders per your suggestions, but moving the config.pm file just had me go thru the configuration steps again.\r\n2. When I installed cpanminus, I was informed that I could update to a newer version - any suggestions? I've found that building Slic3r is very sensitive to versions.\r\n3. I got a bunch of errors when I try to run \"perl Build.PL\". There is a comment that this may be due to the boost library not being configured yet, so I'll came back to this.\r\n4. I would suggest clarifying the instructions for IO-stringy-2.1.1 go to to the latest (earliest? - I had three for some reason) cpanm\\work\\XXXXXXXXXXX.XXXXX folder to run the nmake install.\r\n5. In step 6), I think the command should be \"perl Build.PL --gui\"\r\n6. Building the wxWidgets 3.0.3.beta1, I needed to make two changes: first, I added TARGET_CPU=X64; and second, I had to copy (probably could've renamed) folder vcc_x64_dll to vcc_dll.\r\n7. I couldn't find OpenGL-0.6704 at the link provided, so I used https://github.com/zmughal/pogl/tree/OpenGL-0.6704. I'm not a big user of Cygwin, so patch is new to me (patch source_file patch_file seems to be sufficient), and I got error messages on three of the four patches I applied. I looked at the patch file (basically a diff file), and the source files, and it looked like the changes were applied properly. Also, the freeglut_static.lib should be copied to freeglut_static.lib, (not freeglut.lib). Minor nit, but there needs to be a '\\' between GL and *.h on the other copy.\r\n8. I do even less sed than Cygwin, and I couldn't get that script to work, so I did the changes manually.\r\n9. I installed Boost 1.59.0 (based on comments in the \"generic\" Windows instructions), so minor tweaks were needed to the cmdline_init.bat file.\r\n10. Back to the problems with \"perl Build.PL\".\r\n11. As Vojtech noted in problem git issue #3528 (Compilation of Slic3r with Visual Studio 2013 - macro errors), __func__ needs to be replaced with __FUNCTION__ in libslic3r.h. The root problem apparently is that __func__ is no longer part of the C11 standard. I read there that the cmake build only works for SLA - I don't recall seeing any indication of this in the build instructions. I am trying to build using all three tools, so it's not a big deal, but it would be nice to know that up front (and any similar limitations on the other builds).\r\n12. I was having issues with two erros in Config.hpp. First, some of the deserialize() methods were attempting to return the result of the operator>> (others simply returned \"true\"). In my code, I returned (for instance) iss.good(). The other problem was with ::max() - there is a solution provided at http://www.suodenjoki.dk/us/archive/2010/min-max.htm that seems to work (with a minor tweak):\r\n\r\n...\r\n#include <myinit.h>\r\n#include \"Point.hpp\"\r\n\r\n//new code from http://www.suodenjoki.dk/us/archive/2010/min-max.htm\r\n#include <algorithm>\r\n#ifndef max\r\n#define max(a,b) (((a) > (b)) ? (a) : (b))\r\n#endif\r\n#ifndef min\r\n#define min(a,b) (((a) < (b)) ? (a) : (b))\r\n#endif\r\n\r\n//#include <gdiplus.h>  // this causes all sorts of issues since this is a header, so I commented it out\r\n#undef max\r\n#undef min\r\n\r\nusing namespace std; // may not be needed\r\n//end of new code\r\n\r\nnamespace Slic3r {\r\n\r\ntypedef std::string t_config_option_key;\r\ntypedef std::vector<std::string> t_config_option_keys;\r\n...\r\n\r\n13. BoundingBox.cpp has the same issue with ::max() that Config.hpp had, so I applied the same fix (above).\r\n14. It was necessary to add the following to xs\\src\\admesh\\util.c to address undefined M_PI:\r\n\r\n#define _USE_MATH_DEFINES // from https://msdn.microsoft.com/en-us/library/4hwaceh6(v=vs.110).aspx\r\n\r\n15. So, now I'm to the point where I can't seem to move forward with my VS2013 build. I'm getting a bunch of errors with the following command line:\r\nc:\\wperl64r\\bin\\perl.exe Build.PL --force\r\n\r\ncl -nologo -c @\"src\\libslic3r\\Print.ccs\" -Fo\"src\\libslic3r\\Print.obj\" \"src\\libslic3r\\Print.cpp\"\r\nPrint.cpp\r\ns:\\open_source_software\\slic3r\\build_1_2_9\\slic3r-1.2.9\\xs\\src\\libslic3r\\Point.hpp(34) : warning C4244: 'initializing' : conversion from '__int64' to 'coord_t', possible loss of data\r\ns:\\open_source_software\\slic3r\\build_1_2_9\\slic3r-1.2.9\\xs\\src\\libslic3r\\Config.hpp(71) : warning C4244: 'return' : conversion from 'const double' to 'float', possible loss of data\r\ns:\\open_source_software\\slic3r\\build_1_2_9\\slic3r-1.2.9\\xs\\src\\libslic3r\\Flow.hpp(35) : warning C4244: 'return' : conversion from 'double' to 'coord_t', possible loss of data\r\ns:\\open_source_software\\slic3r\\build_1_2_9\\slic3r-1.2.9\\xs\\src\\libslic3r\\Flow.hpp(38) : warning C4244: 'return' : conversion from 'double' to 'coord_t', possible loss of data\r\ns:\\open_source_software\\slic3r\\build_1_2_9\\slic3r-1.2.9\\xs\\src\\libslic3r\\ExPolygon.hpp(110) : warning C4267: 'return' : conversion from 'size_t' to 'unsigned int', possible loss of data\r\nC:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\INCLUDE\\functional(1258) : warning C4003: not enough actual parameters for macro 'PerlSock_bind'\r\nC:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\INCLUDE\\functional(1258) : error C2988: unrecognizable template declaration/definition\r\nC:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\INCLUDE\\functional(1258) : error C2059: syntax error : '*'\r\nC:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\INCLUDE\\functional(1258) : error C2059: syntax error : '('\r\nC:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\INCLUDE\\functional(1258) : error C2091: function returns function\r\nC:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\INCLUDE\\functional(1258) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int\r\nC:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\INCLUDE\\functional(1258) : error C2935: 'std::_Bind<false,void,_Fun,_Types...>' : template-class-id redefined as a global function\r\n...\r\nand a hundred more lines like it\r\n\r\nI can rebuild ten times in a row, and I'll get similar resuts for each build (with different, apparently random, file each time) (BridgeDetection, ExtrusionEntity, MotionPlanner, LayerRegion, PrintObject, Geometry, ClipperUtils, Polygon, ExPolygon, etc. These are all errors in the VS2012 functional file, not in the Slic3r files, so I feel that it's something not properly configured. Any suggestions?\r\n\r\nOnce I get the VS2013 build under control, I'll retry the Strawberry and CitrusPerl builds.\r\n\r\nThanks.\r\n\r\nbwb\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/alexrj/Slic3r/issues/comments/260198936","html_url":"https://github.com/alexrj/Slic3r/issues/3555#issuecomment-260198936","issue_url":"https://api.github.com/repos/alexrj/Slic3r/issues/3555","id":260198936,"user":{"login":"lordofhyphens","id":31754,"avatar_url":"https://avatars.githubusercontent.com/u/31754?v=3","gravatar_id":"","url":"https://api.github.com/users/lordofhyphens","html_url":"https://github.com/lordofhyphens","followers_url":"https://api.github.com/users/lordofhyphens/followers","following_url":"https://api.github.com/users/lordofhyphens/following{/other_user}","gists_url":"https://api.github.com/users/lordofhyphens/gists{/gist_id}","starred_url":"https://api.github.com/users/lordofhyphens/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lordofhyphens/subscriptions","organizations_url":"https://api.github.com/users/lordofhyphens/orgs","repos_url":"https://api.github.com/users/lordofhyphens/repos","events_url":"https://api.github.com/users/lordofhyphens/events{/privacy}","received_events_url":"https://api.github.com/users/lordofhyphens/received_events","type":"User","site_admin":false},"created_at":"2016-11-13T17:15:33Z","updated_at":"2016-11-13T17:15:33Z","body":"The segfault is #3540. I suspect that the pointer being used with glDrawArrays is no longer compatible for some reason. Please discuss segfault there.\r\n\r\nFor your current purposes, suggest using OpenGL.pm-0.58 instead "}}
{"actor":{"display_login":"lordofhyphens"}}