Closed gothicVI closed 1 year ago
@gothicVI e6b1ed8 is a 2.5 years old commit. You should use the latest release.
Hi @jcdr428 you're right and this might very well be an issue with the PKGBUILD file in the AUR.
However, I've cloned the repository and am getting similar errors:
/tmp/tsMuxer (master =)]
$ ./scripts/rebuild_linux.sh
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- The CXX compiler identification is GNU 13.2.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Deprecation Warning at libmediation/CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- The C compiler identification is GNU 13.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
CMake Deprecation Warning at tsMuxer/CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.1")
-- Found ZLIB: /usr/lib/libz.so (found version "1.2.13")
-- Found Freetype: /usr/lib/libfreetype.so (found version "2.13.1")
-- Configuring done (0.4s)
-- Generating done (0.0s)
-- Build files have been written to: /tmp/tsMuxer/build
[6/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/AbstractDemuxer.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/AbstractDemuxer.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-f826b61\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/AbstractDemuxer.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/AbstractDemuxer.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/AbstractDemuxer.cpp.o -c /tmp/tsMuxer/tsMuxer/AbstractDemuxer.cpp
In file included from /tmp/tsMuxer/tsMuxer/AbstractDemuxer.cpp:2:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h: In member function ‘void MemoryBlock::append(const uint8_t*, int64_t)’:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:50:13: error: ‘memcpy’ was not declared in this scope
50 | memcpy(&m_data[m_size - num], data, num);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:12:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
11 | #include "avPacket.h"
+++ |+#include <cstring>
12 | #include "vod_common.h"
[10/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/bufferedReader.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/bufferedReader.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-f826b61\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/bufferedReader.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/bufferedReader.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/bufferedReader.cpp.o -c /tmp/tsMuxer/tsMuxer/bufferedReader.cpp
In file included from /tmp/tsMuxer/tsMuxer/BufferedReader.h:10,
from /tmp/tsMuxer/tsMuxer/bufferedReader.cpp:2:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h: In member function ‘void MemoryBlock::append(const uint8_t*, int64_t)’:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:50:13: error: ‘memcpy’ was not declared in this scope
50 | memcpy(&m_data[m_size - num], data, num);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:12:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
11 | #include "avPacket.h"
+++ |+#include <cstring>
12 | #include "vod_common.h"
[11/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/bufferedReaderManager.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/bufferedReaderManager.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-f826b61\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/bufferedReaderManager.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/bufferedReaderManager.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/bufferedReaderManager.cpp.o -c /tmp/tsMuxer/tsMuxer/bufferedReaderManager.cpp
In file included from /tmp/tsMuxer/tsMuxer/BufferedReader.h:10,
from /tmp/tsMuxer/tsMuxer/bufferedFileReader.h:8,
from /tmp/tsMuxer/tsMuxer/bufferedReaderManager.h:6,
from /tmp/tsMuxer/tsMuxer/bufferedReaderManager.cpp:1:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h: In member function ‘void MemoryBlock::append(const uint8_t*, int64_t)’:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:50:13: error: ‘memcpy’ was not declared in this scope
50 | memcpy(&m_data[m_size - num], data, num);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:12:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
11 | #include "avPacket.h"
+++ |+#include <cstring>
12 | #include "vod_common.h"
[13/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/bufferedFileReader.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/bufferedFileReader.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-f826b61\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/bufferedFileReader.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/bufferedFileReader.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/bufferedFileReader.cpp.o -c /tmp/tsMuxer/tsMuxer/bufferedFileReader.cpp
In file included from /tmp/tsMuxer/tsMuxer/BufferedReader.h:10,
from /tmp/tsMuxer/tsMuxer/bufferedFileReader.h:8,
from /tmp/tsMuxer/tsMuxer/bufferedFileReader.cpp:1:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h: In member function ‘void MemoryBlock::append(const uint8_t*, int64_t)’:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:50:13: error: ‘memcpy’ was not declared in this scope
50 | memcpy(&m_data[m_size - num], data, num);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:12:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
11 | #include "avPacket.h"
+++ |+#include <cstring>
12 | #include "vod_common.h"
[15/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/ac3StreamReader.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/ac3StreamReader.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-f826b61\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/ac3StreamReader.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/ac3StreamReader.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/ac3StreamReader.cpp.o -c /tmp/tsMuxer/tsMuxer/ac3StreamReader.cpp
In file included from /tmp/tsMuxer/tsMuxer/ac3StreamReader.h:4,
from /tmp/tsMuxer/tsMuxer/ac3StreamReader.cpp:1:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h: In member function ‘void MemoryBlock::append(const uint8_t*, int64_t)’:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:50:13: error: ‘memcpy’ was not declared in this scope
50 | memcpy(&m_data[m_size - num], data, num);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:12:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
11 | #include "avPacket.h"
+++ |+#include <cstring>
12 | #include "vod_common.h"
[16/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/abstractMuxer.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/abstractMuxer.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-f826b61\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/abstractMuxer.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/abstractMuxer.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/abstractMuxer.cpp.o -c /tmp/tsMuxer/tsMuxer/abstractMuxer.cpp
In file included from /tmp/tsMuxer/tsMuxer/metaDemuxer.h:10,
from /tmp/tsMuxer/tsMuxer/abstractMuxer.h:9,
from /tmp/tsMuxer/tsMuxer/abstractMuxer.cpp:2:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h: In member function ‘void MemoryBlock::append(const uint8_t*, int64_t)’:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:50:13: error: ‘memcpy’ was not declared in this scope
50 | memcpy(&m_data[m_size - num], data, num);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:12:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
11 | #include "avPacket.h"
+++ |+#include <cstring>
12 | #include "vod_common.h"
[17/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/combinedH264Demuxer.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/combinedH264Demuxer.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-f826b61\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/combinedH264Demuxer.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/combinedH264Demuxer.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/combinedH264Demuxer.cpp.o -c /tmp/tsMuxer/tsMuxer/combinedH264Demuxer.cpp
In file included from /tmp/tsMuxer/tsMuxer/combinedH264Demuxer.h:7,
from /tmp/tsMuxer/tsMuxer/combinedH264Demuxer.cpp:2:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h: In member function ‘void MemoryBlock::append(const uint8_t*, int64_t)’:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:50:13: error: ‘memcpy’ was not declared in this scope
50 | memcpy(&m_data[m_size - num], data, num);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:12:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
11 | #include "avPacket.h"
+++ |+#include <cstring>
12 | #include "vod_common.h"
[18/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/blurayHelper.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/blurayHelper.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-f826b61\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/blurayHelper.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/blurayHelper.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/blurayHelper.cpp.o -c /tmp/tsMuxer/tsMuxer/blurayHelper.cpp
In file included from /tmp/tsMuxer/tsMuxer/metaDemuxer.h:10,
from /tmp/tsMuxer/tsMuxer/abstractMuxer.h:9,
from /tmp/tsMuxer/tsMuxer/muxerManager.h:4,
from /tmp/tsMuxer/tsMuxer/blurayHelper.cpp:7:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h: In member function ‘void MemoryBlock::append(const uint8_t*, int64_t)’:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:50:13: error: ‘memcpy’ was not declared in this scope
50 | memcpy(&m_data[m_size - num], data, num);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:12:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
11 | #include "avPacket.h"
+++ |+#include <cstring>
12 | #include "vod_common.h"
[21/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/hevc.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/hevc.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-f826b61\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/hevc.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/hevc.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/hevc.cpp.o -c /tmp/tsMuxer/tsMuxer/hevc.cpp
In file included from /tmp/tsMuxer/tsMuxer/metaDemuxer.h:10,
from /tmp/tsMuxer/tsMuxer/abstractMuxer.h:9,
from /tmp/tsMuxer/tsMuxer/tsMuxer.h:9,
from /tmp/tsMuxer/tsMuxer/hevc.cpp:8:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h: In member function ‘void MemoryBlock::append(const uint8_t*, int64_t)’:
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:50:13: error: ‘memcpy’ was not declared in this scope
50 | memcpy(&m_data[m_size - num], data, num);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/abstractDemuxer.h:12:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
11 | #include "avPacket.h"
+++ |+#include <cstring>
12 | #include "vod_common.h"
[23/62] Building CXX object libmediation/CMakeFiles/mediation.dir/types/types.cpp.o
ninja: build stopped: subcommand failed.
cp: cannot stat 'tsMuxer/tsmuxer': No such file or directory
Ok, so the gnu c++ compiler seems to need the
@gothicVI please try tomorrow's release.
Including 6df70213680482bb5dac06ffbfa7adaa741f1e5d, it's getting further but still not fully there:
$ ./scripts/rebuild_linux.sh
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- The CXX compiler identification is GNU 13.2.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Deprecation Warning at libmediation/CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- The C compiler identification is GNU 13.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
CMake Deprecation Warning at tsMuxer/CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.1")
-- Found ZLIB: /usr/lib/libz.so (found version "1.2.13")
-- Found Freetype: /usr/lib/libfreetype.so (found version "2.13.1")
-- Configuring done (0.5s)
-- Generating done (0.0s)
-- Build files have been written to: /tmp/tsMuxer/build
[35/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/mpegStreamReader.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/mpegStreamReader.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-6df7021\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/mpegStreamReader.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/mpegStreamReader.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/mpegStreamReader.cpp.o -c /tmp/tsMuxer/tsMuxer/mpegStreamReader.cpp
/tmp/tsMuxer/tsMuxer/mpegStreamReader.cpp: In member function ‘virtual void MPEGStreamReader::setBuffer(uint8_t*, uint32_t, bool)’:
/tmp/tsMuxer/tsMuxer/mpegStreamReader.cpp:27:5: error: ‘memcpy’ was not declared in this scope
27 | memcpy(m_tmpBuffer + m_tmpBufferLen, data + MAX_AV_PACKET_SIZE, dataLen);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/mpegStreamReader.cpp:11:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
10 | #include "vodCoreException.h"
+++ |+#include <cstring>
11 | #include "vod_common.h"
/tmp/tsMuxer/tsMuxer/mpegStreamReader.cpp: In member function ‘void MPEGStreamReader::storeBufferRest()’:
/tmp/tsMuxer/tsMuxer/mpegStreamReader.cpp:86:5: error: ‘memmove’ was not declared in this scope
86 | memmove(m_tmpBuffer, m_curPos, m_bufEnd - m_curPos);
| ^~~~~~~
/tmp/tsMuxer/tsMuxer/mpegStreamReader.cpp:86:5: note: ‘memmove’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
[38/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/nalUnits.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/nalUnits.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-6df7021\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/nalUnits.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/nalUnits.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/nalUnits.cpp.o -c /tmp/tsMuxer/tsMuxer/nalUnits.cpp
/tmp/tsMuxer/tsMuxer/nalUnits.cpp: In static member function ‘static int NALUnit::encodeNAL(const uint8_t*, const uint8_t*, uint8_t*, size_t)’:
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:112:13: error: ‘memcpy’ was not declared in this scope
112 | memcpy(dstBuffer, srcStart, srcBuffer - srcStart);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:9:1: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
8 | #include "vod_common.h"
+++ |+#include <cstring>
9 |
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:132:5: error: ‘memcpy’ was not declared in this scope
132 | memcpy(dstBuffer, srcStart, srcEnd - srcStart);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:132:5: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
/tmp/tsMuxer/tsMuxer/nalUnits.cpp: In static member function ‘static int NALUnit::decodeNAL(const uint8_t*, const uint8_t*, uint8_t*, size_t)’:
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:149:13: error: ‘memcpy’ was not declared in this scope
149 | memcpy(dstBuffer, srcStart, srcBuffer - srcStart - 1);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:149:13: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:158:5: error: ‘memcpy’ was not declared in this scope
158 | memcpy(dstBuffer, srcStart, srcEnd - srcStart);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:158:5: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
/tmp/tsMuxer/tsMuxer/nalUnits.cpp: In static member function ‘static int NALUnit::decodeNAL2(const uint8_t*, const uint8_t*, uint8_t*, size_t, bool*)’:
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:177:13: error: ‘memcpy’ was not declared in this scope
177 | memcpy(dstBuffer, srcStart, srcBuffer - srcStart - 1);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:177:13: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:188:9: error: ‘memcpy’ was not declared in this scope
188 | memcpy(dstBuffer, srcStart, srcEnd - srcStart);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:188:9: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
/tmp/tsMuxer/tsMuxer/nalUnits.cpp: In member function ‘void SPSUnit::updateTimingInfo()’:
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:749:5: error: ‘memcpy’ was not declared in this scope
749 | memcpy(newNalBuffer, m_nalBuffer, m_nalBufferLen);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:749:5: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
/tmp/tsMuxer/tsMuxer/nalUnits.cpp: In member function ‘void SPSUnit::insertHrdData(int, int, int, bool, const HRDParams&)’:
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:808:5: error: ‘memcpy’ was not declared in this scope
808 | memcpy(newNalBuffer, m_nalBuffer, m_nalBufferLen);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:808:5: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
/tmp/tsMuxer/tsMuxer/nalUnits.cpp: In member function ‘unsigned int SEIUnit::removePicTimingSEI(SPSUnit&)’:
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:1460:13: error: ‘memcpy’ was not declared in this scope
1460 | memcpy(tmpBuffer + tmpBufferLen, curBuff, payloadSize);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:1460:13: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:1471:5: error: ‘memcpy’ was not declared in this scope
1471 | memcpy(m_nalBuffer, tmpBuffer, tmpBufferLen);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:1471:5: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
/tmp/tsMuxer/tsMuxer/nalUnits.cpp: In member function ‘int SEIUnit::mvc_scalable_nesting(const SPSUnit&, uint8_t*, int, int)’:
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:1758:21: error: ‘memcmp’ was not declared in this scope
1758 | if (memcmp(bdData, BDROM_METADATA_GUID, 128 / 8) == 0)
| ^~~~~~
/tmp/tsMuxer/tsMuxer/nalUnits.cpp:1758:21: note: ‘memcmp’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
[48/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/textSubtitlesRender.cpp.o
FAILED: tsMuxer/CMakeFiles/tsmuxer.dir/textSubtitlesRender.cpp.o
/usr/bin/c++ -DTSMUXER_VERSION=\"git-6df7021\" -I/tmp/tsMuxer/tsMuxer/../libmediation -I/usr/include/freetype2 -std=c++17 -MD -MT tsMuxer/CMakeFiles/tsmuxer.dir/textSubtitlesRender.cpp.o -MF tsMuxer/CMakeFiles/tsmuxer.dir/textSubtitlesRender.cpp.o.d -o tsMuxer/CMakeFiles/tsmuxer.dir/textSubtitlesRender.cpp.o -c /tmp/tsMuxer/tsMuxer/textSubtitlesRender.cpp
/tmp/tsMuxer/tsMuxer/textSubtitlesRender.cpp: In member function ‘bool text_subtitles::TextSubtitlesRender::rasterText(const std::string&)’:
/tmp/tsMuxer/tsMuxer/textSubtitlesRender.cpp:365:5: error: ‘memset’ was not declared in this scope
365 | memset(m_pData, 0, static_cast<size_t>(m_width) * m_height * 4);
| ^~~~~~
/tmp/tsMuxer/tsMuxer/textSubtitlesRender.cpp:10:1: note: ‘memset’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
9 | #include "vod_common.h"
+++ |+#include <cstring>
10 |
[52/62] Building CXX object tsMuxer/CMakeFiles/tsmuxer.dir/tsPacket.cpp.o
ninja: build stopped: subcommand failed.
cp: cannot stat 'tsMuxer/tsmuxer': No such file or directory
How come you're not seeing this issue on your end or in testing?
EDIT: Without fully understanding the dependency chain adding #include <cstring>
to the following files at least solves the compilation issue:
tsMuxer/mpegStreamReader.cpp
tsMuxer/nalUnits.cpp
tsMuxer/textSubtitlesRender.cpp
tsMuxer/vc1Parser.h
tsMuxer/vc1StreamReader.cpp
Ok, pushed.
No problems on my side because I use MSVC or CLang compilers on Visual Studio. The builds on Github use g++ compiler via Docker, no problems neither. The problem seems to be only with the GNU c++ compiler, you're the first to report the problem.
Thanks! You might want to consider updating the docker image with a newer version of the build tools at some point.
I'll leave that to @justdan96 , I am not too familiar with Docker.
Using the AUR package https://aur.archlinux.org/packages/tsmuxer-git, the compilation fails with the following error: