I cloned the eosio.contracts folder from github and made some changes in some of the contracts. Now I would like to compile them and test them, but when I try to compile them with eosio.cdt I get errors like

eosio.cdt/1.6.1/bin/wasm-ld: error: /tmp/eosio.system.cpp.o: undefined symbol: eosiosystem::system_contract::withdraw(...) etc. 

how do I compile the contracts in eosio.contracts so I can use them when I build/install eos etc. ?

1 Answer 1


I assume that you try to build the contracts with the cdt directly?

As the system-contracts are a set of contracts which are typically build with the build-script in addition of a makefile you can't use the cdt to build a single contract without additional changes.

Try to use build.sh located in the root-folder despite the changes you made or you have to add additional modifications to your contracts.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.