Skip to content

Set up Cursor Cloud dev environment for net4cpp#22

Draft
ruoka wants to merge 1 commit into
masterfrom
cursor/setup-dev-environment-454d
Draft

Set up Cursor Cloud dev environment for net4cpp#22
ruoka wants to merge 1 commit into
masterfrom
cursor/setup-dev-environment-454d

Conversation

@ruoka

@ruoka ruoka commented Jul 18, 2026

Copy link
Copy Markdown
Owner

Summary

Sets up the development environment for net4cpp (a C++23 modules networking/HTTP library) in Cursor Cloud and documents the non-obvious startup caveats for future agents.

What was done

  • Installed the LLVM 21 toolchain (clang-21, libc++-21-dev, libc++abi-21-dev, lld-21, clang-tools-21, clang-tidy-21, cppcheck, libssl-dev) from apt.llvm.org — only clang 18 was present. Baked into the VM image.
  • Initialized the deps/tester git submodule (test framework + build core; the project's only external dependency).
  • Added AGENTS.md with a ## Cursor Cloud specific instructions section capturing the key gotcha (see below).

Update script

git submodule update --init --depth 1 deps/tester

Minimal, idempotent dependency refresh. The LLVM toolchain lives in the VM image, so it is not reinstalled per session.

Verified working

Task Command Result
Build ./tools/CB.sh debug build SUCCESS
Test NET_DISABLE_NETWORK_TESTS=1 ./tools/CB.sh debug test 393/393 tests, 881/881 assertions pass
Lint cppcheck ... net/ tools/ + clang-tidy-21 runs (non-blocking, matches CI)
Hello-world echo server + client over IPv6 loopback (net::acceptor / net::connect) Hello, net4cpp! echoed back

Key gotcha (documented in AGENTS.md)

tools/CB.sh only auto-disables network tests when CURSOR_SANDBOX is set, which it is not in this cloud environment. So network tests run by default and a few fail against the restricted sandbox network. Use NET_DISABLE_NETWORK_TESTS=1 for a fully-green run. Loopback networking works, so echo/HTTP demos run fine.

Open in Web Open in Cursor 

Co-authored-by: Kaius  Ruokonen <ruoka@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants