Hi,
I'm maintaining WebP's Find Module for Krita, so thanks for the heads up.
Based on the error you're getting, I assume you're building against
static WebP? Otherwise it should stay happily hidden behind the DLL façade.
amyspark
On 05/10/2022 09:32, Miguel Medalha wrote:
Salutations to all
Due to some recent changes in the WEBP source code, building the dynamic
libtiff library with WEBP support started giving the following error
messages:
libwebp.lib(picture_csp_enc.obj) : error LNK2001: unresolved external
symbol SharpYuvConvert [C:\Build\bin\libtiff\libtiff\tiff.vcxproj]
libwebp.lib(picture_csp_enc.obj) : error LNK2001: unresolved external
symbol SharpYuvGetConversionMatrix
[C:\Build\bin\libtiff\libtiff\tiff.vcxproj]
libwebp.lib(picture_csp_enc.obj) : error LNK2001: unresolved external
symbol SharpYuvInit [C:\Build\bin\libtiff\libtiff\tiff.vcxproj]
C:\Build\bin\libtiff\libtiff\Release\tiff.dll : fatal error LNK1120: 3
unresolved externals [C:\Build\bin\libtiff\libtiff\tiff.vcxproj]
This is related to the introduction of a new library in WEBP,
libsharpyuv.lib.
I solved the problem by appending the following to the end of
libtiff/libtiff/CMakeLists.txt:
if(WEBP_SUPPORT)
target_link_libraries(${PROJECT_NAME} PRIVATE
"C:/build/lib/libsharpyuv.lib")
endif()
or including the line in the relevant WEBP section (starting with line 148):
if(WEBP_SUPPORT)
target_link_libraries(tiff PRIVATE WebP::WebP)
string(APPEND tiff_requires_private " libwebp")
target_link_libraries(${PROJECT_NAME} PRIVATE
"C:/build/lib/libsharpyuv.lib")
endif()
With this line, libtiff builds and works correctly.
But having to edit the file by hand each time is not very elegant and I
would like to find a definitive solution. I tried to pass the
instruction on the cmake command line, but I couldn’t find a working
solution.
Better still would be someone with the necessary programming knowledge
to come up with a permanent solution on the original libtiff code. I am
not a developer, I am a libtiff user with just enough knowledge to
compile it myself and lightly modify code to solve basic issues.
I can also introduce the reference to libshrpyuv in Microsoft Visual
Studio, under Linker/Input/Additional Dependencies, but I mostly prefer
to build from the command line using cmake.
Any tips would be appreciated.
Thank you.
_______________________________________________
Tiff mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/tiff
--
amyspark 🌸 https://www.amyspark.me
_______________________________________________
Tiff mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/tiff