fTetWild icon indicating copy to clipboard operation
fTetWild copied to clipboard

FloatTetwild_bin.exe not built after running cmake

Open blue-gitty opened this issue 1 year ago • 7 comments

blue-gitty avatar Oct 10 '23 17:10 blue-gitty

image

I have also tried the ./FloatTetWild_bin in the ftetwild directory, whats wrong here? Can anyone please help me execute the buildi succesfully?

blue-gitty avatar Oct 10 '23 17:10 blue-gitty

image

Here's the output after the build

blue-gitty avatar Oct 10 '23 17:10 blue-gitty

image

I have also tried the ./FloatTetWild_bin in the ftetwild directory, whats wrong here? Can anyone please help me execute the buildi succesfully?

I got it working by using CMAKE-GUI, creating the Visual Studio solution, changing the C++ runtime libs to MT instead of MD, and it finally compiled. This was a complete mess...

Manurocker95 avatar Nov 02 '23 12:11 Manurocker95

I got it working by using CMAKE-GUI, creating the Visual Studio solution, changing the C++ runtime libs to MT instead of MD, and it finally compiled. This was a complete mess...

Thank you for the response, but my Cmake GUI is throwing some error:


CMake Error at CMakeLists.txt:3 (project):
  Running

   'nmake' '-?'

  failed with:

   The system cannot find the file specified


CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage


blue-gitty avatar Nov 06 '23 16:11 blue-gitty

I'm unable to build (can't find ",.lib") after a few hours of work. Any chance someone could just share the exe oh please please please? I have one for the original TetWild but could really use a faster version.

nonbasketless avatar Jan 23 '24 01:01 nonbasketless

Ok, my build failure was primarily because GMP is an absolute mess (at least on Windoze). For now working around GMP (might share later). After removing GMP:

I also had the MT/MD problem. I figured out the cause (by message printing and bisection): on Windows, IGL by default makes you use MD, contaminating everything downstream, but some other things are MT.

I fixed it by using MT for everything. Add this near the top of fTetWild's CMakeLists.txt:

if(MSVC)
	foreach(config ${CMAKE_CONFIGURATION_TYPES})
		string(TOUPPER ${config} config)
		string(REPLACE /MD /MT CMAKE_C_FLAGS_${config} "${CMAKE_C_FLAGS_${config}}")
		string(REPLACE /MD /MT CMAKE_CXX_FLAGS_${config} "${CMAKE_CXX_FLAGS_${config}}")
	endforeach()

	set(IGL_STATIC_RUNTIME ON)
endif()

You probably will want to delete your build and create it from scratch - that got rid of the last couple multiply defined symbols for me.

nonbasketless avatar Jan 26 '24 18:01 nonbasketless

Any solutions for this?

crystalthoughts avatar May 27 '24 15:05 crystalthoughts