{"id":20531226,"url":"https://github.com/robstradling/libunwind","last_synced_at":"2026-04-16T21:06:29.118Z","repository":{"id":77885942,"uuid":"61373802","full_name":"robstradling/libunwind","owner":"robstradling","description":null,"archived":false,"fork":false,"pushed_at":"2016-06-17T13:00:43.000Z","size":3553,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-06T02:43:20.033Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/robstradling.png","metadata":{"files":{"readme":"README","changelog":"ChangeLog","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-06-17T13:00:31.000Z","updated_at":"2016-06-17T13:00:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"9b8a1089-82db-4117-aba6-44d2a487de52","html_url":"https://github.com/robstradling/libunwind","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/robstradling/libunwind","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robstradling%2Flibunwind","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robstradling%2Flibunwind/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robstradling%2Flibunwind/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robstradling%2Flibunwind/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robstradling","download_url":"https://codeload.github.com/robstradling/libunwind/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robstradling%2Flibunwind/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31904108,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T18:22:33.417Z","status":"ssl_error","status_checked_at":"2026-04-16T18:21:47.142Z","response_time":69,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-15T23:43:19.820Z","updated_at":"2026-04-16T21:06:29.082Z","avatar_url":"https://github.com/robstradling.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"-*- mode: Outline -*-\n\nThis is version 1.0 of the unwind library.  This library supports\nseveral architecture/operating-system combinations:\n\n Linux/x86-64:\tWorks well.\n Linux/x86:\tWorks well.\n Linux/ARM:\tWorks well.\n Linux/IA-64:\tFully tested and supported.\n Linux/PARISC:\tWorks well, but C library missing unwind-info.\n HP-UX/IA-64:\tMostly works but known to have some serious limitations.\n Linux/AArch64:\tNewly added.\n Linux/PPC64:\tNewly added.\n Linux/SuperH:\tNewly added.\n FreeBSD/i386:\tNewly added.\n FreeBSD/x86-64: Newly added (FreeBSD architecture is known as amd64).\n Linux/Tilegx:  Newly added (64-bit mode only).\n\n* General Build Instructions\n\nIn general, this library can be built and installed with the following\ncommands:\n\n\t$ ./autogen.sh # Needed only for building from git. Depends on libtool.\n\t$ ./configure\n\t$ make\n\t$ make install prefix=PREFIX\n\nwhere PREFIX is the installation prefix.  By default, a prefix of\n/usr/local is used, such that libunwind.a is installed in\n/usr/local/lib and unwind.h is installed in /usr/local/include.  For\ntesting, you may want to use a prefix of /usr/local instead.\n\n\n* Building with Intel compiler\n\n** Version 8 and later\n\nStarting with version 8, the preferred name for the IA-64 Intel\ncompiler is \"icc\" (same name as on x86).  Thus, the configure-line\nshould look like this:\n\n    $ ./configure CC=icc CFLAGS=\"-g -O3 -ip\" CXX=icc CCAS=gcc CCASFLAGS=-g \\\n\t\tLDFLAGS=\"-L$PWD/src/.libs\"\n\n\n* Building on HP-UX\n\nFor the time being, libunwind must be built with GCC on HP-UX.\n\nlibunwind should be configured and installed on HP-UX like this:\n\n    $ ./configure CFLAGS=\"-g -O2 -mlp64\" CXXFLAGS=\"-g -O2 -mlp64\"\n\nCaveat: Unwinding of 32-bit (ILP32) binaries is not supported\n\tat the moment.\n\n** Workaround for older versions of GCC\n\nGCC v3.0 and GCC v3.2 ship with a bad version of sys/types.h.  The\nworkaround is to issue the following commands before running\n\"configure\":\n\n    $ mkdir $top_dir/include/sys\n    $ cp /usr/include/sys/types.h $top_dir/include/sys\n\nGCC v3.3.2 or later have been fixed and do not require this\nworkaround.\n\n* Building for PowerPC64 / Linux\n\nFor building for power64 you should use:\n\n  $ ./configure CFLAGS=\"-g -O2 -m64\" CXXFLAGS=\"-g -O2 -m64\"\n\nIf your power support altivec registers:\n  $ ./configure CFLAGS=\"-g -O2 -m64 -maltivec\" CXXFLAGS=\"-g -O2 -m64 -maltivec\"\n\nTo check if your processor has support for vector registers (altivec):\n    cat /proc/cpuinfo | grep altivec\nand should have something like this:\n    cpu             : PPC970, altivec supported\n\nIf libunwind seems to not work (backtracing failing), try to compile\nit with -O0, without optimizations. There are some compiler problems\ndepending on the version of your gcc.\n\n* Building on FreeBSD\n\nGeneral building instructions apply. To build and execute several tests,\nyou need libexecinfo library available in ports as devel/libexecinfo.\n\nDevelopment of the port was done of FreeBSD 8.0-STABLE. The library\nwas build with the system compiler that is modified version of gcc 4.2.1,\nas well as the gcc 4.4.3.\n\n* Regression Testing\n\nAfter building the library, you can run a set of regression tests with:\n\n\t$ make check\n\n** Expected results on IA-64 Linux\n\nUnless you have a very recent C library and compiler installed, it is\ncurrently expected to have the following tests fail on IA-64 Linux:\n\n\tGtest-init\t\t(should pass starting with glibc-2.3.x/gcc-3.4)\n\tLtest-init\t\t(should pass starting with glibc-2.3.x/gcc-3.4)\n\ttest-ptrace\t\t(should pass starting with glibc-2.3.x/gcc-3.4)\n\trun-ia64-test-dyn1\t(should pass starting with glibc-2.3.x)\n\nThis does not mean that libunwind cannot be used with older compilers\nor C libraries, it just means that for certain corner cases, unwinding\nwill fail.  Since they're corner cases, it is not likely for\napplications to trigger them.\n\nNote: If you get lots of errors in Gia64-test-nat and Lia64-test-nat, it's\n      almost certainly a sign of an old assembler.  The GNU assembler used\n      to encode previous-stack-pointer-relative offsets incorrectly.\n      This bug was fixed on 21-Sep-2004 so any later assembler will be\n      fine.\n\n** Expected results on x86 Linux\n\nThe following tests are expected to fail on x86 Linux:\n\n\tGtest-resume-sig\t(fails to get SIGUSR2)\n\tLtest-resume-sig\t(likewise)\n\tGtest-dyn1\t\t(no dynamic unwind info support yet)\n\tLtest-dyn1\t\t(no dynamic unwind info support yet)\n\ttest-setjmp\t\t(longjmp() not implemented yet)\n\trun-check-namespace\t(no _Ux86_getcontext yet)\n\ttest-ptrace\n\n** Expected results on x86-64 Linux\n\nThe following tests are expected to fail on x86-64 Linux:\n\n\tGtest-dyn1\t\t(no dynamic unwind info support yet)\n\tLtest-dyn1\t\t(no dynamic unwind info support yet)\n\tGtest-init (see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18743)\n\tLtest-init\t\t(likewise)\n\ttest-async-sig\t\t(crashes due to bad unwind-info?)\n\ttest-setjmp\t\t(longjmp() not implemented yet)\n\trun-check-namespace\t(no _Ux86_64_getcontext yet)\n\trun-ptrace-mapper\t(??? investigate)\n\trun-ptrace-misc\t(see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18748\n\t\t\t and http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18749)\n\n** Expected results on PARISC Linux\n\nCaveat: GCC v3.4 or newer is needed on PA-RISC Linux.  Earlier\nversions of the compiler failed to generate the exception-handling\nprogram header (GNU_EH_FRAME) needed for unwinding.\n\nThe following tests are expected to fail on x86-64 Linux:\n\n\tGtest-bt   (backtrace truncated at kill() due to lack of unwind-info)\n\tLtest-bt   (likewise)\n\tGtest-resume-sig  (Gresume.c:my_rt_sigreturn() is wrong somehow)\n\tLtest-resume-sig  (likewise)\n\tGtest-init (likewise)\n\tLtest-init (likewise)\n\tGtest-dyn1 (no dynamic unwind info support yet)\n\tLtest-dyn1 (no dynamic unwind info support yet)\n\ttest-setjmp\t\t(longjmp() not implemented yet)\n\trun-check-namespace\t(toolchain doesn't support HIDDEN yet)\n\n** Expected results on HP-UX\n\n\"make check\" is currently unsupported for HP-UX.  You can try to run\nit, but most tests will fail (and some may fail to terminate).  The\nonly test programs that are known to work at this time are:\n\n     tests/bt\n     tests/Gperf-simple\n     tests/test-proc-info\n     tests/test-static-link\n     tests/Gtest-init\n     tests/Ltest-init\n     tests/Gtest-resume-sig\n     tests/Ltest-resume-sig\n\n** Expected results on PPC64 Linux\n\n\"make check\" should run with no more than 10 out of 24 tests failed.\n\n\n* Performance Testing\n\nThis distribution includes a few simple performance tests which give\nsome idea of the basic cost of various libunwind operations.  After\nbuilding the library, you can run these tests with the following\ncommands:\n\n $ cd tests\n $ make perf\n\n* Contacting the Developers\n\nPlease direct all questions regarding this library to:\n\n\tlibunwind-devel@nongnu.org\n\nYou can do this by sending a mail to libunwind-request@nongnu.org with\na body of:\n\n\tsubscribe libunwind-devel\n\nor you can subscribe and manage your subscription via the\nweb-interface at:\n\n\thttps://savannah.nongnu.org/mail/?group=libunwind\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobstradling%2Flibunwind","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobstradling%2Flibunwind","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobstradling%2Flibunwind/lists"}