Fail to load libwebp.dll in C# using version 1.3.2

678 views
Skip to first unread message

Leo

unread,
Sep 15, 2023, 5:02:19 AM9/15/23
to WebP Discussion
Hi,

Following this way to build and import functions, it fails to load libwebp.dll of version 1.3.2, 1.3.1, 1.3.0 in C# code. But it works fine using the version 1.2.4. 

The exception information is "System.DllNotFoundException: 'Unable to load DLL 'C:\libwebp.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)'.

Is there any different between version 1.3.* and 1.2.4? or is anything missed?

Thanks,
Leo

Rsool Montakhb

unread,
Sep 15, 2023, 6:03:23 AM9/15/23
to webp-d...@webmproject.org
No 

--
You received this message because you are subscribed to the Google Groups "WebP Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webp-discuss...@webmproject.org.
To view this discussion on the web visit https://groups.google.com/a/webmproject.org/d/msgid/webp-discuss/eeb6cb06-cd58-4f0a-997f-32a21112fbedn%40webmproject.org.

Leo

unread,
Sep 18, 2023, 3:40:11 AM9/18/23
to WebP Discussion, Rsool Montakhb
Following the same way to build and without any manual changes, it is wired that the result is different if there is no difference or missing something. Does anyone have the same issue?  

Here is what I do - 
  1. downloalibwebp-1.3.2.tar.gz from the download list
  2. Go to the folder libwebp-1.3.2 and run the build command "nmake /f Makefile.vc CFG=release-dynamic objdir=output"
  3. libwebp.dll is generated under the folder "\libwebp-1.3.2\output\release-dynamic\x64\bin".
  4. Replace the library of old version with the new one in the c# project.  
Below is the build log:

C:\libwebp-1.3.2>nmake /f Makefile.vc CFG=release-dynamic objdir=output

Microsoft (R) Program Maintenance Utility Version 14.34.31937.0
Copyright (C) Microsoft Corporation.  All rights reserved.

        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\libwebp_dll.pdb /Fooutput\release-dynamic\x64\obj\dec\ src\dec\alpha_dec.c src\dec\buffer_dec.c src\dec\frame_dec.c src\dec\idec_dec.c src\dec\io_dec.c src\dec\quant_dec.c src\dec\tree_dec.c src\dec\vp8_dec.c src\dec\vp8l_dec.c src\dec\webp_dec.c
alpha_dec.c
buffer_dec.c
frame_dec.c
idec_dec.c
io_dec.c
quant_dec.c
tree_dec.c
vp8_dec.c
vp8l_dec.c
webp_dec.c
Generating Code...
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\libwebp_dll.pdb /Fooutput\release-dynamic\x64\obj\dsp\ src\dsp\alpha_processing.c src\dsp\alpha_processing_mips_dsp_r2.c src\dsp\alpha_processing_neon.c src\dsp\alpha_processing_sse2.c src\dsp\alpha_processing_sse41.c src\dsp\cpu.c src\dsp\dec.c src\dsp\dec_clip_tables.c src\dsp\dec_mips32.c src\dsp\dec_mips_dsp_r2.c src\dsp\dec_msa.c src\dsp\dec_neon.c src\dsp\dec_sse2.c src\dsp\dec_sse41.c src\dsp\filters.c src\dsp\filters_mips_dsp_r2.c src\dsp\filters_msa.c src\dsp\filters_neon.c src\dsp\filters_sse2.c src\dsp\lossless.c src\dsp\lossless_mips_dsp_r2.c src\dsp\lossless_msa.c src\dsp\lossless_neon.c src\dsp\lossless_sse2.c src\dsp\lossless_sse41.c src\dsp\rescaler.c src\dsp\rescaler_mips32.c src\dsp\rescaler_mips_dsp_r2.c src\dsp\rescaler_msa.c src\dsp\rescaler_neon.c src\dsp\rescaler_sse2.c src\dsp\upsampling.c src\dsp\upsampling_mips_dsp_r2.c src\dsp\upsampling_msa.c src\dsp\upsampling_neon.c src\dsp\upsampling_sse2.c src\dsp\upsampling_sse41.c src\dsp\yuv.c src\dsp\yuv_mips32.c src\dsp\yuv_mips_dsp_r2.c src\dsp\yuv_neon.c src\dsp\yuv_sse2.c src\dsp\yuv_sse41.c
alpha_processing.c
alpha_processing_mips_dsp_r2.c
alpha_processing_neon.c
alpha_processing_sse2.c
alpha_processing_sse41.c
cpu.c
dec.c
dec_clip_tables.c
dec_mips32.c
dec_mips_dsp_r2.c
dec_msa.c
dec_neon.c
dec_sse2.c
dec_sse41.c
filters.c
filters_mips_dsp_r2.c
filters_msa.c
filters_neon.c
filters_sse2.c
lossless.c
Generating Code...
Compiling...
lossless_mips_dsp_r2.c
lossless_msa.c
lossless_neon.c
lossless_sse2.c
lossless_sse41.c
rescaler.c
rescaler_mips32.c
rescaler_mips_dsp_r2.c
rescaler_msa.c
rescaler_neon.c
rescaler_sse2.c
upsampling.c
upsampling_mips_dsp_r2.c
upsampling_msa.c
upsampling_neon.c
upsampling_sse2.c
upsampling_sse41.c
yuv.c
yuv_mips32.c
yuv_mips_dsp_r2.c
Generating Code...
Compiling...
yuv_neon.c
yuv_sse2.c
yuv_sse41.c
Generating Code...
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\libwebp_dll.pdb /Fooutput\release-dynamic\x64\obj\utils\ src\utils\bit_reader_utils.c src\utils\color_cache_utils.c src\utils\filters_utils.c src\utils\huffman_utils.c src\utils\quant_levels_dec_utils.c src\utils\rescaler_utils.c src\utils\random_utils.c src\utils\thread_utils.c src\utils\utils.c
bit_reader_utils.c
color_cache_utils.c
filters_utils.c
huffman_utils.c
quant_levels_dec_utils.c
rescaler_utils.c
random_utils.c
thread_utils.c
utils.c
Generating Code...
        rc.exe /nologo /l"0x0409" /fooutput\release-dynamic\x64\obj\libwebpdecoder.res src\libwebpdecoder.rc
        link.exe /DLL /nologo /out:output\release-dynamic\x64\bin\libwebpdecoder.dll /implib:output\release-dynamic\x64\lib\libwebpdecoder_dll.lib  output\release-dynamic\x64\obj\dec\alpha_dec.obj output\release-dynamic\x64\obj\dec\buffer_dec.obj output\release-dynamic\x64\obj\dec\frame_dec.obj output\release-dynamic\x64\obj\dec\idec_dec.obj output\release-dynamic\x64\obj\dec\io_dec.obj output\release-dynamic\x64\obj\dec\quant_dec.obj output\release-dynamic\x64\obj\dec\tree_dec.obj output\release-dynamic\x64\obj\dec\vp8_dec.obj output\release-dynamic\x64\obj\dec\vp8l_dec.obj output\release-dynamic\x64\obj\dec\webp_dec.obj output\release-dynamic\x64\obj\dsp\alpha_processing.obj output\release-dynamic\x64\obj\dsp\alpha_processing_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\alpha_processing_neon.obj output\release-dynamic\x64\obj\dsp\alpha_processing_sse2.obj output\release-dynamic\x64\obj\dsp\alpha_processing_sse41.obj output\release-dynamic\x64\obj\dsp\cpu.obj output\release-dynamic\x64\obj\dsp\dec.obj output\release-dynamic\x64\obj\dsp\dec_clip_tables.obj output\release-dynamic\x64\obj\dsp\dec_mips32.obj output\release-dynamic\x64\obj\dsp\dec_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\dec_msa.obj output\release-dynamic\x64\obj\dsp\dec_neon.obj output\release-dynamic\x64\obj\dsp\dec_sse2.obj output\release-dynamic\x64\obj\dsp\dec_sse41.obj output\release-dynamic\x64\obj\dsp\filters.obj output\release-dynamic\x64\obj\dsp\filters_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\filters_msa.obj output\release-dynamic\x64\obj\dsp\filters_neon.obj output\release-dynamic\x64\obj\dsp\filters_sse2.obj output\release-dynamic\x64\obj\dsp\lossless.obj output\release-dynamic\x64\obj\dsp\lossless_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\lossless_msa.obj output\release-dynamic\x64\obj\dsp\lossless_neon.obj output\release-dynamic\x64\obj\dsp\lossless_sse2.obj output\release-dynamic\x64\obj\dsp\lossless_sse41.obj output\release-dynamic\x64\obj\dsp\rescaler.obj output\release-dynamic\x64\obj\dsp\rescaler_mips32.obj output\release-dynamic\x64\obj\dsp\rescaler_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\rescaler_msa.obj output\release-dynamic\x64\obj\dsp\rescaler_neon.obj output\release-dynamic\x64\obj\dsp\rescaler_sse2.obj output\release-dynamic\x64\obj\dsp\upsampling.obj output\release-dynamic\x64\obj\dsp\upsampling_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\upsampling_msa.obj output\release-dynamic\x64\obj\dsp\upsampling_neon.obj output\release-dynamic\x64\obj\dsp\upsampling_sse2.obj output\release-dynamic\x64\obj\dsp\upsampling_sse41.obj output\release-dynamic\x64\obj\dsp\yuv.obj output\release-dynamic\x64\obj\dsp\yuv_mips32.obj output\release-dynamic\x64\obj\dsp\yuv_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\yuv_neon.obj output\release-dynamic\x64\obj\dsp\yuv_sse2.obj output\release-dynamic\x64\obj\dsp\yuv_sse41.obj output\release-dynamic\x64\obj\utils\bit_reader_utils.obj output\release-dynamic\x64\obj\utils\color_cache_utils.obj output\release-dynamic\x64\obj\utils\filters_utils.obj output\release-dynamic\x64\obj\utils\huffman_utils.obj output\release-dynamic\x64\obj\utils\quant_levels_dec_utils.obj output\release-dynamic\x64\obj\utils\rescaler_utils.obj output\release-dynamic\x64\obj\utils\random_utils.obj output\release-dynamic\x64\obj\utils\thread_utils.obj output\release-dynamic\x64\obj\utils\utils.obj output\release-dynamic\x64\obj\libwebpdecoder.res
   Creating library output\release-dynamic\x64\lib\libwebpdecoder_dll.lib and object output\release-dynamic\x64\lib\libwebpdecoder_dll.exp
        xcopy output\release-dynamic\x64\obj\*.pdb output\release-dynamic\x64\lib /y
File not found - *.pdb
0 File(s) copied
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\sharpyuv\ /Fooutput\release-dynamic\x64\obj\sharpyuv\ sharpyuv\sharpyuv.c sharpyuv\sharpyuv_cpu.c sharpyuv\sharpyuv_csp.c sharpyuv\sharpyuv_dsp.c sharpyuv\sharpyuv_gamma.c sharpyuv\sharpyuv_neon.c sharpyuv\sharpyuv_sse2.c
sharpyuv.c
sharpyuv_cpu.c
sharpyuv_csp.c
sharpyuv_dsp.c
sharpyuv_gamma.c
sharpyuv_neon.c
sharpyuv_sse2.c
Generating Code...
        rc.exe /nologo /l"0x0409" /fooutput\release-dynamic\x64\obj\sharpyuv\libsharpyuv.res sharpyuv\libsharpyuv.rc
        link.exe /DLL /nologo /out:output\release-dynamic\x64\bin\libsharpyuv.dll /implib:output\release-dynamic\x64\lib\libsharpyuv_dll.lib  output\release-dynamic\x64\obj\sharpyuv\sharpyuv.obj output\release-dynamic\x64\obj\sharpyuv\sharpyuv_cpu.obj output\release-dynamic\x64\obj\sharpyuv\sharpyuv_csp.obj output\release-dynamic\x64\obj\sharpyuv\sharpyuv_dsp.obj output\release-dynamic\x64\obj\sharpyuv\sharpyuv_gamma.obj output\release-dynamic\x64\obj\sharpyuv\sharpyuv_neon.obj output\release-dynamic\x64\obj\sharpyuv\sharpyuv_sse2.obj output\release-dynamic\x64\obj\sharpyuv\libsharpyuv.res
   Creating library output\release-dynamic\x64\lib\libsharpyuv_dll.lib and object output\release-dynamic\x64\lib\libsharpyuv_dll.exp
        xcopy output\release-dynamic\x64\obj\*.pdb output\release-dynamic\x64\lib /y
File not found - *.pdb
0 File(s) copied
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\libwebp_dll.pdb /Fooutput\release-dynamic\x64\obj\enc\ src\enc\alpha_enc.c src\enc\analysis_enc.c src\enc\backward_references_cost_enc.c src\enc\backward_references_enc.c src\enc\config_enc.c src\enc\cost_enc.c src\enc\filter_enc.c src\enc\frame_enc.c src\enc\histogram_enc.c src\enc\iterator_enc.c src\enc\near_lossless_enc.c src\enc\picture_enc.c src\enc\picture_csp_enc.c src\enc\picture_psnr_enc.c src\enc\picture_rescale_enc.c src\enc\picture_tools_enc.c src\enc\predictor_enc.c src\enc\quant_enc.c src\enc\syntax_enc.c src\enc\token_enc.c src\enc\tree_enc.c src\enc\vp8l_enc.c src\enc\webp_enc.c
alpha_enc.c
analysis_enc.c
backward_references_cost_enc.c
backward_references_enc.c
config_enc.c
cost_enc.c
filter_enc.c
frame_enc.c
histogram_enc.c
iterator_enc.c
near_lossless_enc.c
picture_enc.c
picture_csp_enc.c
picture_psnr_enc.c
picture_rescale_enc.c
picture_tools_enc.c
predictor_enc.c
quant_enc.c
syntax_enc.c
token_enc.c
Generating Code...
Compiling...
tree_enc.c
vp8l_enc.c
webp_enc.c
Generating Code...
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\libwebp_dll.pdb /Fooutput\release-dynamic\x64\obj\dsp\ src\dsp\cost.c src\dsp\cost_mips32.c src\dsp\cost_mips_dsp_r2.c src\dsp\cost_neon.c src\dsp\cost_sse2.c src\dsp\enc.c src\dsp\enc_mips32.c src\dsp\enc_mips_dsp_r2.c src\dsp\enc_msa.c src\dsp\enc_neon.c src\dsp\enc_sse2.c src\dsp\enc_sse41.c src\dsp\lossless_enc.c src\dsp\lossless_enc_mips32.c src\dsp\lossless_enc_mips_dsp_r2.c src\dsp\lossless_enc_msa.c src\dsp\lossless_enc_neon.c src\dsp\lossless_enc_sse2.c src\dsp\lossless_enc_sse41.c src\dsp\ssim.c src\dsp\ssim_sse2.c
cost.c
cost_mips32.c
cost_mips_dsp_r2.c
cost_neon.c
cost_sse2.c
enc.c
enc_mips32.c
enc_mips_dsp_r2.c
enc_msa.c
enc_neon.c
enc_sse2.c
enc_sse41.c
lossless_enc.c
lossless_enc_mips32.c
lossless_enc_mips_dsp_r2.c
lossless_enc_msa.c
lossless_enc_neon.c
lossless_enc_sse2.c
lossless_enc_sse41.c
ssim.c
Generating Code...
Compiling...
ssim_sse2.c
Generating Code...
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\libwebp_dll.pdb /Fooutput\release-dynamic\x64\obj\utils\ src\utils\bit_writer_utils.c src\utils\huffman_encode_utils.c src\utils\quant_levels_utils.c
bit_writer_utils.c
huffman_encode_utils.c
quant_levels_utils.c
Generating Code...
        rc.exe /nologo /l"0x0409" /fooutput\release-dynamic\x64\obj\libwebp.res src\libwebp.rc
        link.exe /DLL /nologo /out:output\release-dynamic\x64\bin\libwebp.dll /implib:output\release-dynamic\x64\lib\libwebp_dll.lib  output\release-dynamic\x64\obj\dec\alpha_dec.obj output\release-dynamic\x64\obj\dec\buffer_dec.obj output\release-dynamic\x64\obj\dec\frame_dec.obj output\release-dynamic\x64\obj\dec\idec_dec.obj output\release-dynamic\x64\obj\dec\io_dec.obj output\release-dynamic\x64\obj\dec\quant_dec.obj output\release-dynamic\x64\obj\dec\tree_dec.obj output\release-dynamic\x64\obj\dec\vp8_dec.obj output\release-dynamic\x64\obj\dec\vp8l_dec.obj output\release-dynamic\x64\obj\dec\webp_dec.obj output\release-dynamic\x64\obj\dsp\alpha_processing.obj output\release-dynamic\x64\obj\dsp\alpha_processing_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\alpha_processing_neon.obj output\release-dynamic\x64\obj\dsp\alpha_processing_sse2.obj output\release-dynamic\x64\obj\dsp\alpha_processing_sse41.obj output\release-dynamic\x64\obj\dsp\cpu.obj output\release-dynamic\x64\obj\dsp\dec.obj output\release-dynamic\x64\obj\dsp\dec_clip_tables.obj output\release-dynamic\x64\obj\dsp\dec_mips32.obj output\release-dynamic\x64\obj\dsp\dec_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\dec_msa.obj output\release-dynamic\x64\obj\dsp\dec_neon.obj output\release-dynamic\x64\obj\dsp\dec_sse2.obj output\release-dynamic\x64\obj\dsp\dec_sse41.obj output\release-dynamic\x64\obj\dsp\filters.obj output\release-dynamic\x64\obj\dsp\filters_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\filters_msa.obj output\release-dynamic\x64\obj\dsp\filters_neon.obj output\release-dynamic\x64\obj\dsp\filters_sse2.obj output\release-dynamic\x64\obj\dsp\lossless.obj output\release-dynamic\x64\obj\dsp\lossless_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\lossless_msa.obj output\release-dynamic\x64\obj\dsp\lossless_neon.obj output\release-dynamic\x64\obj\dsp\lossless_sse2.obj output\release-dynamic\x64\obj\dsp\lossless_sse41.obj output\release-dynamic\x64\obj\dsp\rescaler.obj output\release-dynamic\x64\obj\dsp\rescaler_mips32.obj output\release-dynamic\x64\obj\dsp\rescaler_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\rescaler_msa.obj output\release-dynamic\x64\obj\dsp\rescaler_neon.obj output\release-dynamic\x64\obj\dsp\rescaler_sse2.obj output\release-dynamic\x64\obj\dsp\upsampling.obj output\release-dynamic\x64\obj\dsp\upsampling_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\upsampling_msa.obj output\release-dynamic\x64\obj\dsp\upsampling_neon.obj output\release-dynamic\x64\obj\dsp\upsampling_sse2.obj output\release-dynamic\x64\obj\dsp\upsampling_sse41.obj output\release-dynamic\x64\obj\dsp\yuv.obj output\release-dynamic\x64\obj\dsp\yuv_mips32.obj output\release-dynamic\x64\obj\dsp\yuv_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\yuv_neon.obj output\release-dynamic\x64\obj\dsp\yuv_sse2.obj output\release-dynamic\x64\obj\dsp\yuv_sse41.obj output\release-dynamic\x64\obj\utils\bit_reader_utils.obj output\release-dynamic\x64\obj\utils\color_cache_utils.obj output\release-dynamic\x64\obj\utils\filters_utils.obj output\release-dynamic\x64\obj\utils\huffman_utils.obj output\release-dynamic\x64\obj\utils\quant_levels_dec_utils.obj output\release-dynamic\x64\obj\utils\rescaler_utils.obj output\release-dynamic\x64\obj\utils\random_utils.obj output\release-dynamic\x64\obj\utils\thread_utils.obj output\release-dynamic\x64\obj\utils\utils.obj output\release-dynamic\x64\obj\enc\alpha_enc.obj output\release-dynamic\x64\obj\enc\analysis_enc.obj output\release-dynamic\x64\obj\enc\backward_references_cost_enc.obj output\release-dynamic\x64\obj\enc\backward_references_enc.obj output\release-dynamic\x64\obj\enc\config_enc.obj output\release-dynamic\x64\obj\enc\cost_enc.obj output\release-dynamic\x64\obj\enc\filter_enc.obj output\release-dynamic\x64\obj\enc\frame_enc.obj output\release-dynamic\x64\obj\enc\histogram_enc.obj output\release-dynamic\x64\obj\enc\iterator_enc.obj output\release-dynamic\x64\obj\enc\near_lossless_enc.obj output\release-dynamic\x64\obj\enc\picture_enc.obj output\release-dynamic\x64\obj\enc\picture_csp_enc.obj output\release-dynamic\x64\obj\enc\picture_psnr_enc.obj output\release-dynamic\x64\obj\enc\picture_rescale_enc.obj output\release-dynamic\x64\obj\enc\picture_tools_enc.obj output\release-dynamic\x64\obj\enc\predictor_enc.obj output\release-dynamic\x64\obj\enc\quant_enc.obj output\release-dynamic\x64\obj\enc\syntax_enc.obj output\release-dynamic\x64\obj\enc\token_enc.obj output\release-dynamic\x64\obj\enc\tree_enc.obj output\release-dynamic\x64\obj\enc\vp8l_enc.obj output\release-dynamic\x64\obj\enc\webp_enc.obj output\release-dynamic\x64\obj\dsp\cost.obj output\release-dynamic\x64\obj\dsp\cost_mips32.obj output\release-dynamic\x64\obj\dsp\cost_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\cost_neon.obj output\release-dynamic\x64\obj\dsp\cost_sse2.obj output\release-dynamic\x64\obj\dsp\enc.obj output\release-dynamic\x64\obj\dsp\enc_mips32.obj output\release-dynamic\x64\obj\dsp\enc_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\enc_msa.obj output\release-dynamic\x64\obj\dsp\enc_neon.obj output\release-dynamic\x64\obj\dsp\enc_sse2.obj output\release-dynamic\x64\obj\dsp\enc_sse41.obj output\release-dynamic\x64\obj\dsp\lossless_enc.obj output\release-dynamic\x64\obj\dsp\lossless_enc_mips32.obj output\release-dynamic\x64\obj\dsp\lossless_enc_mips_dsp_r2.obj output\release-dynamic\x64\obj\dsp\lossless_enc_msa.obj output\release-dynamic\x64\obj\dsp\lossless_enc_neon.obj output\release-dynamic\x64\obj\dsp\lossless_enc_sse2.obj output\release-dynamic\x64\obj\dsp\lossless_enc_sse41.obj output\release-dynamic\x64\obj\dsp\ssim.obj output\release-dynamic\x64\obj\dsp\ssim_sse2.obj output\release-dynamic\x64\obj\utils\bit_writer_utils.obj output\release-dynamic\x64\obj\utils\huffman_encode_utils.obj output\release-dynamic\x64\obj\utils\quant_levels_utils.obj output\release-dynamic\x64\lib\libsharpyuv_dll.lib output\release-dynamic\x64\lib\libsharpyuv_dll.lib output\release-dynamic\x64\obj\libwebp.res
   Creating library output\release-dynamic\x64\lib\libwebp_dll.lib and object output\release-dynamic\x64\lib\libwebp_dll.exp
        xcopy output\release-dynamic\x64\obj\*.pdb output\release-dynamic\x64\lib /y
File not found - *.pdb
0 File(s) copied
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\examples\ /Fooutput\release-dynamic\x64\obj\examples\ examples\cwebp.c
cwebp.c
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\imageio\ /Fooutput\release-dynamic\x64\obj\imageio\ imageio\image_dec.c imageio\jpegdec.c imageio\metadata.c imageio\pngdec.c imageio\pnmdec.c imageio\tiffdec.c imageio\webpdec.c imageio\wicdec.c
image_dec.c
jpegdec.c
metadata.c
pngdec.c
pnmdec.c
tiffdec.c
webpdec.c
wicdec.c
Generating Code...
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\imageio\ /Fooutput\release-dynamic\x64\obj\imageio\ imageio\imageio_util.c
imageio_util.c
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\libwebp_dll.pdb /Fooutput\release-dynamic\x64\obj\demux\ src\demux\anim_decode.c src\demux\demux.c
anim_decode.c
demux.c
Generating Code...
        rc.exe /nologo /l"0x0409" /fooutput\release-dynamic\x64\obj\demux\libwebpdemux.res src\demux\libwebpdemux.rc
        link.exe /DLL /nologo /out:output\release-dynamic\x64\bin\libwebpdemux.dll /implib:output\release-dynamic\x64\lib\libwebpdemux_dll.lib  output\release-dynamic\x64\obj\demux\anim_decode.obj output\release-dynamic\x64\obj\demux\demux.obj output\release-dynamic\x64\lib\libwebp_dll.lib output\release-dynamic\x64\obj\demux\libwebpdemux.res
   Creating library output\release-dynamic\x64\lib\libwebpdemux_dll.lib and object output\release-dynamic\x64\lib\libwebpdemux_dll.exp
        xcopy output\release-dynamic\x64\obj\*.pdb output\release-dynamic\x64\lib /y
File not found - *.pdb
0 File(s) copied
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\examples\ /Fooutput\release-dynamic\x64\obj\examples\ examples\example_util.c
example_util.c
        link.exe /nologo /LARGEADDRESSAWARE /MANIFEST:EMBED /NXCOMPAT /DYNAMICBASE  /OUT:output\release-dynamic\x64\bin\cwebp.exe output\release-dynamic\x64\obj\examples\cwebp.obj output\release-dynamic\x64\obj\imageio\image_dec.obj output\release-dynamic\x64\obj\imageio\jpegdec.obj output\release-dynamic\x64\obj\imageio\metadata.obj output\release-dynamic\x64\obj\imageio\pngdec.obj output\release-dynamic\x64\obj\imageio\pnmdec.obj output\release-dynamic\x64\obj\imageio\tiffdec.obj output\release-dynamic\x64\obj\imageio\webpdec.obj output\release-dynamic\x64\obj\imageio\wicdec.obj output\release-dynamic\x64\obj\imageio\imageio_util.obj output\release-dynamic\x64\lib\libwebpdemux_dll.lib output\release-dynamic\x64\lib\libsharpyuv_dll.lib output\release-dynamic\x64\obj\examples\example_util.obj output\release-dynamic\x64\lib\libwebp_dll.lib ole32.lib windowscodecs.lib shlwapi.lib
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\examples\ /Fooutput\release-dynamic\x64\obj\examples\ examples\dwebp.c
dwebp.c
        cl.exe /nologo /O2 /DNDEBUG /Ioutput\release-dynamic\x64\obj /MD /DWEBP_DLL /I. /Isrc /nologo /W3 /EHsc /c /DWIN32 /D_CRT_SECURE_NO_WARNINGS /DWIN32_LEAN_AND_MEAN /DHAVE_WINCODEC_H /DWEBP_USE_THREAD /Fdoutput\release-dynamic\x64\obj\imageio\ /Fooutput\release-dynamic\x64\obj\imageio\ imageio\image_enc.c
image_enc.c
        link.exe /nologo /LARGEADDRESSAWARE /MANIFEST:EMBED /NXCOMPAT /DYNAMICBASE  /OUT:output\release-dynamic\x64\bin\dwebp.exe output\release-dynamic\x64\obj\examples\dwebp.obj output\release-dynamic\x64\obj\imageio\image_dec.obj output\release-dynamic\x64\obj\imageio\jpegdec.obj output\release-dynamic\x64\obj\imageio\metadata.obj output\release-dynamic\x64\obj\imageio\pngdec.obj output\release-dynamic\x64\obj\imageio\pnmdec.obj output\release-dynamic\x64\obj\imageio\tiffdec.obj output\release-dynamic\x64\obj\imageio\webpdec.obj output\release-dynamic\x64\obj\imageio\wicdec.obj output\release-dynamic\x64\obj\imageio\image_enc.obj output\release-dynamic\x64\obj\imageio\imageio_util.obj output\release-dynamic\x64\lib\libwebpdemux_dll.lib output\release-dynamic\x64\obj\examples\example_util.obj output\release-dynamic\x64\lib\libwebp_dll.lib ole32.lib windowscodecs.lib shlwapi.lib

James Zern

unread,
Sep 18, 2023, 1:52:28 PM9/18/23
to webp-d...@webmproject.org
Hi,

On Mon, Sep 18, 2023 at 12:40 AM Leo <zio...@gmail.com> wrote:
Following the same way to build and without any manual changes, it is wired that the result is different if there is no difference or missing something. Does anyone have the same issue?  

Here is what I do - 
  1. downloalibwebp-1.3.2.tar.gz from the download list
  2. Go to the folder libwebp-1.3.2 and run the build command "nmake /f Makefile.vc CFG=release-dynamic objdir=output"
  3. libwebp.dll is generated under the folder "\libwebp-1.3.2\output\release-dynamic\x64\bin".
  4. Replace the library of old version with the new one in the c# project.  

Since 1.3.0 libwebp now depends on libsharpyuv.dll [1]. You'll need to add both to your project.

 
[...]

在2023年9月15日星期五 UTC+8 18:03:23<Rsool Montakhb> 写道:
No 

في الجمعة، ١٥ سبتمبر ٢٠٢٣, ١٢:٣٢ Leo <zio...@gmail.com> كتب:
Hi,

Following this way to build and import functions, it fails to load libwebp.dll of version 1.3.2, 1.3.1, 1.3.0 in C# code. But it works fine using the version 1.2.4. 

The exception information is "System.DllNotFoundException: 'Unable to load DLL 'C:\libwebp.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)'.

Is there any different between version 1.3.* and 1.2.4? or is anything missed?

Thanks,
Leo

--
You received this message because you are subscribed to the Google Groups "WebP Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webp-discuss...@webmproject.org.
To view this discussion on the web visit https://groups.google.com/a/webmproject.org/d/msgid/webp-discuss/eeb6cb06-cd58-4f0a-997f-32a21112fbedn%40webmproject.org.

--
You received this message because you are subscribed to the Google Groups "WebP Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webp-discuss...@webmproject.org.

Leo

unread,
Sep 20, 2023, 9:01:34 PM9/20/23
to WebP Discussion, James Zern
Done! Thanks, James.
Reply all
Reply to author
Forward
0 new messages