Build failed for SDL3_image
Installed SDL3 and SDL3_image on Visual Studio 2022 Community (Windows 11) as per instructions linked here.
Linking, building and implementation working for SDL3. Build fails on SDL3_image.
Output of build log:
Build started at 8:04 PM...
1>------ Build started: Project: SDL3_image, Configuration: Debug x64 ------
1>Copying libavif-16.dll
1>The system cannot find the file specified.
1>Copying libtiff-6.dll
1>The system cannot find the file specified.
1>Copying libwebp-7.dll
1>The system cannot find the file specified.
1>Copying libwebpdemux-2.dll
1>The system cannot find the file specified.
1>Copying LICENSE.avif.txt
1>The system cannot find the file specified.
1>Copying LICENSE.dav1d.txt
1>The system cannot find the file specified.
1>Copying LICENSE.tiff.txt
1>The system cannot find the file specified.
1>Copying LICENSE.webp.txt
1>The system cannot find the file specified.
1>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(254,5): error MSB8066: Custom build for 'external\optional\x64\libavif-16.dll;external\optional\x64\libtiff-6.dll;external\optional\x64\libwebp-7.dll;external\optional\x64\libwebpdemux-2.dll;external\optional\x64\LICENSE.avif.txt;external\optional\x64\LICENSE.dav1d.txt;external\optional\x64\LICENSE.tiff.txt;external\optional\x64\LICENSE.webp.txt' exited with code 1.
1>Done building project "SDL_image.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Build completed at 8:04 PM and took 00.265 seconds ==========
I've redownloaded the SDL3_image project, re-added project, reference and includes with no change in output. Any direction would be appreciated.
Does applying this patch fix something?
diff --git a/VisualC/SDL_image.vcxproj b/VisualC/SDL_image.vcxproj
index 46e50b7f..aad0775b 100644
--- a/VisualC/SDL_image.vcxproj
+++ b/VisualC/SDL_image.vcxproj
@@ -224,7 +224,7 @@
<ClInclude Include="..\include\SDL3_image\SDL_image.h" />
</ItemGroup>
<ItemGroup>
- <CustomBuild Include="external\optional\x64\libavif-16.dll">
+ <CustomBuild Include="$(ProjectDir)external\optional\x64\libavif-16.dll">
<FileType>Document</FileType>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
@@ -233,7 +233,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x64\libtiff-6.dll">
+ <CustomBuild Include="$(ProjectDir)external\optional\x64\libtiff-6.dll">
<FileType>Document</FileType>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
@@ -242,7 +242,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x64\libwebp-7.dll">
+ <CustomBuild Include="$(ProjectDir)external\optional\x64\libwebp-7.dll">
<FileType>Document</FileType>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
@@ -251,7 +251,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x64\libwebpdemux-2.dll">
+ <CustomBuild Include="$(ProjectDir)external\optional\x64\libwebpdemux-2.dll">
<FileType>Document</FileType>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
@@ -260,7 +260,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x64\LICENSE.avif.txt">
+ <CustomBuild Include="$(ProjectDir)external\optional\x64\LICENSE.avif.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
@@ -268,7 +268,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x64\LICENSE.dav1d.txt">
+ <CustomBuild Include="$(ProjectDir)external\optional\x64\LICENSE.dav1d.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
@@ -276,7 +276,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x64\LICENSE.tiff.txt">
+ <CustomBuild Include="$(ProjectDir)external\optional\x64\LICENSE.tiff.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
@@ -284,7 +284,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x64\LICENSE.webp.txt">
+ <CustomBuild Include="$(ProjectDir)external\optional\x64\LICENSE.webp.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
@@ -294,7 +294,7 @@
</CustomBuild>
</ItemGroup>
<ItemGroup>
- <CustomBuild Include="external\optional\x86\libavif-16.dll">
+ <CustomBuild Include="$(ProjectDir)external\optional\x86\libavif-16.dll">
<FileType>Document</FileType>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
@@ -303,7 +303,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x86\libtiff-6.dll">
+ <CustomBuild Include="$(ProjectDir)external\optional\x86\libtiff-6.dll">
<FileType>Document</FileType>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
@@ -312,7 +312,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x86\libwebp-7.dll">
+ <CustomBuild Include="$(ProjectDir)external\optional\x86\libwebp-7.dll">
<FileType>Document</FileType>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
@@ -321,7 +321,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x86\libwebpdemux-2.dll">
+ <CustomBuild Include="$(ProjectDir)external\optional\x86\libwebpdemux-2.dll">
<FileType>Document</FileType>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
@@ -330,7 +330,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x86\LICENSE.avif.txt">
+ <CustomBuild Include="$(ProjectDir)external\optional\x86\LICENSE.avif.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
@@ -338,7 +338,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x86\LICENSE.dav1d.txt">
+ <CustomBuild Include="$(ProjectDir)external\optional\x86\LICENSE.dav1d.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
@@ -346,7 +346,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x86\LICENSE.tiff.txt">
+ <CustomBuild Include="$(ProjectDir)external\optional\x86\LICENSE.tiff.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
@@ -354,7 +354,7 @@
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
- <CustomBuild Include="external\optional\x86\LICENSE.webp.txt">
+ <CustomBuild Include="$(ProjectDir)external\optional\x86\LICENSE.webp.txt">
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
@madebr
Build logs displaying the full proper directory string now. I've confirmed the files exist at those locations but the build still fails.
1>------ Build started: Project: SDL3_image, Configuration: Debug x64 ------
1>Copying libavif-16.dll
1>The system cannot find the file specified.
1>Copying libtiff-6.dll
1>The system cannot find the file specified.
1>Copying libwebp-7.dll
1>The system cannot find the file specified.
1>Copying libwebpdemux-2.dll
1>The system cannot find the file specified.
1>Copying LICENSE.avif.txt
1>The system cannot find the file specified.
1>Copying LICENSE.dav1d.txt
1>The system cannot find the file specified.
1>Copying LICENSE.tiff.txt
1>The system cannot find the file specified.
1>Copying LICENSE.webp.txt
1>The system cannot find the file specified.
1>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(254,5): error MSB8066: Custom build for 'D:\Game Projects\timeless\SDL_image-main\VisualC\external\optional\x64\libavif-16.dll;D:\Game Projects\timeless\SDL_image-main\VisualC\external\optional\x64\libtiff-6.dll;D:\Game Projects\timeless\SDL_image-main\VisualC\external\optional\x64\libwebp-7.dll;D:\Game Projects\timeless\SDL_image-main\VisualC\external\optional\x64\libwebpdemux-2.dll;D:\Game Projects\timeless\SDL_image-main\VisualC\external\optional\x64\LICENSE.avif.txt;D:\Game Projects\timeless\SDL_image-main\VisualC\external\optional\x64\LICENSE.dav1d.txt;D:\Game Projects\timeless\SDL_image-main\VisualC\external\optional\x64\LICENSE.tiff.txt;D:\Game Projects\timeless\SDL_image-main\VisualC\external\optional\x64\LICENSE.webp.txt' exited with code 1.
1>Done building project "SDL_image.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Build completed at 8:34 PM and took 01.262 seconds ==========```
Please undo my last patch, and try the patch below. The space in your path might be causing an issue.
diff --git a/VisualC/SDL_image.vcxproj b/VisualC/SDL_image.vcxproj
index 46e50b7f..e2bca386 100644
--- a/VisualC/SDL_image.vcxproj
+++ b/VisualC/SDL_image.vcxproj
@@ -226,69 +226,69 @@
<ItemGroup>
<CustomBuild Include="external\optional\x64\libavif-16.dll">
<FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x64\libtiff-6.dll">
<FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x64\libwebp-7.dll">
<FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x64\libwebpdemux-2.dll">
<FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x64\LICENSE.avif.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x64\LICENSE.dav1d.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x64\LICENSE.tiff.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x64\LICENSE.webp.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
@@ -296,69 +296,69 @@
<ItemGroup>
<CustomBuild Include="external\optional\x86\libavif-16.dll">
<FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x86\libtiff-6.dll">
<FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x86\libwebp-7.dll">
<FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x86\libwebpdemux-2.dll">
<FileType>Document</FileType>
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x86\LICENSE.avif.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x86\LICENSE.dav1d.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x86\LICENSE.tiff.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
<CustomBuild Include="external\optional\x86\LICENSE.webp.txt">
- <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
- <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy %(FullPath) "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">copy "%(FullPath)" "$(SolutionDir)$(Platform)\$(Configuration)\"</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying %(Filename)%(Extension)</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\%(Filename)%(Extension)</Outputs>
</CustomBuild>
@madebr
Yes, it was my space is my path. Thank you.
Just want to also note that after fixing it I had to set the SDL3 Reference and Includes for the SDL3_image project for it to build successfully.
Just wanted to mention as it was a separate step that was not included in the install guide.
Thank you again for the help. 👍
Edit: For clarity, I tested the file you sent and that worked, I then removed the space from my path to avoid this situation in the future. 💯
I applied the patch at https://github.com/libsdl-org/SDL_image/commit/8f7ce97aae063b7f42474d04bdec7b2588ba7219. The next SDL3_image (pre)release will carry this fix.
Just want to also note that after fixing it I had to set the SDL3 Reference and Includes for the SDL3_image project for it to build successfully.
This is documented in docs/INTRO-visualstudio.md, is it not? https://github.com/libsdl-org/SDL_image/blob/8f7ce97aae063b7f42474d04bdec7b2588ba7219/docs/INTRO-visualstudio.md?plain=1#L13
Just wanted to mention as it was a separate step that was not included in the install guide.
What install guide were you referring to perhaps?
I applied the patch at 8f7ce97.
We possibly want this in SDL_mixer, too.
See https://github.com/libsdl-org/SDL_mixer/commit/ebdd9cc0fe43352e33ec234f4720fd7d54a31d13
@madebr
Yes, I was referring to that install doc.
What's not covered in the install doc is that you have to duplicate the (reference/include) process for the SDL3_image project as well.
As you can see in the image I've uploaded I've added the SDL reference to the SDL3_image project. I've also added VC++ include directories to the SDL3_image project properties.
If no one else is having this issue it might just be a local configuration issue with my VS but the SDL3_image project failed to build as it couldn't resolve the SDL3 reference in it's files until I manually added the reference and includes.
What's not covered in the install doc is that you have to duplicate the (reference/include) process for the SDL3_image project as well.
You're correct that SDL3_image has a dependency on SDL3, and thus needs to reference it. Otherwise linking SDL3_image will fail.
@slouken This is a correct change from a user perspective, but we don't want this change as part of this repo. Is it ok to add a line to the install guide saying to add a reference to SDL3 to the SDL3_image project?
@slouken This is a correct change from a user perspective, but we don't want this change as part of this repo. Is it ok to add a line to the install guide saying to add a reference to SDL3 to the SDL3_image project?
Yes, that would be great, thanks! Can you do the same for the other SDL_* projects?