-
Notifications
You must be signed in to change notification settings - Fork 366
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows support #943
Windows support #943
Conversation
ghc-9.2.5.exe: | D:\a\_temp\msys64\home\runneradmin\.local\lib\libsecp256k1.a: unknown symbol `__imp___gmpn_gcdext' ghc-9.2.5.exe: | C:\sr\snapshots\0f12f00e\lib\x86_64-windows-ghc-9.2.5\hevm-0.50.2-8r7d7yHNo9G4MeqIafLjGL\HShevm-0.50.2-8r7d7yHNo9G4MeqIafLjGL.o: unknown symbol `secp256k1_context_create' ghc-9.2.5.exe: Could not load Object Code C:\sr\snapshots\0f12f00e\lib\x86_64-windows-ghc-9.2.5\hevm-0.50.2-8r7d7yHNo9G4MeqIafLjGL\HShevm-0.50.2-8r7d7yHNo9G4MeqIafLjGL.o.
This also removes the dependency on gmp
d3d2fd5
to
5fdc3e2
Compare
5fdc3e2
to
ce70f04
Compare
b80795c
to
043f8e8
Compare
130aec8
to
ff8088d
Compare
Some echo implementations don't support `-n` unfortunately.
solc-returned paths use Windows separators (e.g. a\\b\\c.sol:Foo) so we need to rewrite paths to account for that.
The Windows changes have been merged upstream now.
cba8c19
to
2317cc5
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we have a function
lib/Echidna/Solidity.hs
Outdated
@@ -45,6 +46,10 @@ import Echidna.Types.Test (EchidnaTest(..)) | |||
import Echidna.Types.Tx (basicTx, createTxWithValue, unlimitedGasPerBlock, initialTimestamp, initialBlockNumber) | |||
import Echidna.Types.World (World(..)) | |||
|
|||
-- | OS-specific path to the "null" file, which accepts writes without storing them | |||
nullFilePath :: String |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can we put this somewhere below the call site?
contractId n | T.any (== ':') n = let (splitPath, splitName) = T.breakOn ":" n in | ||
rewritePathSeparators splitPath `T.append` splitName | ||
| otherwise = ":" `append` n | ||
rewritePathSeparators = T.pack . joinPath . splitDirectories . T.unpack |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why this is needed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
solc-returned paths use Windows separators (e.g. a\b\c.sol:Foo) so we need to rewrite paths to account for that.
fef5e5f
to
0df567a
Compare
any idea why I get this error using
|
@rayeaster can you please create an issue from this so we can track it down more easily? 🙂 |
No worry, I get it working like a charm on my local windows now with
|
This is (very early,
untested) support for building Echidna in Windows.Unfortunately
vty
does not support Windows, and asvty
is a dependency ofbrick
, Echidna on Windows does not support interactive mode.