Quantcast
Aktuelles
Digital Eliteboard - Das Digitale Technik Forum

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

libdvbcsa (für Icam) installieren (Oscam Native bauen z.B. für Raspberry PI3 als Server)

ghost0815

DEB König
Registriert
17. Juni 2012
Beiträge
5.440
Lösungen
9
Reaktionspunkte
7.781
Punkte
403
Code:
cd /tmp
rm -rf /tmp/libdvbcsa
git clone https://github.com/oe-mirrors/libdvbcsa.git /tmp/libdvbcsa
cd /tmp/libdvbcsa

./bootstrap

# use /cat/proc/cpuinfo to get the info to choose the correct optimization of libdvbcsa for the ./configure step
# --enable-uint32 Use native 32 bits integers for bitslice
# --enable-uint64 Use native 64 bits integers for bitslice
# --enable-mmx Use MMX 64 bits for bitslice
# --enable-sse2 Use SSE2 128 bits for bitslice
# --enable-ssse3 Use SSSE3 128 bits for bitslice
# --enable-avx2 Use AVX2 256 bits for bitslice
# --enable-altivec Use AltiVec 128 bits for bitslice
# --enable-neon Use NEON 128 bits for bitslice

./configure --enable-avx2

make -j$(nproc)
make install # this needs root permissions and will install the library to /usr/local (depending on your distro)

Beispiel
Code:
cat /proc/cpuinfo

$ cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 4 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
./configure --enable-neon

Weitere Beispiele:
./configure --enable-neon => für raspi3/4 und deren Derivate mit armv7/8 ... arm64 (64bit-OS)
./configure --enable-uint64 => für raspi4 und deren Derivate mit armv8 ... armhf (32bit-OS)
./configure --enable-uint32 => für raspi3 und deren Derivate mit armv7 ... armhf (32bit-OS)

Danach kann man Oscam mit Streamrelay bauen.
Für z.B. Raspberry PI als Server

Quelle: WXbet
hxxps://board.streamboard.tv/forum/thread/46548-simplebuild-3-toolchain-update-plugin-s3-tup/?postID=615329#post615329
 
Zuletzt bearbeitet:
@ghost0815
ich gehe davon aus, das das mit der Kathi wunderbar via Radegast-/SR-Server funktioniert ?!
Die Tests waren erfolgreich, ja
@Derek Buegel
aber genau das versuchte ich ja zu erklären, das es mit #1160/@Alex mit dem SR dann nicht funktionieren wird.

Die libdvbcsa vom Feed geht nicht.
Mann sollte schon die vom Git nehmen, siehe Post 1161 ( )
 
Auch das habe ich versucht. Da kommen massig andere Fehler ab/bei "make -j$(nproc)"
Code:
root@raspberry /tmp/libdvbcsa > make -j$(nproc)
make  all-recursive
make[1]: Verzeichnis „/tmp/libdvbcsa“ wird betreten
Making all in src
make[2]: Verzeichnis „/tmp/libdvbcsa/src“ wird betreten
Making all in dvbcsa
make[3]: Verzeichnis „/tmp/libdvbcsa/src/dvbcsa“ wird betreten
make[3]: Für das Ziel „all“ ist nichts zu tun.
make[3]: Verzeichnis „/tmp/libdvbcsa/src/dvbcsa“ wird verlassen
make[3]: Verzeichnis „/tmp/libdvbcsa/src“ wird betreten
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..     -Wall  -D_XOPEN_SOURCE=600 -mavx2 -O3 -funroll-loops -fomit-frame-pointer -fno-tree-vectorize -MT dvbcsa_algo.lo -MD -MP -MF .deps/dvbcsa_algo.Tpo -c -o dvbcsa_algo.lo dvbcsa_algo.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..     -Wall  -D_XOPEN_SOURCE=600 -mavx2 -O3 -funroll-loops -fomit-frame-pointer -fno-tree-vectorize -MT dvbcsa_block.lo -MD -MP -MF .deps/dvbcsa_block.Tpo -c -o dvbcsa_block.lo dvbcsa_block.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..     -Wall  -D_XOPEN_SOURCE=600 -mavx2 -O3 -funroll-loops -fomit-frame-pointer -fno-tree-vectorize -MT dvbcsa_stream.lo -MD -MP -MF .deps/dvbcsa_stream.Tpo -c -o dvbcsa_stream.lo dvbcsa_stream.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..     -Wall  -D_XOPEN_SOURCE=600 -mavx2 -O3 -funroll-loops -fomit-frame-pointer -fno-tree-vectorize -MT dvbcsa_key.lo -MD -MP -MF .deps/dvbcsa_key.Tpo -c -o dvbcsa_key.lo dvbcsa_key.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wall -D_XOPEN_SOURCE=600 -mavx2 -O3 -funroll-loops -fomit-frame-pointer -fno-tree-vectorize -MT dvbcsa_algo.lo -MD -MP -MF .deps/dvbcsa_algo.Tpo -c dvbcsa_algo.c  -fPIC -DPIC -o .libs/dvbcsa_algo.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wall -D_XOPEN_SOURCE=600 -mavx2 -O3 -funroll-loops -fomit-frame-pointer -fno-tree-vectorize -MT dvbcsa_block.lo -MD -MP -MF .deps/dvbcsa_block.Tpo -c dvbcsa_block.c  -fPIC -DPIC -o .libs/dvbcsa_block.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wall -D_XOPEN_SOURCE=600 -mavx2 -O3 -funroll-loops -fomit-frame-pointer -fno-tree-vectorize -MT dvbcsa_key.lo -MD -MP -MF .deps/dvbcsa_key.Tpo -c dvbcsa_key.c  -fPIC -DPIC -o .libs/dvbcsa_key.o
gcc: error: unrecognized command-line option '-mavx2'
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wall -D_XOPEN_SOURCE=600 -mavx2 -O3 -funroll-loops -fomit-frame-pointer -fno-tree-vectorize -MT dvbcsa_stream.lo -MD -MP -MF .deps/dvbcsa_stream.Tpo -c dvbcsa_stream.c  -fPIC -DPIC -o .libs/dvbcsa_stream.o
gcc: error: unrecognized command-line option '-mavx2'
make[3]: *** [Makefile:510: dvbcsa_block.lo] Fehler 1
make[3]: *** Es wird auf noch nicht beendete Prozesse gewartet....
make[3]: *** [Makefile:510: dvbcsa_algo.lo] Fehler 1
gcc: error: unrecognized command-line option '-mavx2'
gcc: error: unrecognized command-line option '-mavx2'
make[3]: *** [Makefile:510: dvbcsa_key.lo] Fehler 1
make[3]: *** [Makefile:510: dvbcsa_stream.lo] Fehler 1
make[3]: Verzeichnis „/tmp/libdvbcsa/src“ wird verlassen
make[2]: *** [Makefile:529: all-recursive] Fehler 1
make[2]: Verzeichnis „/tmp/libdvbcsa/src“ wird verlassen
make[1]: *** [Makefile:398: all-recursive] Fehler 1
make[1]: Verzeichnis „/tmp/libdvbcsa“ wird verlassen
make: *** [Makefile:330: all] Fehler 2
 
Zuletzt bearbeitet von einem Moderator:
Hab ich selbstverständlich vorher gemacht.
Code:
root@raspberry /tmp/libdvbcsa > ./configure --enable-avx2
checking build system type... aarch64-unknown-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of gcc... gcc3
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert aarch64-unknown-linux-gnu file names to aarch64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert aarch64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for file... file
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for egrep... (cached) /usr/bin/grep -E
checking for assert.h... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking size of long... 8
checking whether byte ordering is bigendian... no
checking whether __attribute__((may_alias)) is available for types... yes
checking whether C compiler accepts -O3... yes
checking whether C compiler accepts -funroll-loops... yes
checking whether C compiler accepts -fomit-frame-pointer... yes
checking whether C compiler accepts -fno-tree-vectorize... yes
checking for posix_memalign... no
checking _mm_malloc availability... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating src/dvbcsa/Makefile
config.status: creating test/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
root@raspberry /tmp/libdvbcsa > make -j$(nproc)
 
ich sagte:
./configure --enable-neon
du machst aber:
./configure --enable-avx2

finde den Fehler! :ROFLMAO:
 
Mist, habe C&P von Hier gemacht.
Mit "./configure --enable-neon" sieht es schon besser aus.

Lief jetzt durch.
 
Zuletzt bearbeitet:
./configure --enable-avx2
Das steht so in der Anleitung.

Mann muss aber vorher
cat /proc/cpuinfo

und gucken was die CPU kann

Beispiel

$ cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 4 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
 
Zuletzt bearbeitet:
wenn man es im ganzen liest, wird es offensichtlicher:
# use /cat/proc/cpuinfo to get the info to choose the correct optimization of libdvbcsa for the ./configure step
# --enable-uint32 Use native 32 bits integers for bitslice
# --enable-uint64 Use native 64 bits integers for bitslice
# --enable-mmx Use MMX 64 bits for bitslice
# --enable-sse2 Use SSE2 128 bits for bitslice
# --enable-ssse3 Use SSSE3 128 bits for bitslice
# --enable-avx2 Use AVX2 256 bits for bitslice
# --enable-altivec Use AltiVec 128 bits for bitslice
# --enable-neon Use NEON 128 bits for bitslice

./configure --enable-neon => für raspi3/4 und deren Derivate mit armv7/8 ... arm64 (64bit-OS)
./configure --enable-uint64 => für raspi4 und deren Derivate mit armv8 ... armhf (32bit-OS)
./configure --enable-uint32 => für raspi3 und deren Derivate mit armv7 ... armhf (32bit-OS)
 
Zuletzt bearbeitet von einem Moderator:
Da frage ich doch gleich noch mal nach, was ich hier nehmen?
Code:
cat /proc/cpuinfo
processor    : 0
BogoMIPS    : 38.40
Features    : fp asimd evtstrm crc32 cpuid
CPU implementer    : 0x41
CPU architecture: 8
CPU variant    : 0x0
CPU part    : 0xd03
CPU revision    : 4
crc32 fehlt? Ist aber ein RPI 3 + mit Debian 12 (64) ??????
Code:
# use /cat/proc/cpuinfo to get the info to choose the correct optimization of libdvbcsa for the ./configure step
# --enable-uint32 Use native 32 bits integers for bitslice
# --enable-uint64 Use native 64 bits integers for bitslice
# --enable-mmx Use MMX 64 bits for bitslice
# --enable-sse2 Use SSE2 128 bits for bitslice
# --enable-ssse3 Use SSSE3 128 bits for bitslice
# --enable-avx2 Use AVX2 256 bits for bitslice
# --enable-altivec Use AltiVec 128 bits for bitslice
# --enable-neon Use NEON 128 bits for bitslice
 
Zuletzt bearbeitet von einem Moderator:
Du kannst neon nehmen. Auf der aarch64 Plattform ist simd = neon.
 
Hab neon genommen. Kommt noch ne Fehlermeldung. Poste ich morgen.
Muss erst mal Schluss machen, mir schwellt der Kamm. :LOL: :LOL:
 
Zurück
Oben