oneDAL icon indicating copy to clipboard operation
oneDAL copied to clipboard

How to make a debug build (missing daal_vmlipp_cored.lib)?

Open emmenlau opened this issue 2 years ago • 2 comments

Describe the bug I would like to make a debug build of DAAL using the supplied makefile on Windows. I found that there is option REQDBG but that does not seem to set the debug runtime. Then I found the option MSVC_RUNTIME_VERSION=debug that seems to do what I want. However the build fails very early on with error:

make: *** No rule to make target '__deps/mklfpk/win/lib/intel64/daal_vmlipp_cored.lib', needed by 'tmp_build_files/work/daal/lib/onedal_cored.lib'.  Stop.

To Reproduce

  1. Checkout latest oneDAL release
  2. Open a Cygwin prompt with Visual Studio 2022 settings
  3. Call make -f makefile REQDBG=true MSVC_RUNTIME_VERSION=debug WORKDIR=tmp_build_files/work RELEASEDIR=tmp_build_files/release REQCPU="sse42 avx avx2" _daal_core _daal_thr_tbb _daal_thr_seq _release_c PLAT=win32e COMPILER=vc
  4. See error

Expected behavior The build should work.

Environment:

  • OS: Windows 11 with Cygwin for bash and make
  • Compiler: Visual Studio 2022 x64 current latest

emmenlau avatar Apr 13 '22 15:04 emmenlau

Hi @emmenlau Thanks for pointing out the issue It looks like you don't have mklfpk installed. You can find it here As an option, you can use this script to download mklfpk lib for windows or for macos or linux. You can find it in dev directory (check fifth paragraph of installation guide)

PivovarA avatar Apr 19 '22 10:04 PivovarA

Hi @PivovarA , I think I have been running the script that downloads the mklfpk, at least the release build works without problems. Only debug builds fails with above error. Also, I can see that the mklfpk libs without the debug suffix d are present, while the ones with the debug suffix are not. Could you check that the mklfpk archive contains actually debug libs?

Here is what I see:

#> ls -la '__deps/mklfpk/win/lib/intel64/'
total 300380
drwxrwx--- 2 user user      4096 Apr 12 17:30 .
drwxrwx--- 3 user user      4096 Apr 12 17:28 ..
-rw-rw---- 1 user user 127403642 Apr 12 17:29 daal_mkl_sequential.lib
-rw-rw---- 1 user user 145704614 Apr 12 17:30 daal_mkl_thread.lib
-rw-rw---- 1 user user  34465608 Apr 12 17:30 daal_vmlipp_core.lib

So there are no debug libs, or am I on the wrong track?

emmenlau avatar Apr 19 '22 13:04 emmenlau

@PivovarA can you help with this?

emmenlau avatar Dec 04 '22 13:12 emmenlau

We do not provide debug fpk versions currently . Will see if this would be feasible to provide, but can't guarantee this would be soon

napetrov avatar Dec 04 '22 17:12 napetrov

Thanks @napetrov for the reply! The problem without a debug fpk version is that I can not correctly build oneDAL in debug. It is difficult to support oneDAL development without a debug build...

emmenlau avatar Dec 04 '22 18:12 emmenlau

@emmenlau - please see versions updated here - https://github.com/oneapi-src/oneDAL/pull/2245 New FPK archives contains MDd versions image

napetrov avatar Jan 18 '23 11:01 napetrov

Awesome! Thanks @napetrov and all involved!

emmenlau avatar Jan 18 '23 11:01 emmenlau