# Failed Process Running a Binary File (solidity compiler)

**URL:** <https://discourse.julialang.org/t/failed-process-running-a-binary-file-solidity-compiler/72170>\
**Category:** General Usage\
**Created:** [November 27, 2021, 2:45pm UTC](https://discourse.julialang.org/t/failed-process-running-a-binary-file-solidity-compiler/72170 "2021-11-27T14:45:53Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![tlorans](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tlorans/32/19849_2.png) [@tlorans](https://discourse.julialang.org/u/tlorans)\
**Post date:** [November 27, 2021, 2:45pm UTC](https://discourse.julialang.org/t/failed-process-running-a-binary-file-solidity-compiler/72170/1 "2021-11-27T14:45:53Z")

</div>

Hello,

I’m trying to build a version management tool for the solidity compiler `solc` in Julia, and, while the process seems to work properly, I’ve got a curious warning message at then end of the process.  
Here a MWE:

```julia
using HTTP

filename = "solc-macosx-amd64-v0.8.9+commit.e5eed63a"
OS = "macosx"

url = string("https://solc-bin.ethereum.org/",OS,"-amd64/",filename)

r = HTTP.request("GET", url)
HTTP.download(url, "test/")

run(`chmod a+x $(string("test/",filename))`)

cd("test")

run(`./$filename`);

```

And the error message is:

```julia
ERROR: LoadError: failed process: Process(`./solc-macosx-amd64-v0.8.9+commit.e5eed63a`, ProcessExited(1)) [1]

```

I can’t figure out what does it means, knowing that the solidity compiler is successfully built from source based on this code.

Anyone has an idea of the source of this error and what am I doing wrong?

Best regards,

Thomas

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [November 28, 2021, 12:39pm UTC](https://discourse.julialang.org/t/failed-process-running-a-binary-file-solidity-compiler/72170/2 "2021-11-28T12:39:53Z")

</div>

What is not clear? The process failed because it returned exit code 1. You can see a similar example with

```julia
julia> run(`false`)
ERROR: failed process: Process(`false`, ProcessExited(1)) [1]

```

Maybe you need to provide extra arguments?

Side note, to download files you don’t need `HTTP.jl`, the `Downloads` standard library works just fine:

```julia
using Downloads

filename = "solc-macosx-amd64-v0.8.9+commit.e5eed63a"
OS = "macosx"

url = string("https://solc-bin.ethereum.org/",OS,"-amd64/",filename)
path = Downloads.download(url, joinpath(tempdir(), filename))

run(`chmod a+x $(path)`)
run(`$(path)`)

```

---

<div class="post-metadata">

**Author:** ![tlorans](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tlorans/32/19849_2.png) [@tlorans](https://discourse.julialang.org/u/tlorans)\
**Post date:** [November 28, 2021, 1:16pm UTC](https://discourse.julialang.org/t/failed-process-running-a-binary-file-solidity-compiler/72170/3 "2021-11-28T13:16:26Z")

</div>

Hello,

Thank you for your answer.

Indeed, it was unclear to me just because of my misunderstanding of the process (I was trying to translate a function from a Python package). I should use extra argument as you mentioned, in order to indicate to the ‘solc’ compiler what command should it run.

Thanks for your precision for the download function.

Best regards,

Thomas
