PMunch / futhark

Automatic wrapping of C headers in Nim
MIT License
355 stars 19 forks source link

install fails on linux mint. #80

Closed ghost closed 10 months ago

ghost commented 10 months ago
faisal@faisal-linux:~/Desktop/Untitled Folder$ nimble install futhark
Downloading https://github.com/PMunch/futhark using git
   Warning: Package 'futhark' has an incorrect structure. The top level of the package source directory should contain at most one module, named 'futhark.nim', but a file named 'opir.nim' was found. This will be an error in the future.
      Hint: If this is the primary source file in the package, rename it to 'futhark.nim'. If it's a source file required by the main module, or if it is one of several modules exposed by 'futhark', then move it into a 'futhark/' subdirectory. If it's a test file or otherwise not required to build the the package 'futhark.nim', prevent its installation by adding `skipFiles = @["opir.nim"]` to the .nimble file. See https://github.com/nim-lang/nimble#libraries for more info.
  Verifying dependencies for futhark@0.9.3
     Info:  Dependency on https://github.com/PMunch/libclang-nim@#head already satisfied
  Verifying dependencies for clang@0.59
     Info:  Dependency on termstyle@any version already satisfied
  Verifying dependencies for termstyle@0.1.0
     Info:  Dependency on macroutils@any version already satisfied
  Verifying dependencies for macroutils@1.2.0
     Info:  Dependency on https://github.com/PMunch/nimbleutils@>= 0.3.0 already satisfied
  Verifying dependencies for nimbleutils@0.3.1
 Installing futhark@0.9.3
   Building futhark/opir using c backend
/usr/bin/ld: cannot find -lclang: No such file or directory
collect2: error: ld returned 1 exit status
Error: execution of an external program failed: 'gcc   -o /tmp/nimble_189785/githubcom_PMunchfuthark/opir  /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@ssystem@sexceptions.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sprivate@sdigitsutils.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sassertions.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sformatfloat.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@ssystem@sdollars.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@ssyncio.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@ssystem.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@sparseutils.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@smath.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@salgorithm.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@sstrutils.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@spathnorm.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@soserrors.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sprivate@sospaths2.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@soptions.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@stimes.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sprivate@sosfiles.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@senvvars.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sprivate@sosappdirs.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@scmdline.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@shashes.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@scollections@stables.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@sjson.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.nimble@spkgs2@sclang-0.59-ca6af891141a7632dc6c391634239011678ed65f@sclangpkg@sIndex.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.nimble@spkgs2@stermstyle-0.1.0-4641c9f9e587d5cf04ccd3ce0bf1ef0263a16299@stermstyle.nim.c.o /home/faisal/.cache/nim/opir_r/@mopir.nim.c.o  -lm -lm -pthread -pthread -lm -lm -lrt  -lclang  -ldl'
    Prompt: Build failed for 'futhark@0.9.3', would you like to try installing 'futhark@#head' (latest unstable)? [y/N]
y
    Answer: Downloading https://github.com/PMunch/futhark using git
  Verifying dependencies for futhark@0.9.3
     Info:  Dependency on https://github.com/PMunch/libclang-nim@#head already satisfied
  Verifying dependencies for clang@0.59
     Info:  Dependency on termstyle@any version already satisfied
  Verifying dependencies for termstyle@0.1.0
     Info:  Dependency on macroutils@any version already satisfied
  Verifying dependencies for macroutils@1.2.0
     Info:  Dependency on https://github.com/PMunch/nimbleutils@>= 0.3.0 already satisfied
  Verifying dependencies for nimbleutils@0.3.1
 Installing futhark@0.9.3
   Building futhark/opir using c backend
/usr/bin/ld: cannot find -lclang: No such file or directory
collect2: error: ld returned 1 exit status
Error: execution of an external program failed: 'gcc   -o '/tmp/nimble_189785/githubcom_PMunchfuthark_#head/opir'  /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@ssystem@sexceptions.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sprivate@sdigitsutils.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sassertions.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sformatfloat.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@ssystem@sdollars.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@ssyncio.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@ssystem.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@sparseutils.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@smath.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@salgorithm.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@sstrutils.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@spathnorm.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@soserrors.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sprivate@sospaths2.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@soptions.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@stimes.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sprivate@sosfiles.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@senvvars.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@sprivate@sosappdirs.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@sstd@scmdline.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@shashes.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@scollections@stables.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.choosenim@stoolchains@snim-2.0.0@slib@spure@sjson.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.nimble@spkgs2@sclang-0.59-ca6af891141a7632dc6c391634239011678ed65f@sclangpkg@sIndex.nim.c.o /home/faisal/.cache/nim/opir_r/@m..@s..@s..@s..@shome@sfaisal@s.nimble@spkgs2@stermstyle-0.1.0-4641c9f9e587d5cf04ccd3ce0bf1ef0263a16299@stermstyle.nim.c.o /home/faisal/.cache/nim/opir_r/@mopir.nim.c.o  -lm -lm -pthread -pthread -lm -lm -lrt  -lclang  -ldl'
       Tip: 24 messages have been suppressed, use --verbose to show them.
nimble.nim(229)          buildFromDir

    Error:  Build failed for the package: futhark
PMunch commented 10 months ago

/usr/bin/ld: cannot find -lclang: No such file or directory

This is about the most common build error, and has been discussed in numerous issues already. Please read the installation instructions in the README and search existing issues.

ghost commented 10 months ago

/usr/bin/ld: cannot find -lclang: No such file or directory

This is about the most common build error, and has been discussed in numerous issues already. Please read the installation instructions in the README and search existing issues.

Even with libclang installed this still fails

PMunch commented 10 months ago

Hawe you read through the other related issues? This is simply a dynamic library search path issue. If you have clang installed as well you should be able to simply add --passL:"$(clang -print-file-name=libclang.so)/.." or similar. The open PR might also automatically fix this issue for you.