primesieve icon indicating copy to clipboard operation
primesieve copied to clipboard

Troubles building on MinGW64 system

Open ishandutta2007 opened this issue 3 years ago • 1 comments
trafficstars

Just ran this

cmake -G "Unix Makefiles" .
make -j

Error:

C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/libprimesieve.dir/src/api-c.cpp.obj:api-c.cpp:(.text+0x279): undefined reference to `__cxa_free_exception'
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/libprimesieve.dir/src/api-c.cpp.obj:api-c.cpp:(.text+0x293): undefined reference to `__cxa_begin_catch'
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/libprimesieve.dir/src/api-c.cpp.obj:api-c.cpp:(.text+0x2b2): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long long)'
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/libprimesieve.dir/src/api-c.cpp.obj:api-c.cpp:(.text+0x2c6): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)'
.....
.....
.....

ishandutta2007 avatar Jun 21 '22 20:06 ishandutta2007

Note I am on MinGW x64 not MinGW-w64. I dont understand why it's looking for x86_64-w64-mingw32

ishandutta2007 avatar Jun 21 '22 21:06 ishandutta2007

not sure how it was resolved , @kimwalisch it would be great if you could link resolution steps

ishandutta2007 avatar Oct 30 '23 10:10 ishandutta2007

Sorry for not answering earlier.

Based on my experience I think your MINGW installation is corrupted, in primesieve's CI MinGW64 is tested and works flawlessly. Also have a look at this issue where another user had similar issues with MinGW64 and reinstalling MinGW64 solved the issue: https://github.com/kimwalisch/primesieve/issues/51#issuecomment-375955066

kimwalisch avatar Oct 30 '23 10:10 kimwalisch