Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[new port] ZLMediaKit #33024

Merged
merged 30 commits into from
Aug 9, 2023
Merged

Conversation

JackBoosY
Copy link
Contributor

Fixes #32886

@JackBoosY
Copy link
Contributor Author

JackBoosY commented Aug 8, 2023

arm64-osx:

[49/179] /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -DENABLE_MEM_DEBUG -DENABLE_OPENSSL -DENABLE_VERSION -I/Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/arm64-osx-dbg -I/Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/ceec315c24-e1c6b900cb/3rdpart -I/Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/ceec315c24-e1c6b900cb/src -I/Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/ceec315c24-e1c6b900cb/3rdpart/ZLToolKit/src -isystem /opt/homebrew/include -isystem /Users/jackyu/Documents/vcpkg/installed/arm64-osx/include -fPIC -g -std=gnu++11 -arch arm64 -isysroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk -mmacosx-version-min=13.4 -fPIC -Wall -Wextra -Wno-unused-function -Wno-unused-parameter -Wno-unused-variable -Wno-error=extra -Wno-error=missing-field-initializers -Wno-error=type-limits -MD -MT src/CMakeFiles/zlmediakit.dir/Common/MediaSource.cpp.o -MF src/CMakeFiles/zlmediakit.dir/Common/MediaSource.cpp.o.d -o src/CMakeFiles/zlmediakit.dir/Common/MediaSource.cpp.o -c /Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/ceec315c24-e1c6b900cb/src/Common/MediaSource.cpp
FAILED: src/CMakeFiles/zlmediakit.dir/Common/MediaSource.cpp.o 
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -DENABLE_MEM_DEBUG -DENABLE_OPENSSL -DENABLE_VERSION -I/Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/arm64-osx-dbg -I/Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/ceec315c24-e1c6b900cb/3rdpart -I/Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/ceec315c24-e1c6b900cb/src -I/Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/ceec315c24-e1c6b900cb/3rdpart/ZLToolKit/src -isystem /opt/homebrew/include -isystem /Users/jackyu/Documents/vcpkg/installed/arm64-osx/include -fPIC -g -std=gnu++11 -arch arm64 -isysroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk -mmacosx-version-min=13.4 -fPIC -Wall -Wextra -Wno-unused-function -Wno-unused-parameter -Wno-unused-variable -Wno-error=extra -Wno-error=missing-field-initializers -Wno-error=type-limits -MD -MT src/CMakeFiles/zlmediakit.dir/Common/MediaSource.cpp.o -MF src/CMakeFiles/zlmediakit.dir/Common/MediaSource.cpp.o.d -o src/CMakeFiles/zlmediakit.dir/Common/MediaSource.cpp.o -c /Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/ceec315c24-e1c6b900cb/src/Common/MediaSource.cpp
/Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/ceec315c24-e1c6b900cb/src/Common/MediaSource.cpp:664:31: error: member access into incomplete type 'element_type' (aka 'mediakit::MultiMediaSourceMuxer')
            if (muxer && muxer->getOption().auto_close) {
                              ^
/Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/ceec315c24-e1c6b900cb/src/Common/MediaSource.h:44:7: note: forward declaration of 'mediakit::MultiMediaSourceMuxer'
class MultiMediaSourceMuxer;
      ^
1 error generated.

x64-windows:

[37/181] C:\PROGRA~1\MICROS~1\2022\ENTERP~1\VC\Tools\MSVC\1436~1.325\bin\Hostx64\x86\cl.exe   /TP -DDBUG_OFF -DENABLE_MEM_DEBUG -DENABLE_VERSION -DMP4V2_NO_STDINT_DEFS -DWIN32_LEAN_AND_MEAN -D_CRT_SECURE_NO_WARNINGS -D_WINSOCK_DEPRECATED_NO_WARNINGS -ID:\buildtrees\zlmediakit\x86-windows-dbg -ID:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\3rdpart -ID:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src -ID:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\3rdpart\ZLToolKit\src -external:ID:\installed\x86-windows\include -external:W0 /nologo /DWIN32 /D_WINDOWS /W3 /utf-8 /GR /EHsc /MP  /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1  /wd4566 /wd4819 /EHsc /nologo /showIncludes /Fosrc\CMakeFiles\zlmediakit.dir\Common\MediaSource.cpp.obj /Fdsrc\CMakeFiles\zlmediakit.dir\zlmediakit.pdb /FS -c D:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src\Common\MediaSource.cpp
FAILED: src/CMakeFiles/zlmediakit.dir/Common/MediaSource.cpp.obj 
C:\PROGRA~1\MICROS~1\2022\ENTERP~1\VC\Tools\MSVC\1436~1.325\bin\Hostx64\x86\cl.exe   /TP -DDBUG_OFF -DENABLE_MEM_DEBUG -DENABLE_VERSION -DMP4V2_NO_STDINT_DEFS -DWIN32_LEAN_AND_MEAN -D_CRT_SECURE_NO_WARNINGS -D_WINSOCK_DEPRECATED_NO_WARNINGS -ID:\buildtrees\zlmediakit\x86-windows-dbg -ID:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\3rdpart -ID:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src -ID:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\3rdpart\ZLToolKit\src -external:ID:\installed\x86-windows\include -external:W0 /nologo /DWIN32 /D_WINDOWS /W3 /utf-8 /GR /EHsc /MP  /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1  /wd4566 /wd4819 /EHsc /nologo /showIncludes /Fosrc\CMakeFiles\zlmediakit.dir\Common\MediaSource.cpp.obj /Fdsrc\CMakeFiles\zlmediakit.dir\zlmediakit.pdb /FS -c D:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src\Common\MediaSource.cpp
D:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src\Extension\Frame.h(372): warning C4244: '=': conversion from 'uint64_t' to 'size_t', possible loss of data
D:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src\Extension\Frame.h(373): warning C4244: '=': conversion from 'uint64_t' to 'size_t', possible loss of data
D:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src\Common\MediaSource.cpp(664): error C2027: use of undefined type 'mediakit::MultiMediaSourceMuxer'
D:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src\Common\MediaSource.h(44): note: see declaration of 'mediakit::MultiMediaSourceMuxer'
D:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src\Common\MediaSource.cpp(664): error C2039: 'getOption': is not a member of 'std::shared_ptr<mediakit::MultiMediaSourceMuxer>'
D:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src\Common\MediaSource.h(93): note: see declaration of 'std::shared_ptr<mediakit::MultiMediaSourceMuxer>'
D:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src\Common\MediaSource.cpp(664): error C2039: '__this': is not a member of 'std::shared_ptr<mediakit::MultiMediaSourceMuxer>'
D:\buildtrees\zlmediakit\src\ceec315c24-e1c6b900cb.clean\src\Common\MediaSource.h(93): note: see declaration of 'std::shared_ptr<mediakit::MultiMediaSourceMuxer>'

@wasphin Any ideas on this?

Configure log:
config-x86-windows-out.log

Additional info: maybe I used incorrect ZLToolKit version. The origin version can't be found by clicking the link in master branch:
https://github.com/ZLMediaKit/ZLMediaKit/tree/master/3rdpart

@JackBoosY JackBoosY marked this pull request as draft August 8, 2023 07:39
@JackBoosY
Copy link
Contributor Author

cc @xia-chu

@MonicaLiu0311 MonicaLiu0311 added the category:new-port The issue is requesting a new library to be added; consider making a PR! label Aug 8, 2023
@xia-chu
Copy link
Contributor

xia-chu commented Aug 8, 2023

@JackBoosY Thank for your work, please update zlmediakit, i had fixed this bug.

@JackBoosY
Copy link
Contributor Author

@JackBoosY Thank for your work, please update zlmediakit, i had fixed this bug.

On arm64-osx:

FAILED: /Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/feae096d13-109733d357/release/darwin/Debug/MediaServer 
: && /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -fPIC -g -arch arm64 -isysroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk -mmacosx-version-min=13.4 -Wl,-search_paths_first -Wl,-headerpad_max_install_names  server/CMakeFiles/MediaServer.dir/FFmpegSource.cpp.o server/CMakeFiles/MediaServer.dir/Process.cpp.o server/CMakeFiles/MediaServer.dir/System.cpp.o server/CMakeFiles/MediaServer.dir/WebApi.cpp.o server/CMakeFiles/MediaServer.dir/WebHook.cpp.o server/CMakeFiles/MediaServer.dir/main.cpp.o -o /Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/feae096d13-109733d357/release/darwin/Debug/MediaServer  -Wl,-wrap,free  -Wl,-wrap,malloc  -Wl,-wrap,realloc  -Wl,-wrap,calloc  /Users/jackyu/Documents/vcpkg/installed/arm64-osx/debug/lib/libssl.a  /Users/jackyu/Documents/vcpkg/installed/arm64-osx/debug/lib/libcrypto.a  -lpthread  /Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/feae096d13-109733d357/release/darwin/Debug/libzltoolkit.a  /Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/feae096d13-109733d357/release/darwin/Debug/libzlmediakit.a  /Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/feae096d13-109733d357/release/darwin/Debug/libsrt.a  /Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/feae096d13-109733d357/release/darwin/Debug/libzlmediakit.a  -Wl,-wrap,free  -Wl,-wrap,malloc  -Wl,-wrap,realloc  -Wl,-wrap,calloc  /Users/jackyu/Documents/vcpkg/installed/arm64-osx/debug/lib/libssl.a  /Users/jackyu/Documents/vcpkg/installed/arm64-osx/debug/lib/libcrypto.a  -lpthread  /Users/jackyu/Documents/vcpkg/installed/arm64-osx/debug/lib/libjsoncpp.a  /Users/jackyu/Documents/vcpkg/buildtrees/zlmediakit/src/feae096d13-109733d357/release/darwin/Debug/libzltoolkit.a && :
ld: unknown option: -wrap
clang: error: linker command failed with exit code 1 (use -v to see invocation)

BTW, there is a question: according to the doc, we don't need to install ffmpeg before compiling, but here is a cmake error:

CMake Error at /Users/jackyu/Documents/vcpkg/scripts/buildsystems/vcpkg.cmake:635 (_add_library):
  No SOURCES given to target: mpeg

@xia-chu
Copy link
Contributor

xia-chu commented Aug 8, 2023

CMake Error at /Users/jackyu/Documents/vcpkg/scripts/buildsystems/vcpkg.cmake:635 (_add_library):
No SOURCES given to target: mpeg

Can you please install submodule in 3rdpart/media-server, the repo's url is https://github.com/ireader/media-server.

It is very important for zlmediakit, as many functions in zlmediakit rely on it.

ports/zlmediakit/vcpkg.json Outdated Show resolved Hide resolved
ports/zlmediakit/vcpkg.json Outdated Show resolved Hide resolved
ports/zlmediakit/vcpkg.json Outdated Show resolved Hide resolved
ports/zlmediakit/vcpkg.json Outdated Show resolved Hide resolved
ports/zlmediakit/vcpkg.json Outdated Show resolved Hide resolved
@JackBoosY
Copy link
Contributor Author

@xia-chu Any other suggestions?

@xia-chu
Copy link
Contributor

xia-chu commented Aug 9, 2023

I think it's all right now, thanks!

@JackBoosY
Copy link
Contributor Author

@MonicaLiu0311 Can test all features now. I already tested all features on x64-windows successfully.

@MonicaLiu0311
Copy link
Contributor

All features are tested successfully in the following triplet:

x86-windows
x64-windows
x64-windows-static

MonicaLiu0311
MonicaLiu0311 previously approved these changes Aug 9, 2023
@MonicaLiu0311 MonicaLiu0311 added the info:reviewed Pull Request changes follow basic guidelines label Aug 9, 2023
@JackBoosY
Copy link
Contributor Author

JackBoosY commented Aug 9, 2023

Minor changes: just update version-date to match the REF. Don't need to retest again.

@JavierMatosD JavierMatosD merged commit c9fa965 into microsoft:master Aug 9, 2023
@xia-chu
Copy link
Contributor

xia-chu commented Aug 10, 2023

感谢诸位大佬!
Thank you all!

@JackBoosY JackBoosY deleted the jack/new_port_ZLMediaKit branch August 10, 2023 05:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:new-port The issue is requesting a new library to be added; consider making a PR! info:reviewed Pull Request changes follow basic guidelines
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[New Port Request] zlmkediakit
6 participants