{"id":24797395,"url":"https://github.com/germanaizek/mongodb-without-avx","last_synced_at":"2025-09-05T17:44:48.834Z","repository":{"id":133749677,"uuid":"602280634","full_name":"GermanAizek/mongodb-without-avx","owner":"GermanAizek","description":"⚠ mongodb core-dump illegal instruction ✔ Building without AVX instructions not supported by cpu's","archived":false,"fork":false,"pushed_at":"2024-07-25T13:46:07.000Z","size":20,"stargazers_count":54,"open_issues_count":12,"forks_count":24,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-06-13T16:36:46.880Z","etag":null,"topics":["docker","mongo","mongodb","mongodb-core-dump-illegal-instruction","mongodb-docker","mongodb-no-avx","mongodb-without-avx","no-avx","patch","without-avx","without-avx-avx2"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GermanAizek.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":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-02-15T21:54:08.000Z","updated_at":"2025-05-23T20:08:12.000Z","dependencies_parsed_at":"2023-11-29T14:26:26.404Z","dependency_job_id":"794a649a-58a9-4afd-8a27-448bb56170db","html_url":"https://github.com/GermanAizek/mongodb-without-avx","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/GermanAizek/mongodb-without-avx","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GermanAizek%2Fmongodb-without-avx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GermanAizek%2Fmongodb-without-avx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GermanAizek%2Fmongodb-without-avx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GermanAizek%2Fmongodb-without-avx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GermanAizek","download_url":"https://codeload.github.com/GermanAizek/mongodb-without-avx/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GermanAizek%2Fmongodb-without-avx/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273794009,"owners_count":25169503,"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","status":"online","status_checked_at":"2025-09-05T02:00:09.113Z","response_time":402,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["docker","mongo","mongodb","mongodb-core-dump-illegal-instruction","mongodb-docker","mongodb-no-avx","mongodb-without-avx","no-avx","patch","without-avx","without-avx-avx2"],"created_at":"2025-01-30T01:28:18.838Z","updated_at":"2025-09-05T17:44:48.790Z","avatar_url":"https://github.com/GermanAizek.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Building Mongodb without avx\n\nPython Prerequisites\n---------------\n\nIn order to build MongoDB, Python 3.7+ is required, and several Python\nmodules must be installed. Python 3 is included in macOS 10.15 and later.\nFor earlier macOS versions, Python 3 can be installed using Homebrew or\nMacPorts or similar.\n\nTo install the required Python modules, run:\n\n    $ python3 -m pip install -r etc/pip/compile-requirements.txt\n\nInstalling the requirements inside a python3 based virtualenv\ndedicated to building MongoDB is recommended.\n\nNote: In order to compile C-based Python modules, you'll also need the\nPython and OpenSSL C headers. Run:\n\n* Fedora/RHEL - `dnf install python3-devel openssl-devel`\n* Ubuntu (20.04 and newer)/Debian (Bullseye and newer) - `apt install python-dev-is-python3 libssl-dev`\n* Ubuntu (18.04 and older)/Debian (Buster and older) - `apt install python3.7-dev libssl-dev`\n\nDebian/Ubuntu\n--------------\n\nTo install dependencies on Debian or Ubuntu systems:\n\n    # apt-get install build-essential\n\nPatching\n--------------\n\n```\ngit clone --recurse-submodules https://github.com/GermanAizek/mongodb-without-avx.git\ncd mongo\n```\n\nNow you need to choose a patch for your requirements.\n\n - o2_patch.diff - default optimization\n - o3_patch.diff - maximum optimization (big binary file)\n - os_patch.diff - size binary optimization\n\nExample:\n\n```\npatch -p1 SConstruct \u003c ../o3_patch.diff\n```\n\nDone! Now we perform default building that you need.\n\nSCons\n---------------\n\nIf you only want to build the database server `mongod`:\n\n    $ python3 buildscripts/scons.py install-mongod\n\n***Note***: For C++ compilers that are newer than the supported\nversion, the compiler may issue new warnings that cause MongoDB to\nfail to build since the build system treats compiler warnings as\nerrors. To ignore the warnings, pass the switch\n`--disable-warnings-as-errors` to scons.\n\n    $ python3 buildscripts/scons.py install-mongod --disable-warnings-as-errors\n\n***Note***: On memory-constrained systems, you may run into an error such as `g++: fatal error: Killed signal terminated program cc1plus`. To use less memory during building, pass the parameter `-j1` to scons. This can be incremented to `-j4`, `-j8`, and higher as appropriate to find the fastest working option on your system. `-j` it's count CPU threads (if CPU does not have multithreading, then its number cores)\n\n    $ python3 buildscripts/scons.py install-mongod -j1\n\nTo install `mongod` directly to `/opt/mongo`\n\n    $ python3 buildscripts/scons.py DESTDIR=/opt/mongo install-mongod\n\nTo create an installation tree of the servers in `/tmp/unpriv` that\ncan later be copied to `/usr/priv`\n\n    $ python3 buildscripts/scons.py DESTDIR=/tmp/unpriv PREFIX=/usr/priv install-servers\n\nIf you want to build absolutely everything (`mongod`, `mongo`, unit\ntests, etc):\n\n    $ python3 buildscripts/scons.py install-all-meta\n\n\nSCons Targets\n--------------\n\nThe following targets can be named on the scons command line to build and\ninstall a subset of components:\n\n* `install-mongod`\n* `install-mongos`\n* `install-core` (includes *only* `mongod` and `mongos`)\n* `install-servers` (includes all server components)\n* `install-devcore` (includes `mongod`, `mongos`, and `jstestshell` (formerly `mongo` shell))\n* `install-all` (includes a complete end-user distribution and tests)\n* `install-all-meta` (absolutely everything that can be built and installed)\n\n***NOTE***: The `install-core` and `install-servers` targets are *not*\nguaranteed to be identical. The `install-core` target will only ever include a\nminimal set of \"core\" server components, while `install-servers` is intended\nfor a functional end-user installation. If you are testing, you should use the\n`install-core` or `install-devcore` targets instead.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgermanaizek%2Fmongodb-without-avx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgermanaizek%2Fmongodb-without-avx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgermanaizek%2Fmongodb-without-avx/lists"}