diff --git a/Core/src/org/sleuthkit/autopsy/modules/pictureanalyzer/impls/HeifJNI.java b/Core/src/org/sleuthkit/autopsy/modules/pictureanalyzer/impls/HeifJNI.java index 601792bdf941d674da72b553536c1472a9d0a476..5a0f8fa3161a0e020b4b78eb5957e3c0579bb50a 100644 --- a/Core/src/org/sleuthkit/autopsy/modules/pictureanalyzer/impls/HeifJNI.java +++ b/Core/src/org/sleuthkit/autopsy/modules/pictureanalyzer/impls/HeifJNI.java @@ -18,6 +18,8 @@ */ package org.sleuthkit.autopsy.modules.pictureanalyzer.impls; +import com.sun.javafx.PlatformUtil; + /** * * Interop with libheif native dependencies. @@ -32,11 +34,13 @@ public class HeifJNI { */ public static HeifJNI getInstance() throws UnsatisfiedLinkError { if (instance == null) { - System.loadLibrary("vcruntime140_1"); - System.loadLibrary("libx265"); - System.loadLibrary("libde265"); - System.loadLibrary("heif"); - System.loadLibrary("jpeg62"); + if (PlatformUtil.isWindows()) { + System.loadLibrary("vcruntime140_1"); + System.loadLibrary("libx265"); + System.loadLibrary("libde265"); + System.loadLibrary("heif"); + System.loadLibrary("jpeg62"); + } System.loadLibrary("heifconvert"); instance = new HeifJNI(); } diff --git a/thirdparty/libheif/HeifConvertJNI/dist/CMakeCache.txt b/thirdparty/libheif/HeifConvertJNI/dist/CMakeCache.txt index 4cd58c22a77679fad43ef9ea1efaf9d4d7a5d1c3..28fc4a53ceaf279c3485d60b979d4e3a89d91fcb 100644 --- a/thirdparty/libheif/HeifConvertJNI/dist/CMakeCache.txt +++ b/thirdparty/libheif/HeifConvertJNI/dist/CMakeCache.txt @@ -74,7 +74,7 @@ CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL //Install path prefix, prepended onto install directories. -CMAKE_INSTALL_PREFIX:PATH=C:/Program Files/heifconvert +CMAKE_INSTALL_PREFIX:PATH=C:/Program Files (x86)/heifconvert //Path to a program. CMAKE_LINKER:FILEPATH=C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.31.31103/bin/Hostx64/x64/link.exe @@ -355,7 +355,7 @@ CMAKE_GENERATOR:INTERNAL=Visual Studio 17 2022 //Generator instance identifier. CMAKE_GENERATOR_INSTANCE:INTERNAL=C:/Program Files/Microsoft Visual Studio/2022/Community //Name of generator platform. -CMAKE_GENERATOR_PLATFORM:INTERNAL=x64 +CMAKE_GENERATOR_PLATFORM:INTERNAL= //Name of generator toolset. CMAKE_GENERATOR_TOOLSET:INTERNAL= //Source directory with the top level CMakeLists.txt file for this diff --git a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CMakeDetermineCompilerABI_C.bin b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CMakeDetermineCompilerABI_C.bin index 0ee82d02da82c8ce040c4b2fd7bf2e3544579bac..66009012f3c1331a2cf57d1bc27a06406f3a833c 100644 Binary files a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CMakeDetermineCompilerABI_C.bin and b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CMakeDetermineCompilerABI_C.bin differ diff --git a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CMakeDetermineCompilerABI_CXX.bin b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CMakeDetermineCompilerABI_CXX.bin index ae454546416b60cbef83ea84aa594adb6f46efc8..c5d787efcb1ff17c2bf65dae1ef36a74efe0ed87 100644 Binary files a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CMakeDetermineCompilerABI_CXX.bin and b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CMakeDetermineCompilerABI_CXX.bin differ diff --git a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdC/CompilerIdC.exe b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdC/CompilerIdC.exe index 86d0549360a73ae39a8e05b5172732ba6c0dbdb6..2bb1cacf91fcd575d955147a458864fd264f4ca1 100644 Binary files a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdC/CompilerIdC.exe and b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdC/CompilerIdC.exe differ diff --git a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdC/Debug/CMakeCCompilerId.obj b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdC/Debug/CMakeCCompilerId.obj index bccb02b24b0083d93a450d97c329860515f4db76..105353b9e453cc7e80bec8db8fd5a481141d7018 100644 Binary files a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdC/Debug/CMakeCCompilerId.obj and b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdC/Debug/CMakeCCompilerId.obj differ diff --git a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdCXX/CompilerIdCXX.exe b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdCXX/CompilerIdCXX.exe index be2ded3c24072a42fd2535a7f00a1559863f616a..3f4e56dddc38e1588ba6145fab5aaf702eb0a591 100644 Binary files a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdCXX/CompilerIdCXX.exe and b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdCXX/CompilerIdCXX.exe differ diff --git a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdCXX/Debug/CMakeCXXCompilerId.obj b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdCXX/Debug/CMakeCXXCompilerId.obj index c939c7be38cee7cca9a296ed5b31aabf6a8c8a04..c490b1c35cb6a7017f608d4dfacab05ed28d9664 100644 Binary files a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdCXX/Debug/CMakeCXXCompilerId.obj and b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/3.23.0-rc2/CompilerIdCXX/Debug/CMakeCXXCompilerId.obj differ diff --git a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/CMakeOutput.log b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/CMakeOutput.log index 469c0c825eedb093066424ceb5ab41289b1acf0f..7e7991f4985a777436e7607689385ddd55495223 100644 --- a/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/CMakeOutput.log +++ b/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/CMakeOutput.log @@ -9,7 +9,7 @@ The output was: Microsoft (R) Build Engine version 17.1.0+ae57d105c for .NET Framework Copyright (C) Microsoft Corporation. All rights reserved. -Build started 10/27/2022 2:47:03 PM. +Build started 10/27/2022 6:42:07 PM. Project "C:\Users\gregd\Documents\Source\autopsy\thirdparty\libheif\HeifConvertJNI\dist\CMakeFiles\3.23.0-rc2\CompilerIdC\CompilerIdC.vcxproj" on node 1 (default targets). PrepareForBuild: Creating directory "Debug\". @@ -43,7 +43,7 @@ Build succeeded. 0 Warning(s) 0 Error(s) -Time Elapsed 00:00:03.70 +Time Elapsed 00:00:01.91 Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "CompilerIdC.exe" @@ -62,7 +62,7 @@ The output was: Microsoft (R) Build Engine version 17.1.0+ae57d105c for .NET Framework Copyright (C) Microsoft Corporation. All rights reserved. -Build started 10/27/2022 2:47:07 PM. +Build started 10/27/2022 6:42:10 PM. Project "C:\Users\gregd\Documents\Source\autopsy\thirdparty\libheif\HeifConvertJNI\dist\CMakeFiles\3.23.0-rc2\CompilerIdCXX\CompilerIdCXX.vcxproj" on node 1 (default targets). PrepareForBuild: Creating directory "Debug\". @@ -96,7 +96,7 @@ Build succeeded. 0 Warning(s) 0 Error(s) -Time Elapsed 00:00:00.99 +Time Elapsed 00:00:00.95 Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CompilerIdCXX.exe" @@ -108,28 +108,28 @@ The CXX compiler identification is MSVC, found in "C:/Users/gregd/Documents/Sour Detecting C compiler ABI info compiled with the following output: Change Dir: C:/Users/gregd/Documents/Source/autopsy/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/CMakeTmp -Run Build Command(s):C:/Program Files/Microsoft Visual Studio/2022/Community/MSBuild/Current/Bin/amd64/MSBuild.exe cmTC_c7496.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:m && Microsoft (R) Build Engine version 17.1.0+ae57d105c for .NET Framework +Run Build Command(s):C:/Program Files/Microsoft Visual Studio/2022/Community/MSBuild/Current/Bin/amd64/MSBuild.exe cmTC_44ff9.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:m && Microsoft (R) Build Engine version 17.1.0+ae57d105c for .NET Framework Copyright (C) Microsoft Corporation. All rights reserved. Microsoft (R) C/C++ Optimizing Compiler Version 19.31.31104 for x64 - Copyright (C) Microsoft Corporation. All rights reserved. CMakeCCompilerABI.c - cl /c /Zi /W1 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_c7496.dir\Debug\\" /Fd"cmTC_c7496.dir\Debug\vc143.pdb" /external:W1 /Gd /TC /errorReport:queue "C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompilerABI.c" - cmTC_c7496.vcxproj -> C:\Users\gregd\Documents\Source\autopsy\thirdparty\libheif\HeifConvertJNI\dist\CMakeFiles\CMakeTmp\Debug\cmTC_c7496.exe + Copyright (C) Microsoft Corporation. All rights reserved. + cl /c /Zi /W1 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_44ff9.dir\Debug\\" /Fd"cmTC_44ff9.dir\Debug\vc143.pdb" /external:W1 /Gd /TC /errorReport:queue "C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompilerABI.c" + cmTC_44ff9.vcxproj -> C:\Users\gregd\Documents\Source\autopsy\thirdparty\libheif\HeifConvertJNI\dist\CMakeFiles\CMakeTmp\Debug\cmTC_44ff9.exe Detecting CXX compiler ABI info compiled with the following output: Change Dir: C:/Users/gregd/Documents/Source/autopsy/thirdparty/libheif/HeifConvertJNI/dist/CMakeFiles/CMakeTmp -Run Build Command(s):C:/Program Files/Microsoft Visual Studio/2022/Community/MSBuild/Current/Bin/amd64/MSBuild.exe cmTC_44417.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:m && Microsoft (R) Build Engine version 17.1.0+ae57d105c for .NET Framework +Run Build Command(s):C:/Program Files/Microsoft Visual Studio/2022/Community/MSBuild/Current/Bin/amd64/MSBuild.exe cmTC_cd282.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:m && Microsoft (R) Build Engine version 17.1.0+ae57d105c for .NET Framework Copyright (C) Microsoft Corporation. All rights reserved. Microsoft (R) C/C++ Optimizing Compiler Version 19.31.31104 for x64 CMakeCXXCompilerABI.cpp Copyright (C) Microsoft Corporation. All rights reserved. - cl /c /Zi /W1 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_44417.dir\Debug\\" /Fd"cmTC_44417.dir\Debug\vc143.pdb" /external:W1 /Gd /TP /errorReport:queue "C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompilerABI.cpp" - cmTC_44417.vcxproj -> C:\Users\gregd\Documents\Source\autopsy\thirdparty\libheif\HeifConvertJNI\dist\CMakeFiles\CMakeTmp\Debug\cmTC_44417.exe + cl /c /Zi /W1 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_cd282.dir\Debug\\" /Fd"cmTC_cd282.dir\Debug\vc143.pdb" /external:W1 /Gd /TP /errorReport:queue "C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompilerABI.cpp" + cmTC_cd282.vcxproj -> C:\Users\gregd\Documents\Source\autopsy\thirdparty\libheif\HeifConvertJNI\dist\CMakeFiles\CMakeTmp\Debug\cmTC_cd282.exe diff --git a/thirdparty/libheif/HeifConvertJNI/dist/Release/heifconvert.dll b/thirdparty/libheif/HeifConvertJNI/dist/Release/heifconvert.dll index 4c8d2397f02a9d371834df7f5dce0047263534fe..6dfe6342fd8aea96bd4c2923dcdf42d196847808 100644 Binary files a/thirdparty/libheif/HeifConvertJNI/dist/Release/heifconvert.dll and b/thirdparty/libheif/HeifConvertJNI/dist/Release/heifconvert.dll differ diff --git a/thirdparty/libheif/HeifConvertJNI/dist/cmake_install.cmake b/thirdparty/libheif/HeifConvertJNI/dist/cmake_install.cmake index 92ac0665c43d60bd153f839d3f0a78bcd3d5cf56..5d7d678570ee30fcb1a397ea613f073711ba0d0d 100644 --- a/thirdparty/libheif/HeifConvertJNI/dist/cmake_install.cmake +++ b/thirdparty/libheif/HeifConvertJNI/dist/cmake_install.cmake @@ -2,7 +2,7 @@ # Set the install prefix if(NOT DEFINED CMAKE_INSTALL_PREFIX) - set(CMAKE_INSTALL_PREFIX "C:/Program Files/heifconvert") + set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/heifconvert") endif() string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") diff --git a/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/encoder.obj b/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/encoder.obj index 66da4caf5fb75e64e1b461d5db89409cea5fd082..fb8c7894f47e71c5a82f2dd7c28c563959d0d1fa 100644 Binary files a/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/encoder.obj and b/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/encoder.obj differ diff --git a/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/encoder_jpeg.obj b/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/encoder_jpeg.obj index 207b431d4b682036736ee9f6ba18f3aeacb44ae2..3acd687912668940ef88fa3a766ac4f5226d9b49 100644 Binary files a/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/encoder_jpeg.obj and b/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/encoder_jpeg.obj differ diff --git a/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/org_sleuthkit_autopsy_modules_pictureanalyzer_impls_HeifJNI.obj b/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/org_sleuthkit_autopsy_modules_pictureanalyzer_impls_HeifJNI.obj index 894acd9c9e096c063155b43a1ec660120fd0e10c..4b8f40628b0a624786e7648e562475ac678cde83 100644 Binary files a/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/org_sleuthkit_autopsy_modules_pictureanalyzer_impls_HeifJNI.obj and b/thirdparty/libheif/HeifConvertJNI/dist/heifconvert.dir/Release/org_sleuthkit_autopsy_modules_pictureanalyzer_impls_HeifJNI.obj differ diff --git a/thirdparty/libheif/README.txt b/thirdparty/libheif/README.txt index 1e5470ed754b7de5f4e939c40347dff6fe9ab6a0..9bc4a85affe92807407f0e3bab975acf441a3726 100644 --- a/thirdparty/libheif/README.txt +++ b/thirdparty/libheif/README.txt @@ -11,7 +11,7 @@ or something other than the suffix :x64-windows for different architectures. In order to build, 1) from command line, set directory to HeifConvertJNI\dist -2) You can rebuild the vcxproj in this directory by running: cmake -G "Visual Studio 17 2022" -A x64 -S .. "-DCMAKE_TOOLCHAIN_FILE=PATH_TO_VCPKG_INSTALL/scripts/buildsystems/vcpkg.cmake" (on macOS and linux, the "-G" and "-A" parameters can be ignored) +2) You can rebuild the vcxproj in this directory by running: cmake -G "Visual Studio 17 2022" -A x64 -S .. "-DCMAKE_TOOLCHAIN_FILE=PATH_TO_VCPKG_INSTALL/scripts/buildsystems/vcpkg.cmake" (on macOS and linux, the "-G" and "-A" parameters can be ignored because it populates or could run without "-A" flag and "-G 'Unix MakeFiles'") 3) The binaries can be created by running: cmake --build . --config Release * The "-A x64" flag can be substituted with relevant architecture. \ No newline at end of file diff --git a/thirdparty/libheif/Release/lib/x64_linux/libheifconvert.so b/thirdparty/libheif/Release/lib/x64_linux/libheifconvert.so new file mode 100644 index 0000000000000000000000000000000000000000..b2ce896d6661ccd33f0d10db049c0ddad2c8bbb6 Binary files /dev/null and b/thirdparty/libheif/Release/lib/x64_linux/libheifconvert.so differ