Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. Domains: forum.doom9.org / forum.doom9.net / forum.doom9.se |
|
|
#1641 | Link | |
|
Formerly davidh*****
![]() Join Date: Jan 2004
Posts: 2,888
|
Quote:
Perhaps I should get clang... |
|
|
|
|
|
|
#1642 | Link |
|
Registered User
Join Date: Jul 2018
Posts: 609
|
Mmm. MSYS2 nasm shouldn't be issue because when I type in the ucrt64 shell "where nasm" I get "C:\msys64\ucrt64\bin\nasm.exe". You need "mingw-w64-ucrt-x86_64-nasm".
If you didn't see the other edits from my previous post I updated the script to be more friendly. Also you can use vcpkg to build ffmpeg with MSVC much more easily. Edit: for vcpkg you can see an example here. Last edited by StvG; 31st January 2025 at 23:08. |
|
|
|
|
|
#1643 | Link |
|
Formerly davidh*****
![]() Join Date: Jan 2004
Posts: 2,888
|
Yup, that's the same result I get from "where nasm". But I haven't done anything to tell Visual Studio/cl.exe to use nasm when it finds inline assembler, if that can even be done...
I tried with the new version of script, with these changes: Code:
compiler="cl" cmake_path="/c/Program Files/CMake/bin/cmake" dav1d_cross_file="/c/msys64/home/David/dav1d_cross.txt" |
|
|
|
|
|
#1645 | Link | |
|
Formerly davidh*****
![]() Join Date: Jan 2004
Posts: 2,888
|
Quote:
|
|
|
|
|
|
|
#1646 | Link |
|
Registered User
Join Date: Jul 2018
Posts: 609
|
Thanks. Found the issue (I thought modifying mingw header was only necessary clang-cl). Use this script https://pastebin.com/gJTFMdzd
|
|
|
|
|
|
#1647 | Link | |
|
Formerly davidh*****
![]() Join Date: Jan 2004
Posts: 2,888
|
Quote:
I was getting a few instances of this: Code:
Cannot open include file: 'stdalign.h' Code:
Compiler lacks support for C11 static assertions |
|
|
|
|
|
|
#1648 | Link |
|
Registered User
Join Date: Jul 2018
Posts: 609
|
I have it - https://i.ibb.co/VcyPrtKQ/Untitled.png. Try to install the latest Windows SDK or reinstall the one you have.
|
|
|
|
|
|
#1649 | Link | |
|
Formerly davidh*****
![]() Join Date: Jan 2004
Posts: 2,888
|
Quote:
I'll try running the script again tomorrow to see if I still get the same C11 static error. |
|
|
|
|
|
|
#1651 | Link | |
|
Formerly davidh*****
![]() Join Date: Jan 2004
Posts: 2,888
|
Okay, that all seems to have worked!
So now I need to: Quote:
What are the files that L-SMASH Works will be looking for in "DCMAKE_PREFIX_PATH="path_to_folder_where_are_include/lib_directories" when I get that far?
|
|
|
|
|
|
|
#1652 | Link | ||
|
...?
Join Date: Nov 2005
Location: Florida
Posts: 1,515
|
Quote:
Quote:
|
||
|
|
|
|
|
#1653 | Link | |
|
Registered User
Join Date: Jul 2018
Posts: 609
|
Quote:
FFmpeg include files/libraries, external libs/include files, liblsmash include file/lib, obuparse include file/lib... |
|
|
|
|
|
|
#1654 | Link |
|
Formerly davidh*****
![]() Join Date: Jan 2004
Posts: 2,888
|
Okay... for obuparse, since it doesn't have a configure script, I edited the Makefile and just changed the first line to
Code:
PREFIX ?= ~/deps/x64-release For l-smash, I did Code:
./configure --prefix="~/deps/x64-release" --extra-cflags=-I/home/david/deps/x64-Release/include --extra-ldflags=-L/home/david/deps/x64-Release/lib --includedir=~/deps/x64-Release/include --libdir=~/deps/x64-Release/lib make/make install put .h and .a files in the x64-Release/include and x64-Release/lib directories. Next: Code:
cmake -B build_folder -DCMAKE_PREFIX_PATH="C:\msys64\home\David\deps\x64-Release" -DENABLE_VPX=OFF Trying to build the created .sln resulted in four unresolved externals: Code:
__mingw_fprintf __mingw_sprintf ___chkstk_ms __mingw_vfprintf Last edited by wonkey_monkey; 2nd February 2025 at 00:03. |
|
|
|
|
|
#1655 | Link |
|
Registered User
Join Date: Jul 2018
Posts: 609
|
Actually I build obuparse with created VS solution files and manually copy "obuparse.h" and the lib in "deps\x64-Release\relevant_dirs". Also I modified lsmash VS solution files to work correctly with vimeo version and again manually copy "lsmash.h" and "liblsmash.lib" to "deps\x64-Release\relevant_dirs". If you prefer VS solution files, I can share them so you can build them with VS.
|
|
|
|
|
|
#1656 | Link | |
|
Registered User
Join Date: Jul 2018
Posts: 609
|
Quote:
Edit: Oh, for obuparse and liblsmash I guess you didn't explicitly used cl instead GCC. You can do in the shell: "export CC=cl". Last edited by StvG; 2nd February 2025 at 00:19. |
|
|
|
|
|
|
#1657 | Link |
|
...?
Join Date: Nov 2005
Location: Florida
Posts: 1,515
|
It's not necessary to specify --includedir= or --libdir= if you've set --prefix. Those are automatically populated by whatever the prefix is, and you only really want to change them if you deliberately want them somewhere else.
And the extra-{cflags,ldflags} arguments can understand $HOME, e.g., --extra-cflags=-I$HOME/deps/x64-Release/include. Not finding Git or pkgconf sounds like you haven't added MSys2's /usr/bin to the %PATH% (or alternatively, launched MSys2 from within the VS Command Prompt so the MSys2 environment can see MSVC). |
|
|
|
|
|
#1659 | Link | |
|
Registered User
Join Date: Jul 2018
Posts: 609
|
Quote:
Here are the VS solution files for obuparse and l-smash. Extract them in the root of the relevant folders and build the libs from there. Edit: Copy "obuparse.h" in the root of l-smash folder. Last edited by StvG; 2nd February 2025 at 00:56. |
|
|
|
|
|
|
#1660 | Link | |
|
Registered User
Join Date: Jul 2018
Posts: 609
|
Quote:
Last edited by StvG; 2nd February 2025 at 00:47. |
|
|
|
|
![]() |
|
|