{"id":19484942,"url":"https://github.com/opencog/cogutil","last_synced_at":"2025-04-06T07:11:09.553Z","repository":{"id":31118451,"uuid":"34677974","full_name":"opencog/cogutil","owner":"opencog","description":"Very low-level C++ programming utilities used by several components","archived":false,"fork":false,"pushed_at":"2025-01-25T22:48:08.000Z","size":59671,"stargazers_count":40,"open_issues_count":6,"forks_count":84,"subscribers_count":31,"default_branch":"master","last_synced_at":"2025-03-30T06:07:52.248Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"btel/svg_utils","license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/opencog.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2015-04-27T16:30:41.000Z","updated_at":"2025-03-20T06:42:13.000Z","dependencies_parsed_at":"2025-02-28T14:16:23.807Z","dependency_job_id":"76626f7b-8770-4d32-a4d3-a3eb158fa504","html_url":"https://github.com/opencog/cogutil","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencog%2Fcogutil","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencog%2Fcogutil/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencog%2Fcogutil/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencog%2Fcogutil/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/opencog","download_url":"https://codeload.github.com/opencog/cogutil/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247445669,"owners_count":20939958,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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-10T20:24:48.755Z","updated_at":"2025-04-06T07:11:09.534Z","avatar_url":"https://github.com/opencog.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"OpenCog Utilities\n=================\n\n[![CircleCI](https://circleci.com/gh/opencog/cogutil.svg?style=svg)](https://circleci.com/gh/opencog/cogutil)\n\nThe OpenCog utilities is a miscellaneous collection of C++ utilities\nuse for typical programming tasks in multiple OpenCog projects.\nThese include:\n* thread-safe queues, stacks and sets\n* asynchronous method caller\n* thread-safe resource pool\n* thread-safe backtrace printing\n* high-performance signal-slot\n* random tournament selection\n* OS portability layers.\n\n\nThe main project site is at http://opencog.org\n\nPrerequisites\n-------------\nTo build the OpenCog utilities, the packages listed below are required. With a\nfew exceptions, most Linux distributions will provide these packages. Users of\nUbuntu 14.04 \"Trusty Tahr\" may use the dependency installer at scripts/octool.\nUsers of any version of Linux may use the Dockerfile to quickly build a\ncontainer in which OpenCog will be built and run.\n\n###### boost\n\u003e C++ utilities package\n\u003e http://www.boost.org/ | libboost-dev, libboost-filesystem-dev, libboost-program-options-dev, libboost-system-dev, libboost-thread-dev\n\n###### cmake\n\u003e Build management tool; v3.12 or higher recommended.\n\u003e http://www.cmake.org/ | cmake\n\n###### cxxtest\n\u003e Unit test framework\n\u003e https://cxxtest.com/ | `apt-get install cxxtest`\n\nOptional Prerequisites\n----------------------\nThe following are optional, but are strongly recommended, as they result\nin \"pretty\" stack traces, which result in far more useful and readable\nstack traces.  These are requires, and not really optional, if you are\na regular OpenCog developer.\n\n###### binutils BFD library\n\u003e The GNU binutils linker-loader, ahem, cough, \"Binary File Description\".\n\u003e http://gnu.org/s/binutils | binutils-dev\n\u003e The linker-loader understands calling conventions.\n\n###### iberty\n\u003e The GNU GCC compiler tools libiberty component.\n\u003e http://gcc.gnu.org | libiberty-dev\n\u003e The GCC compiler, and iberty in particular, know stack traces.\n\n###### doxygen\n\u003e Documentation generator under GNU General Public License\n\u003e http://www.stack.nl/~dimitri/doxygen/ | doxygen\n\u003e Generates code documentation\n\nBuilding Cogutil\n-----------------\nPerform the following steps at the shell prompt:\n```\n    cd to project root dir\n    mkdir build\n    cd build\n    cmake ..\n    make\n```\nLibraries will be built into subdirectories within build, mirroring the\nstructure of the source directory root.\n\n\nUnit tests\n----------\nTo build and run the unit tests, from the ./build directory enter (after\nbuilding opencog as above):\n```\n    make check\n```\n\n\nInstall\n-------\nAfter building, you MUST install the utilities!\n```\n    sudo make install\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopencog%2Fcogutil","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopencog%2Fcogutil","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopencog%2Fcogutil/lists"}