{"id":26119242,"url":"https://github.com/scottroot/troubleshooting-ao","last_synced_at":"2026-04-22T19:33:30.298Z","repository":{"id":240390905,"uuid":"802506262","full_name":"scottroot/troubleshooting-ao","owner":"scottroot","description":null,"archived":false,"fork":false,"pushed_at":"2024-05-20T15:56:18.000Z","size":200,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-09T02:48:11.981Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scottroot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-05-18T13:40:18.000Z","updated_at":"2024-05-20T15:56:22.000Z","dependencies_parsed_at":"2024-05-18T14:44:38.035Z","dependency_job_id":"0db6d627-f068-4feb-ab95-f15206013c77","html_url":"https://github.com/scottroot/troubleshooting-ao","commit_stats":null,"previous_names":["scottroot/troubleshooting-ao"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottroot%2Ftroubleshooting-ao","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottroot%2Ftroubleshooting-ao/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottroot%2Ftroubleshooting-ao/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottroot%2Ftroubleshooting-ao/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scottroot","download_url":"https://codeload.github.com/scottroot/troubleshooting-ao/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242849664,"owners_count":20195341,"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":"2025-03-10T12:25:42.514Z","updated_at":"2025-12-05T19:02:18.698Z","avatar_url":"https://github.com/scottroot.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Troubleshooting AO build \u0026 load\nThe Dockerfile used here is just the stock version from the AO repo that builds wasm64, however I have also been testing the build/load process with 32bit. Adding the below to the Dockerfile and then building with buildarg like `docker build . -t p3rmaw3b/ao:v520 --build-arg MEMORY64=1` or not can specify which option to run.\n```\nARG MEMORY64\n\nENV MEMORY64=${MEMORY64}\n\nRUN if [ ! -z \"$MEMORY64\" ]; \\\n      then export LUA_CC='emcc -sWASM=1 -sMEMORY64=1 -sSUPPORT_LONGJMP=1'; \\\n      else export LUA_CC='emcc -sWASM=1 -U LUA_32BITS -sSUPPORT_LONGJMP=1'; \\\n    fi \\\n    \u0026\u0026 cd /lua-${LUA_VERSION} \u0026\u0026 make clean \u0026\u0026 make generic CC=\"${LUA_CC}\"\n\n```\n  \n## Context for code in this repo\n - Created this new repo for testing.\n - Cloned https://github.com/permaweb/ao.git to root.\n - Copied the ao/dev-cli/container folder to this repo root.\n - Deleted the ao folder.\n - Added 1 new .lua file (container/src/scott.lua)\n - Set up npm and installed @permaweb/ao-loader\n - Added build and test script to package.json\n - Copied test code into test folder\n\n## Running\n - Install npm packages:\n   ```\n   npm i\n   ```\n - Create AO module build. This builds the docker image and then runs it, using the container folder as the folder to bind. The output 'process.wasm' is copied from the container folder to the repo root.\n   ```\n   npm run build\n   ```\n - Run Tests\n   ```\n   npm run test\n   ```\n# Observer errors related to wasm imports\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscottroot%2Ftroubleshooting-ao","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscottroot%2Ftroubleshooting-ao","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscottroot%2Ftroubleshooting-ao/lists"}