IRONSOFTWAREHOME

IronPdf.LinuxARM: Nie można przydzielić pamięci w statycznym bloku TLS

Curtis Chau
Curtis Chau
Updated: 21 sierpnia 2025

Podczas korzystania z wersji LinuxARM IronPDF, pojawia się komunikat o wyjątku przy próbie dynamicznego załadowania libcef.so na Linux ARM. I pojawia się następujący komunikat o wyjątku.

IronSoftware.Exceptions.IronSoftwareDeploymentException: Error while deploying IronPdf Chrome renderer: '/irontest/testIronPdfOnLinuxArm/bin/Debug/net8.0/runtimes/linux-arm64/native/libcef.so: cannot allocate memory in static TLS block'. To learn more about making an engineering support request please visit: . To learn how to solve this issue please read https://ironpdf.com/troubleshooting/error-while-deploying-chrome-dependencies/ [Issue Code IRONPDF-CHROME-DEPLOYMENT-ERROR-LINUX]
Text

Problem

Podczas dynamicznego ładowania libcef.so na Linux ARM, można napotkać błąd z komunikatem: "nie można przydzielić pamięci w statycznym bloku TLS." Jest to znany problem związany z Chromium Embedded Framework (CEF). Wynika to z faktu, że nowsze wersje CEF wymagają więcej miejsca na przechowywanie lokalne w wątku (TLS) niż to, co dynamiczny linker Linux przydziela domyślnie. Ten problem jest dobrze udokumentowany i dotyczy zarówno procesorów Linux ARM, jak i systemów Linux ARM x64, które doświadczały braku wystarczającej pamięci Thread Local Storage (TLS) dla nowszej wersji CEF. Więcej informacji oraz dyskusję na temat tego problemu można znaleźć tutaj.

Rozwiązanie

Rozwiązaniem tego wyjątku jest ręczne ustawienie go przed uruchomieniem aplikacji, jak pokazano poniżej.

export LD_PRELOAD=/path/to/libcef.so
SHELL

Ustawiając ręcznie LD_PRELOAD przed procesem C#, zmuszamy linker do załadowania libcef.so najpierw, przed innymi bibliotekami, zapewniając wystarczającą alokację pamięci TLS. Ta metoda okazała się niezwykle skuteczna, rozwiązując problem i zapobiegając awariom z błędami TLS allocation. Możesz mieć pewność, że to rozwiązanie działa.

Metoda LD_PRELOAD jest najbardziej efektywnym i prostym podejściem rekomendowanym przez innych użytkowników, w tym fora CEF.

Jest to obecnie obejście, dopóki CEF ostatecznie nie rozwiąże problemu dla ARM, tak jak to zrobili dla kompilacji x64, zmniejszając zużycie TLS w libxml2. Jednak nie ma określonego terminu, kiedy CEF zajmie się tym problemem.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

...
Czytaj więcej

Gotowy, aby rozpocząć?

Nuget Downloads 20,667,543Wersja:2026.7właśnie wydany

Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
Biblioteka C# NuGet dla plików PDF
Zainstaluj za pomocą NuGet

Wersja: 2026.7

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. W Eksploratorze Rozwiązań, kliknij prawym przyciskiem Myszy na Odwołania, Zarządzaj pakietami NuGet
  2. Wybierz opcję Przeglądaj i wyszukaj „IronPdf”
  3. Wybierz pakiet i zainstaluj
DLL PDF dla C#
Pobierz DLL

Wersja: 2026.7

Pobierz teraz

lub pobierz instalator Windows tutaj.

  1. Pobierz i rozpakuj IronPDF do lokalizacji takiej jak ~/Libs w katalogu Solution
  2. W Eksploratorze rozwiązań programu Visual Studio kliknij prawym przyciskiem myszy opcję Odwołania. Wybierz opcję Przeglądaj, „IronPdf.dll”

Licencje od 749 USD

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta