Do this in a different terminal
solana-test-validator --resetNeed to connect to local validator not mainnet or devnet etc.
solana config set --url http://localhost:8899
solana config get # to confirmDo this in a different terminal again
solana logsCreates solana_logger_program.so in target/deploy/
cd program
cargo-build-sbf
# or specify version
cargo-build-sbf --arch v3Will need this if you are redeploying to make sure you have enough space in your account
ls -la target/deploy/solana_logger_program.soWill return the address your smart contract is at
solana program deploy target/deploy/solana_logger_program.soShoes details of the program (like data length)
solana program show <PROGRAM_PUBKEY>In case you want to analyse a program from the chain
solana program dump <PROGRAM_PUBKEY> dumped_program.soTo resize the program so it can fit a larger program
solana program extend <PROGRAM_PUBKEY> <BYTES_TO_ADD>Writing the buffer will give a pubkey that to that buffer, you then move from buffer to account
cd program
cargo-build-sbf
solana program write-buffer target/deploy/solana_logger_program.so
solana program upgrade <BUFFER_PUBKEY> <PROGRAM_PUBKEY>Inside client/src/main.rs there is the logic to form the Instructions and Transaction and submit it
cd client
cargo runLifts the binary into sBPF bytecode instructions
agave-ledger-tool program disassemble target/deploy/solana_logger_program.so