ned14 / nedmalloc

An EXTREMELY FAST portable thread caching malloc implementation written in C for multiple threads without lock contention based on dlmalloc. Optimised for x86 and x64. Compatible with C++. Can patch itself into existing binaries on Windows.
http://www.nedprod.com/programs/portable/nedmalloc/
Boost Software License 1.0
401 stars 77 forks source link

Nedmalloc does not compile under Visual Studio 2017 #20

Open Agadoul opened 6 years ago

Agadoul commented 6 years ago

Hi,

It seems nedmalloc does not compile under Visual studio 2017. Not sure yet who is the culprit (Visual studio? nedmalloc?)

1>------ Build started: Project: nedmalloc, Configuration: Debug Win32 ------ 1>MSVCRTD.lib(guard_support.obj) : error LNK2005: _ReadNoFence already defined in nedmalloc.obj 1>MSVCRTD.lib(guard_support.obj) : error LNK2005: _ReadPointerNoFence already defined in nedmalloc.obj 1> Creating library C:/Walkinside/Sources/vs-solutions/nedmalloc/Debug/nedmalloc.lib and object C:/Walkinside/Sources/vs-solutions/nedmalloc/Debug/nedmalloc.exp 1>nedmalloc.obj : error LNK2019: unresolved external symbol impMapViewOfFileNuma2@36 referenced in function _MapViewOfFile2 1>C:\Walkinside\Sources\vs-solutions\nedmalloc\Debug\nedmalloc.dll : fatal error LNK1120: 1 unresolved externals 1>Done building project "nedmalloc.vcxproj" -- FAILED. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

I have investigated quite a bit without finding the reason. I am trying to port nedmalloc to vcpkg but without support for vs 2017, this won 't be possible.

It compiles under Visual studio 2015.

Anyone has a clue, maybe i forgot a preprocessor definition ?

ned14 commented 6 years ago

nedmalloc is pretty much EOL. Happy to accept patches, but unwilling to fix. You should use the system allocator on any recent OS instead.

Agadoul commented 6 years ago

OK. fair enough. I guess I will have to remove it eventually.