bytecode-verifier
bytecode-verifier copied to clipboard
Verifying libraries
Needs investigation. example try to verify https://etherscan.io/address/0xdd9dbcc279b0e034ce74db24015ebf2606d88539#code
You've chosen: mainnet
? Enter compiler version. (e.g. v0.4.10+commit.f0d539ae). v0.4.13+commit.fb4cb1a
? Enter the contract file name. (e.g. MultiSigWalletWithDailyLimit.sol) WalletMainLib.sol
? Enter the contract address on blockchain. (e.g. 0x851b7f3ab81bd8df354f0d7640ef
cd7288553419) 0xdd9dbcc279b0e034ce74db24015ebf2606d88539
? 0 for not optimized, 1 for optimized. 1
Current working directory: /someDirectory
File being compiled and compared: WalletMainLib.sol
==========================================
Compiler Version: v0.4.13+commit.fb4cb1a
Compiling in progress, dude, please be patient and give me 15~30 sec ...
==========================================
result from compiler is written in "from_compiler.txt" file
==========================================
result from blockchain is written in "from_blockchain.txt" file
Corresponding swarm hash is: 0x524b9849f0828f79136454754f2ea2351df027a217fd58452a2af5423d538463
==========================================
Bytecode doesn't match!!
@ethers Thanks JC, very good find.
When it comes to compiling library, solc places placeholder like __:BasicMathLib_________________________ in the output, and one has to insert address of those library placeholder in order to be compiled, which is essentially very different from compiling a simple contract.
official solcjs doc
solc doc
stackoverflow
I will be trying to fix this issue.