Um die Lebensdauer der Festplatte zum Speichern von Audio- und Videodateien zu verlängern, wird empfohlen, beim Formatieren der Festplatte eine größere Clustergröße einzustellen. Da die gespeicherten Audio- und Videodateien relativ groß sind, wird die Clustergröße so groß wie möglich eingestellt, wodurch die Leistung beim Lesen der Daten von der Festplatte verbessert werden kann, ohne zu viel Speicherplatz zu verschwenden. Wir haben jedoch festgestellt, dass mkfs.vfat unseres Geräts den Parameter -s zum Festlegen der Clustergröße nicht unterstützt. Daher plane ich, mkfs.vfat erneut zu portieren. Idee 1 Busybox erneut melden 1. Laden Sie den neuesten Busybox-Quellcode von der offiziellen Website herunter 2. Makefile ändern ARCH =Arm CROSS_COMPILE = /opt/hisi-linux-nptl/arm-hisiv100-linux/target/bin/arm-hisiv100nptl-linux- 2. Menükonfiguration erstellen Als statische Bibliothek festlegen 3. machen Ein Fehler ist aufgetreten make: *** [busybox_unstripped] Fehler 1 root@chenwr-pc:/home/soft/busybox-1.31.0# make LINK busybox_unstripped Ihr Linker unterstützt --sort-section,alignment nicht Ihr Linker unterstützt --sort-common nicht Statisches Verknüpfen mit glibc, --gc-sections kann nicht verwendet werden Ausprobieren von Bibliotheken: crypt m resolv Fehlgeschlagen: -Wl,--start-group -lcrypt -lm -lresolv -Wl,--end-group Ausgabe von: /opt/hisi-linux-nptl/arm-hisiv100-linux/target/bin/arm-hisiv100nptl-linux-gcc -Wall -Wshadow -Wwrite-strings -Wundef -Wstrict-prototypes -Wunused -Wunused-parameter -Wunused-function -Wunused-value -Wmissing-prototypes -Wmissing-declarations -Wno-format-security -Wdeclaration-after-statement -Wold-style-definition -fno-builtin-strlen -finline-limit=0 -fomit-frame-pointer -ffunction-sections -fdata-sections -fno-guess-branch-probability -funsigned-char -static-libgcc -falign-functions=1 -falign-jumps=1 -falign-labels=1 -falign-loops=1 -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-builtin-printf -Os -static -march=armv7l -o busybox_unstripped -Wl,--start-group applets/built-in.o archival/lib.a archival/libarchive/lib.a console-tools/lib.a coreutils/lib.a coreutils/libcoreutils/lib.a debianutils/lib.a klibc-utils/lib.a e2fsprogs/lib.a editors/lib.a findutils/lib.a init/lib.a libbb/lib.a libpwdgrp/lib.a loginutils/lib.a mailutils/lib.a miscutils/lib.a modutils/lib.a networking/lib.a networking/libiproute/lib.a networking/udhcp/lib.a printutils/lib.a procps/lib.a runit/lib.a selinux/lib.a shell/lib.a sysklogd/lib.a util-linux/lib.a util-linux/volume_id/lib.a archival/built-in.o archival/libarchive/built-in.o console-tools/built-in.o coreutils/built-in.o coreutils/libcoreutils/built-in.o debianutils/built-in.o klibc-utils/built-in.o e2fsprogs/built-in.o editors/built-in.o findutils/built-in.o init/built-in.o libbb/built-in.o libpwdgrp/built-in.o loginutils/built-in.o mailutils/built-in.o miscutils/built-in.o modutils/built-in.o networking/built-in.o networking/libiproute/built-in.o networking/udhcp/built-in.o printutils/built-in.o procps/built-in.o runit/built-in.o selinux/built-in.o shell/built-in.o sysklogd/built-in.o util-linux/built-in.o util-linux/volume_id/built-in.o -Wl,--end-group -Wl,--start-group -lcrypt -lm -lresolv -Wl,--end-group ========== networking/lib.a(ipcalc.o): In der Funktion „ipcalc_main“: ipcalc.c:(.text.ipcalc_main+0x24c): Warnung: gethostbyaddr ist veraltet, verwenden Sie stattdessen getaddrinfo(). libbb/lib.a(inet_common.o): In der Funktion „INET_resolve“: inet_common.c:(.text.INET_resolve+0x60): Warnung: gethostbyname ist veraltet, verwenden Sie stattdessen getnameinfo(). coreutils/lib.a(mktemp.o): In der Funktion „mktemp_main“: mktemp.c:(.text.mktemp_main+0x8c): Warnung: Die Verwendung von „mktemp“ ist gefährlich, verwenden Sie besser „mkstemp“. networking/lib.a(nslookup.o): In der Funktion „add_query“: nslookup.c:(.text.add_query+0x70): undefinierter Verweis auf „res_mkquery“ networking/lib.a(nslookup.o): In der Funktion „send_queries“: nslookup.c:(.text.send_queries+0x2d0): undefinierter Verweis auf „__ns_initparse“ nslookup.c:(.text.send_queries+0x308): undefinierter Verweis auf „__ns_parserr“ nslookup.c:(.text.send_queries+0x480): undefinierter Verweis auf „__ns_get16“ nslookup.c:(.text.send_queries+0x5cc): undefinierter Verweis auf „__ns_get32“ nslookup.c:(.text.send_queries+0x5e4): undefinierter Verweis auf „__ns_get32“ nslookup.c:(.text.send_queries+0x5fc): undefinierter Verweis auf „__ns_get32“ nslookup.c:(.text.send_queries+0x614): undefinierter Verweis auf „__ns_get32“ nslookup.c:(.text.send_queries+0x628): undefinierter Verweis auf „__ns_get32“ util-linux/lib.a(fallocate.o): In der Funktion „fallocate_main“: fallocate.c:(.text.fallocate_main+0x80): undefinierter Verweis auf „posix_fallocate“ util-linux/lib.a(unshare.o): In der Funktion „unshare_main“: unshare.c:(.text.unshare_main+0x1ec): undefinierter Verweis auf „unshare“ collect2: ld hat 1 Exit-Status zurückgegeben Hinweis: Wenn der Build zusätzliche Bibliotheken benötigt, legen Sie diese in CONFIG_EXTRA_LDLIBS ab. Beispiel: CONFIG_EXTRA_LDLIBS="pthread dl tirpc audit pam" make: *** [busybox_unstripped] Fehler 1 Erstellen Sie die Menükonfiguration neu, geben Sie die Einstellungen ein, schließen Sie das Modul, das einen Fehler meldet, und deaktivieren Sie es. Betrachtet man die Aussagen im Internet, so finden sich dort noch viele Fehler. Und ich habe eine Menge Netzwerkkram und Systemkonfigurationen heruntergefahren, aus Angst, dass dies andere Befehle beeinträchtigen könnte. Weil ich festgestellt habe, dass die ursprünglich portierte Busybox, wie beispielsweise der Befehl ls, keine separate Bin-Datei ist. Stattdessen ist es mit busybox verknüpft Und ich habe festgestellt, dass der Speicherplatz des Geräts begrenzt ist. Die ursprüngliche Busybox hat nur mehr als 800 KB, und selbst wenn die neue Transplantation erfolgreich ist, werden mehr als 2 MB benötigt. Also änderte ich meine Meinung und transplantierte mkfs.vfat allein aus dem Quellcode Damit ist die Befehlstransplantation abgeschlossen. Zusammenfassen Oben habe ich Ihnen das Portieren des Befehls mkfs.vfat in Busybox unter Linux vorgestellt. Ich hoffe, es wird Ihnen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! Das könnte Sie auch interessieren:
|
>>: Zusammenfassung der wichtigsten Erkenntnisse des Vue-Entwicklungshandbuchs
Vorwort Beim Einsatz von Docker in einer Produkti...
Kurz gesagt: Wenn Sie einen Cloud-Server eines be...
Hintergrund: Vor langer Zeit (2017.6.5, der Artik...
1. Domänenübergreifender Zugriff auf statische Ap...
Beim Schreiben von Projekten stoßen wir häufig au...
Inhaltsverzeichnis 1 Einführung in Benutzervariab...
Vorwort Die Methode zum Konfigurieren von IP-Adre...
Lösen Sie das Problem der verstümmelten chinesisc...
Es gibt viele Tags in XHTML, aber nur wenige werd...
1. Inline-Stil, platziert in <body></body...
1. Installationsanweisungen Im Vergleich zur loka...
Verwenden Sie navicat zum Testen und Lernen: Verw...
Inhaltsverzeichnis Vorwort Lösung Konkrete Umsetz...
Da ich selbst eine Webseite schreiben möchte, lern...
Docker-Funktionen 1) Schneller Einstieg Benutzer ...