GregorySchwartz / too-many-cells

Cluster single cells and analyze cell clade relationships with colorful visualizations.
https://gregoryschwartz.github.io/too-many-cells/
GNU General Public License v3.0
105 stars 19 forks source link

Error with install on CentOS7: inline-r-0.9.2 won't build #12

Closed ArielPaulson closed 4 years ago

ArielPaulson commented 4 years ago

Hi,

The install won't complete because "pkg-config package 'libR' version >= 3.0 is required but it could not be found", an error which shows up a lot on the web, but I have no idea how to implement their fixes, I am not a Haskell person...

I assume it is because I did not install R as part of the prerequisites, since we manage a sitewide R installation which is NOT at /usr/bin/R. I have added "/n/apps/CentOS7/install/r-3.6.1/lib64/" to LD_LIBRARY_PATH, but to no effect.

Full error:

inline-r > configure inline-r > Configuring inline-r-0.9.2... inline-r > Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3: The pkg-config package 'libR' version inline-r > >=3.0 is required but it could not be found. inline-r > -- While building package inline-r-0.9.2 using: /home/apa/.stack/setup-exe-cache/x86_64-linux/Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3 --builddir=.stack-work/dist/x86_64-linux/Cabal-2.2.0.1 configure --user --package-db=clear --package-db=global --package-db=/home/apa/.stack/snapshots/x86_64-linux/5c704446e9d18780b137cf7126abfe344049f71b810d2ee121cad6c8264ecbb3/8.4.3/pkgdb --libdir=/home/apa/.stack/snapshots/x86_64-linux/5c704446e9d18780b137cf7126abfe344049f71b810d2ee121cad6c8264ecbb3/8.4.3/lib --bindir=/home/apa/.stack/snapshots/x86_64-linux/5c704446e9d18780b137cf7126abfe344049f71b810d2ee121cad6c8264ecbb3/8.4.3/bin --datadir=/home/apa/.stack/snapshots/x86_64-linux/5c704446e9d18780b137cf7126abfe344049f71b810d2ee121cad6c8264ecbb3/8.4.3/share --libexecdir=/home/apa/.stack/snapshots/x86_64-linux/5c704446e9d18780b137cf7126abfe344049f71b810d2ee121cad6c8264ecbb3/8.4.3/libexec --sysconfdir=/home/apa/.stack/snapshots/x86_64-linux/5c704446e9d18780b137cf7126abfe344049f71b810d2ee121cad6c8264ecbb3/8.4.3/etc --docdir=/home/apa/.stack/snapshots/x86_64-linux/5c704446e9d18780b137cf7126abfe344049f71b810d2ee121cad6c8264ecbb3/8.4.3/doc/inline-r-0.9.2 --htmldir=/home/apa/.stack/snapshots/x86_64-linux/5c704446e9d18780b137cf7126abfe344049f71b810d2ee121cad6c8264ecbb3/8.4.3/doc/inline-r-0.9.2 --haddockdir=/home/apa/.stack/snapshots/x86_64-linux/5c704446e9d18780b137cf7126abfe344049f71b810d2ee121cad6c8264ecbb3/8.4.3/doc/inline-r-0.9.2 --dependency=aeson=aeson-1.4.0.0-EAbp2GiwrvTH27nXdJzV0g --dependency=base=base-4.11.1.0 --dependency=bytestring=bytestring-0.10.8.2 --dependency=containers=containers-0.5.11.0 --dependency=data-default-class=data-default-class-0.1.2.0-2kYzERBLX3wJoPfj7mwVvW --dependency=deepseq=deepseq-1.4.3.0 --dependency=exceptions=exceptions-0.10.0-DmsI5QMvE6e6QgVkMINEKb --dependency=inline-c=inline-c-0.6.1.0-FM9gF7RqOpoLWRlok3Pud0 --dependency=mtl=mtl-2.2.2 --dependency=pretty=pretty-1.1.3.6 --dependency=primitive=primitive-0.6.3.0-DaZpcxwJp2TGn8ITSgfI4C --dependency=process=process-1.6.3.0 --dependency=reflection=reflection-2.1.4-ET4Qfoy5lmWBopRK3ezJIQ --dependency=setenv=setenv-0.1.1.3-H1xmIqlPy4yIDquO6eJhBl --dependency=singletons=singletons-2.4.1-FDzlisNNwplIrNjegYYDdD --dependency=template-haskell=template-haskell-2.13.0.0 --dependency=text=text-1.2.3.0 --dependency=th-lift=th-lift-0.7.10-88ozaMeoe8eDZSlyIjheFa --dependency=th-orphans=th-orphans-0.13.6-6mvRAE1wQLBDXpoe3PtgV3 --dependency=transformers=transformers-0.5.5.0 --dependency=unix=unix-2.7.2.2 --dependency=vector=vector-0.12.0.1-GGZqQZyzchy8YFPCF67wxL --exact-configuration --ghc-option=-fhide-source-paths

Process exited with code: ExitFailure 1

GregorySchwartz commented 4 years ago

With this kind of issue the easiest solution would be to use the docker. If that's not possible: is R in your path? Try adding the library folder to your path as well while you install, like PATH="$HOME/.local/bin:/usr/bin:/usr/lib/R/lib:$PATH" stack install where the R binary and libR.so and/or libR.pc files are located.

GregorySchwartz commented 4 years ago

Did this work?

ArielPaulson commented 4 years ago

I got the docker to work, unfortunately at our location, docker use is very restricted, and the only machine I could test this on was too small to run an actual analysis!

I finally did get the regular install to work, although the process was kind of janky. It does install and run, but the results are very bad, so I’m not sure I got everything right?? But this is on my data, so now I need to test it on the data from your paper.

Basically, I had to completely remove all traces of R from the machine doing the install, then add the directories containing R (executable), libR.pc, and libR.so to PATH and LD_LIBRARY_PATH, and also directly to “stack install” with --extra-include-dirs and --extra-lib-dirs.

If I left out any of these steps, it would install, but I could not run the too-many-cells executable from another machine, it would fail to find the R libraries.

So anyway it is running, but stack does make things complicated!

Thanks, Ariel

From: Gregory Schwartz notifications@github.com Sent: Thursday, March 19, 2020 8:30 AM To: GregorySchwartz/too-many-cells too-many-cells@noreply.github.com Cc: Paulson, Ariel apa@stowers.org; Author author@noreply.github.com Subject: Re: [GregorySchwartz/too-many-cells] Error with install on CentOS7: inline-r-0.9.2 won't build (#12)

CAUTION: This email was received from an External Source

Did this work?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/GregorySchwartz/too-many-cells/issues/12#issuecomment-601178568, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAGDUHXY2PQB2NGWEWMVNL3RIIM5LANCNFSM4LB6FXDA.

GregorySchwartz commented 4 years ago

Very bad? I don't know what your data is, but did you try different filterings / normalizations?

rsolano1-uw commented 4 years ago

@ArielPaulson can you share more about how you got it to work? We also have our R managed on a site-wide network location (which we load with Modules). I've explicitly added the <rbase>/lib64/pkgconfig/ directory to our $LD_LIBRARY_PATH since <rbase>/lib64/R/lib/ and <rbase>/bin/ are added to $LD_LIBRARY_PATH and $PATH by the Modules tool that we use to load R into the environment. I am passing the arguments --extra-include-dirs <rbase>/bin/ --extra-lib-dirs <rbase>/lib64/pkgconfig/,<rbase>/lib64/R/lib/ to stack install, and instead of failing on inline-r because stack can't find libR, it fails instead on glib becuase <rbase>/lib64/R/lib/ is a directory:

    Configuring glib-0.13.8.0...
    Preprocessing library for glib-0.13.8.0..
    /usr/bin/ld.gold: fatal error: <rbase>/lib64/R/lib/: pread failed: Is a directory
    collect2: error: ld returned 1 exit status
    linking .stack-work/dist/x86_64-linux/Cabal-2.2.0.1/build/System/Glib/StoreValue_hsc_make.o failed (exit code 1)

Our environments sound very similar, so I am assuming that you also ran into this issue. How did you go about resolving it?

ArielPaulson commented 4 years ago

I never got that particular error you are seeing, which is a strange one, since lib64/R/lib/ is always a directory! We don't use Modules or anything like it, don't know if that might be related.

This was the final workflow that made TMC runnable from any machine, not just the one doing the install. Using CentOS7 / bash / R 3.6.1.

First, remove all traces of R on the machine doing the install, including all libraries and shared objects. Otherwise, for whatever reason, the install process apparently finds the local R and then ignores the custom R paths you specify. So without this step, running TMC on other machines will die with "libR.so not found" or something like it.

Shell ops:

rbase=/path/to/your/R/install rbin=$rbase/bin/ rpkg=$rbase/lib64/pkgconfig/ rlib=$rbase/lib64/R/lib/

export LD_LIBRARY_PATH=$rbin:$rpkg:$rlib:$LD_LIBRARY_PATH export PATH=$HOME/.local/bin:$rbin:$rpkg:$rlib:$PATH

sudo curl -sSL https://get.haskellstack.org/ | sh stack setup

git clone https://github.com/GregorySchwartz/too-many-cells.git cd too-many-cells

stack build \ --extra-include-dirs=$rbin \ --extra-include-dirs=$rpkg \ --extra-include-dirs=$rlib \ --extra-lib-dirs=$rbin \ --extra-lib-dirs=$rpkg \ --extra-lib-dirs=$rlib

stack install

Now this command works sitewide:

PATH="$HOME/.local/bin:/usr/bin:$PATH" too-many-cells make-tree -h

The R package also runs.


From: rsolano1-uw notifications@github.com Sent: Thursday, March 26, 2020 2:04 PM To: GregorySchwartz/too-many-cells too-many-cells@noreply.github.com Cc: Paulson, Ariel apa@stowers.org; Mention mention@noreply.github.com Subject: Re: [GregorySchwartz/too-many-cells] Error with install on CentOS7: inline-r-0.9.2 won't build (#12)

CAUTION: This email was received from an External Source

@ArielPaulsonhttps://github.com/ArielPaulson can you share more about how you got it to work? We also have our R managed on a site-wide network location (which we load with Modules). I've explicitly added the /lib64/pkgconfig/ directory to our $LD_LIBRARY_PATH since /lib64/R/lib/ and /bin/ are added to $LD_LIBRARY_PATH and $PATH by the Modules tool that we use to load R into the environment. I am passing the arguments --extra-include-dirs /bin/ --extra-lib-dirs /lib64/pkgconfig/,/lib64/R/lib/ to stack install, and instead of failing on inline-r because stack can't find libR, it fails instead on glib becuase /lib64/R/lib/ is a directory:

Configuring glib-0.13.8.0...
Preprocessing library for glib-0.13.8.0..
/usr/bin/ld.gold: fatal error: <rbase>/lib64/R/lib/: pread failed: Is a directory
collect2: error: ld returned 1 exit status
linking .stack-work/dist/x86_64-linux/Cabal-2.2.0.1/build/System/Glib/StoreValue_hsc_make.o failed (exit code 1)

Our environments sound very similar, so I am assuming that you also ran into this issue. How did you go about resolving it?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/GregorySchwartz/too-many-cells/issues/12#issuecomment-604625922, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAGDUHUX7DQECKBFAQSN4Y3RJORL5ANCNFSM4LB6FXDA.

rsolano1-uw commented 4 years ago

Thanks @ArielPaulson. I was still getting the same error with Stack 1.7.1, but after upgrading to Stack 2.1.3, I'm now getting the much less descriptive:

--  While building package inline-r-0.9.2 using:
      /net/gs/vol1/home/rsolano1/.stack/setup-exe-cache/x86_64-linux/Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3 --builddir=.stack-work/dist/x86_64-linux/Cabal-2.2.0.1 configure --user --package-db=clear --package-db=global --package-db=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/pkgdb --libdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/lib --bindir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/bin --datadir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/share --libexecdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/libexec --sysconfdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/etc --docdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --htmldir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --haddockdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --dependency=aeson=aeson-1.4.0.0-EAbp2GiwrvTH27nXdJzV0g --dependency=base=base-4.11.1.0 --dependency=bytestring=bytestring-0.10.8.2 --dependency=containers=containers-0.5.11.0 --dependency=data-default-class=data-default-class-0.1.2.0-2kYzERBLX3wJoPfj7mwVvW --dependency=deepseq=deepseq-1.4.3.0 --dependency=exceptions=exceptions-0.10.0-DmsI5QMvE6e6QgVkMINEKb --dependency=inline-c=inline-c-0.6.1.0-FM9gF7RqOpoLWRlok3Pud0 --dependency=mtl=mtl-2.2.2 --dependency=pretty=pretty-1.1.3.6 --dependency=primitive=primitive-0.6.3.0-DaZpcxwJp2TGn8ITSgfI4C --dependency=process=process-1.6.3.0 --dependency=reflection=reflection-2.1.4-ET4Qfoy5lmWBopRK3ezJIQ --dependency=setenv=setenv-0.1.1.3-H1xmIqlPy4yIDquO6eJhBl --dependency=singletons=singletons-2.4.1-FDzlisNNwplIrNjegYYDdD --dependency=template-haskell=template-haskell-2.13.0.0 --dependency=text=text-1.2.3.0 --dependency=th-lift=th-lift-0.7.10-88ozaMeoe8eDZSlyIjheFa --dependency=th-orphans=th-orphans-0.13.6-6mvRAE1wQLBDXpoe3PtgV3 --dependency=transformers=transformers-0.5.5.0 --dependency=unix=unix-2.7.2.2 --dependency=vector=vector-0.12.0.1-GGZqQZyzchy8YFPCF67wxL --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/ --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/ --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/ --exact-configuration --ghc-option=-fhide-source-paths
    Process exited with code: ExitFailure 1

And when I run that command directly at my shell, it complains that a lot of dependencies are missing, including SVGFonts, which is one of the extra-deps in the TMC stack.yaml file.

@GregorySchwartz do you have any guidance on this?

GregorySchwartz commented 4 years ago

@rsolano1-uw Can I see the complete output? The directory you're in, the input command, and output?

rsolano1-uw commented 4 years ago

@GregorySchwartz here you go

$ pwd
/net/gs/vol1/home/rsolano1/too-many-cells
$ echo $rbin
/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/
$ echo $rpkg
/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/
$ echo $rlib
/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/
$ stack build       --extra-include-dirs=$rbin       --extra-include-dirs=$rpkg       --extra-include-dirs=$rlib       --extra-lib-dirs=$rbin       --extra-lib-dirs=$rpkg       --extra-lib-dirs=$rlib
WARNING: Ignoring hierarchical-spectral-clustering's bounds on spectral-clustering (>=0.3.1.2); using spectral-clustering-0.3.1.1.
Reason: allow-newer enabled.
WARNING: Ignoring typed-spreadsheet's bounds on async (>=2.0 && <2.2); using async-2.2.1.
Reason: allow-newer enabled.
WARNING: Ignoring typed-spreadsheet's bounds on foldl (>=1.1 && <1.4); using foldl-1.4.2.
Reason: allow-newer enabled.
WARNING: Ignoring typed-spreadsheet's bounds on gtk (>=0.13 && <0.15); using gtk-0.15.4.
Reason: allow-newer enabled.
WARNING: Ignoring streaming-utils's bounds on aeson (>0.8 && <1.2); using aeson-1.4.0.0.
Reason: allow-newer enabled.
WARNING: Ignoring streaming-utils's bounds on json-stream (>0.4.0 && <0.4.2); using json-stream-0.4.2.3.
Reason: allow-newer enabled.
WARNING: Ignoring streaming-utils's bounds on resourcet (>1.0 && <1.2); using resourcet-1.2.1.
Reason: allow-newer enabled.
WARNING: Ignoring streaming-utils's bounds on streaming (>=0.1.4.0 && <0.1.4.8); using streaming-0.2.1.0.
Reason: allow-newer enabled.
WARNING: Ignoring streaming-utils's bounds on streaming-bytestring (>=0.1.4.0 && <0.1.4.8); using streaming-bytestring-0.1.6.
Reason: allow-newer enabled.
WARNING: Ignoring streaming-utils's bounds on streaming-commons (>0.1.0 && <0.1.18); using streaming-commons-0.2.1.0.
Reason: allow-newer enabled.
WARNING: Ignoring streaming-utils's bounds on transformers (>=0.4 && <0.5.3); using transformers-0.5.5.0.
Reason: allow-newer enabled.
diagrams-lib                    > configure
diagrams-lib                    > Configuring diagrams-lib-1.4.2.3...
diagrams-lib                    > build
hierarchical-spectral-clustering> configure
diagrams-lib                    > Preprocessing library for diagrams-lib-1.4.2.3..
diagrams-lib                    > Building library for diagrams-lib-1.4.2.3..
diagrams-lib                    > [ 1 of 73] Compiling Diagrams.Attributes
hierarchical-spectral-clustering> Configuring hierarchical-spectral-clustering-0.5.0.1...
hierarchical-spectral-clustering> build
inline-r                        > configure
hierarchical-spectral-clustering> Preprocessing library for hierarchical-spectral-clustering-0.5.0.1..
hierarchical-spectral-clustering> Building library for hierarchical-spectral-clustering-0.5.0.1..
hierarchical-spectral-clustering> [1 of 8] Compiling Math.Clustering.Hierarchical.Spectral.Types
diagrams-lib                    > [ 2 of 73] Compiling Diagrams.Attributes.Compile
diagrams-lib                    > [ 3 of 73] Compiling Diagrams.CubicSpline.Internal
diagrams-lib                    > [ 4 of 73] Compiling Diagrams.Names
inline-r                        > Configuring inline-r-0.9.2...
diagrams-lib                    > [ 5 of 73] Compiling Diagrams.Parametric
inline-r                        > Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3: The pkg-config package 'libR' version
inline-r                        > >=3.0 is required but it could not be found.
inline-r                        > 
tls                             > configure                       
diagrams-lib                    > [ 6 of 73] Compiling Diagrams.Parametric.Adjust
diagrams-lib                    > [ 7 of 73] Compiling Diagrams.Points
diagrams-lib                    > [ 8 of 73] Compiling Diagrams.Coordinates
hierarchical-spectral-clustering> [2 of 8] Compiling Math.Clustering.Hierarchical.Spectral.Load
diagrams-lib                    > [ 9 of 73] Compiling Diagrams.Angle
tls                             > Configuring tls-1.4.1...        
tls                             > build                           
diagrams-lib                    > [10 of 73] Compiling Diagrams.Direction
tls                             > Preprocessing library for tls-1.4.1..
tls                             > Building library for tls-1.4.1..
diagrams-lib                    > [11 of 73] Compiling Diagrams.Query
diagrams-lib                    > [12 of 73] Compiling Diagrams.ThreeD.Attributes
tls                             > [ 1 of 52] Compiling Network.TLS.Crypto.Types
tls                             > [ 2 of 52] Compiling Network.TLS.ErrT
tls                             > [ 3 of 52] Compiling Network.TLS.Imports
diagrams-lib                    > [13 of 73] Compiling Diagrams.Transform
tls                             > [ 4 of 52] Compiling Network.TLS.Backend
diagrams-lib                    > [14 of 73] Compiling Diagrams.TwoD.Segment.Bernstein
tls                             > [ 5 of 52] Compiling Network.TLS.Measurement
tls                             > [ 6 of 52] Compiling Network.TLS.RNG
tls                             > [ 7 of 52] Compiling Network.TLS.Crypto.DH
hierarchical-spectral-clustering> [3 of 8] Compiling Math.Clustering.Hierarchical.Spectral.Utility
diagrams-lib                    > [15 of 73] Compiling Diagrams.TwoD.Types
tls                             > [ 8 of 52] Compiling Network.TLS.Extra.FFDHE
diagrams-lib                    > [16 of 73] Compiling Diagrams.ThreeD.Types
tls                             > [ 9 of 52] Compiling Network.TLS.Types
diagrams-lib                    > [17 of 73] Compiling Diagrams.Transform.Matrix
diagrams-lib                    > [18 of 73] Compiling Diagrams.ThreeD.Light
tls                             > [10 of 52] Compiling Network.TLS.Session
tls                             > [11 of 52] Compiling Network.TLS.Compression
diagrams-lib                    > [19 of 73] Compiling Diagrams.TwoD.Vector
tls                             > [12 of 52] Compiling Network.TLS.Cap
diagrams-lib                    > [20 of 73] Compiling Diagrams.TwoD.Transform
tls                             > [13 of 52] Compiling Network.TLS.Util
tls                             > [14 of 52] Compiling Network.TLS.Util.ASN1
diagrams-lib                    > [21 of 73] Compiling Diagrams.Transform.ScaleInv
hierarchical-spectral-clustering> [4 of 8] Compiling Math.Clustering.Hierarchical.Spectral.Sparse
tls                             > [15 of 52] Compiling Network.TLS.Util.Serialization
tls                             > [16 of 52] Compiling Network.TLS.Crypto.IES
diagrams-lib                    > [22 of 73] Compiling Diagrams.ThreeD.Transform
diagrams-lib                    > [23 of 73] Compiling Diagrams.TwoD.Points
diagrams-lib                    > [24 of 73] Compiling Diagrams.ThreeD.Vector
diagrams-lib                    > [25 of 73] Compiling Diagrams.ThreeD.Shapes
hierarchical-spectral-clustering> [5 of 8] Compiling Math.Clustering.Hierarchical.Spectral.Dense
tls                             > [17 of 52] Compiling Network.TLS.Crypto
hierarchical-spectral-clustering> [6 of 8] Compiling Math.Clustering.Hierarchical.Spectral.Test
diagrams-lib                    > [26 of 73] Compiling Diagrams.ThreeD.Camera
tls                             > [18 of 52] Compiling Network.TLS.Struct
diagrams-lib                    > [27 of 73] Compiling Diagrams.Util
hierarchical-spectral-clustering> [7 of 8] Compiling Math.Graph.Types
diagrams-lib                    > [28 of 73] Compiling Diagrams.Align
hierarchical-spectral-clustering> [8 of 8] Compiling Math.Graph.Components
diagrams-lib                    > [29 of 73] Compiling Diagrams.TwoD.Align
diagrams-lib                    > [30 of 73] Compiling Diagrams.ThreeD.Align
diagrams-lib                    > [31 of 73] Compiling Diagrams.Located
hierarchical-spectral-clustering> ignoring (possibly broken) abi-depends field for packages
hierarchical-spectral-clustering> Preprocessing executable 'cluster-tree' for hierarchical-spectral-clustering-0.5.0.1..
hierarchical-spectral-clustering> Building executable 'cluster-tree' for hierarchical-spectral-clustering-0.5.0.1..
tls                             > [19 of 52] Compiling Network.TLS.MAC
hierarchical-spectral-clustering> [1 of 1] Compiling Main         
tls                             > [20 of 52] Compiling Network.TLS.Cipher
diagrams-lib                    > [32 of 73] Compiling Diagrams.Segment
tls                             > [21 of 52] Compiling Network.TLS.Extra.Cipher
tls                             > [22 of 52] Compiling Network.TLS.Extra
tls                             > [23 of 52] Compiling Network.TLS.Wire
diagrams-lib                    > [33 of 73] Compiling Diagrams.TwoD.Segment
tls                             > [24 of 52] Compiling Network.TLS.Packet
diagrams-lib                    > [34 of 73] Compiling Diagrams.Tangent
diagrams-lib                    > [35 of 73] Compiling Diagrams.TwoD.Curvature
diagrams-lib                    > [36 of 73] Compiling Diagrams.Trail
hierarchical-spectral-clustering> Linking .stack-work/dist/x86_64-linux/Cabal-2.2.0.1/build/cluster-tree/cluster-tree ...
tls                             > [25 of 52] Compiling Network.TLS.Record.State
tls                             > [26 of 52] Compiling Network.TLS.Record.Types
tls                             > [27 of 52] Compiling Network.TLS.Record.Engage
hierarchical-spectral-clustering> copy/register                   
tls                             > [28 of 52] Compiling Network.TLS.Record.Disengage
tls                             > [29 of 52] Compiling Network.TLS.Record
tls                             > [30 of 52] Compiling Network.TLS.Handshake.State
hierarchical-spectral-clustering> Installing library in /net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/lib/x86_64-linux-ghc-8.4.3/hierarchical-spectral-clustering-0.5.0.1-CP5lelLvnNX35K6qw9fjEi
hierarchical-spectral-clustering> Installing executable cluster-tree in /net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/bin
diagrams-lib                    > [37 of 73] Compiling Diagrams.TrailLike
diagrams-lib                    > [38 of 73] Compiling Diagrams.TwoD.Arc
tls                             > [31 of 52] Compiling Network.TLS.Extension
hierarchical-spectral-clustering> Registering library for hierarchical-spectral-clustering-0.5.0.1..
diagrams-lib                    > [39 of 73] Compiling Diagrams.TwoD.Ellipse
diagrams-lib                    > [40 of 73] Compiling Diagrams.Animation.Active
diagrams-lib                    > [41 of 73] Compiling Diagrams.Combinators
tls                             > [32 of 52] Compiling Network.TLS.State
diagrams-lib                    > [42 of 73] Compiling Diagrams.Trace
diagrams-lib                    > [43 of 73] Compiling Diagrams.Envelope
diagrams-lib                    > [44 of 73] Compiling Diagrams.Path
tls                             > [33 of 52] Compiling Network.TLS.X509
tls                             > [34 of 52] Compiling Network.TLS.Hooks
tls                             > [35 of 52] Compiling Network.TLS.Credentials
diagrams-lib                    > [45 of 73] Compiling Diagrams.TwoD.Polygons
tls                             > [36 of 52] Compiling Network.TLS.Parameters
tls                             > [37 of 52] Compiling Network.TLS.Context.Internal
diagrams-lib                    > [46 of 73] Compiling Diagrams.TwoD.Shapes
diagrams-lib                    > [47 of 73] Compiling Diagrams.TwoD.Path
tls                             > [38 of 52] Compiling Network.TLS.Sending
tls                             > [39 of 52] Compiling Network.TLS.Receiving
tls                             > [40 of 52] Compiling Network.TLS.IO
tls                             > [41 of 52] Compiling Network.TLS.Handshake.Key
tls                             > [42 of 52] Compiling Network.TLS.Handshake.Signature
diagrams-lib                    > [48 of 73] Compiling Diagrams.TwoD.Offset
tls                             > [43 of 52] Compiling Network.TLS.Handshake.Process
tls                             > [44 of 52] Compiling Network.TLS.Handshake.Common
tls                             > [45 of 52] Compiling Network.TLS.Handshake.Certificate
diagrams-lib                    > [49 of 73] Compiling Diagrams.TwoD.Image
tls                             > [46 of 52] Compiling Network.TLS.Handshake.Client
tls                             > 
tls                             > /data/nobackup/tmp/stack320953/tls-1.4.1/Network/TLS/Handshake/Client.hs:273:13: warning: [-Wincomplete-patterns]
tls                             >     Pattern match(es) are non-exhaustive
tls                             >     In a case alternative: Patterns not matched: (PrivKeyEC _)
tls                             >     |
tls                             > 273 |             case pk of
tls                             >     |             ^^^^^^^^^^...
diagrams-lib                    > [50 of 73] Compiling Diagrams.TwoD.Attributes
tls                             > [47 of 52] Compiling Network.TLS.Handshake.Server
diagrams-lib                    > [51 of 73] Compiling Diagrams.TwoD.Text
diagrams-lib                    > [52 of 73] Compiling Diagrams.TwoD.Arrowheads
tls                             > [48 of 52] Compiling Network.TLS.Handshake
tls                             > [49 of 52] Compiling Network.TLS.Context
tls                             > [50 of 52] Compiling Network.TLS.Core
tls                             > [51 of 52] Compiling Network.TLS.Internal
tls                             > [52 of 52] Compiling Network.TLS
diagrams-lib                    > [53 of 73] Compiling Diagrams.TwoD.Arrow
tls                             > ignoring (possibly broken) abi-depends field for packages
tls                             > 
tls                             > copy/register
diagrams-lib                    > [54 of 73] Compiling Diagrams.LinearMap
tls                             > Installing library in /net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/lib/x86_64-linux-ghc-8.4.3/tls-1.4.1-AiWZMyBd1jJKUDBq5ZOz61
diagrams-lib                    > [55 of 73] Compiling Diagrams.Deform
tls                             > Registering library for tls-1.4.1..
diagrams-lib                    > [56 of 73] Compiling Diagrams.TwoD.Deform
diagrams-lib                    > [57 of 73] Compiling Diagrams.ThreeD.Projection
diagrams-lib                    > [58 of 73] Compiling Diagrams.ThreeD.Deform
diagrams-lib                    > [59 of 73] Compiling Diagrams.ThreeD
diagrams-lib                    > [60 of 73] Compiling Diagrams.CubicSpline.Boehm
diagrams-lib                    > [61 of 73] Compiling Diagrams.CubicSpline
diagrams-lib                    > [62 of 73] Compiling Diagrams.TwoD.Model
diagrams-lib                    > [63 of 73] Compiling Diagrams.BoundingBox
diagrams-lib                    > [64 of 73] Compiling Diagrams.TwoD.Combinators
diagrams-lib                    > [65 of 73] Compiling Diagrams.Size
diagrams-lib                    > [66 of 73] Compiling Diagrams.TwoD.Size
diagrams-lib                    > [67 of 73] Compiling Diagrams.TwoD
diagrams-lib                    > [68 of 73] Compiling Diagrams.TwoD.Adjust
diagrams-lib                    > [69 of 73] Compiling Diagrams.ThreeD.Size
diagrams-lib                    > [70 of 73] Compiling Diagrams.Animation
diagrams-lib                    > [71 of 73] Compiling Diagrams.Backend.CmdLine
diagrams-lib                    > [72 of 73] Compiling Diagrams
diagrams-lib                    > [73 of 73] Compiling Diagrams.Prelude
diagrams-lib                    > ignoring (possibly broken) abi-depends field for packages
diagrams-lib                    > copy/register
diagrams-lib                    > Installing library in /net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/lib/x86_64-linux-ghc-8.4.3/diagrams-lib-1.4.2.3-BBo5cJjxc36JDWEaLefWHz
diagrams-lib                    > Registering library for diagrams-lib-1.4.2.3..

--  While building package inline-r-0.9.2 using:
      /net/gs/vol1/home/rsolano1/.stack/setup-exe-cache/x86_64-linux/Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3 --builddir=.stack-work/dist/x86_64-linux/Cabal-2.2.0.1 configure --user --package-db=clear --package-db=global --package-db=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/pkgdb --libdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/lib --bindir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/bin --datadir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/share --libexecdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/libexec --sysconfdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/etc --docdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --htmldir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --haddockdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --dependency=aeson=aeson-1.4.0.0-EAbp2GiwrvTH27nXdJzV0g --dependency=base=base-4.11.1.0 --dependency=bytestring=bytestring-0.10.8.2 --dependency=containers=containers-0.5.11.0 --dependency=data-default-class=data-default-class-0.1.2.0-2kYzERBLX3wJoPfj7mwVvW --dependency=deepseq=deepseq-1.4.3.0 --dependency=exceptions=exceptions-0.10.0-DmsI5QMvE6e6QgVkMINEKb --dependency=inline-c=inline-c-0.6.1.0-FM9gF7RqOpoLWRlok3Pud0 --dependency=mtl=mtl-2.2.2 --dependency=pretty=pretty-1.1.3.6 --dependency=primitive=primitive-0.6.3.0-DaZpcxwJp2TGn8ITSgfI4C --dependency=process=process-1.6.3.0 --dependency=reflection=reflection-2.1.4-ET4Qfoy5lmWBopRK3ezJIQ --dependency=setenv=setenv-0.1.1.3-H1xmIqlPy4yIDquO6eJhBl --dependency=singletons=singletons-2.4.1-FDzlisNNwplIrNjegYYDdD --dependency=template-haskell=template-haskell-2.13.0.0 --dependency=text=text-1.2.3.0 --dependency=th-lift=th-lift-0.7.10-88ozaMeoe8eDZSlyIjheFa --dependency=th-orphans=th-orphans-0.13.6-6mvRAE1wQLBDXpoe3PtgV3 --dependency=transformers=transformers-0.5.5.0 --dependency=unix=unix-2.7.2.2 --dependency=vector=vector-0.12.0.1-GGZqQZyzchy8YFPCF67wxL --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/ --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/ --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/ --exact-configuration --ghc-option=-fhide-source-paths
    Process exited with code: ExitFailure 1
Progress 4/19
$       /net/gs/vol1/home/rsolano1/.stack/setup-exe-cache/x86_64-linux/Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3 --builddir=.stack-work/dist/x86_64-linux/Cabal-2.2.0.1 configure --user --package-db=clear --package-db=global --package-db=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/pkgdb --libdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/lib --bindir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/bin --datadir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/share --libexecdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/libexec --sysconfdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/etc --docdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --htmldir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --haddockdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --dependency=aeson=aeson-1.4.0.0-EAbp2GiwrvTH27nXdJzV0g --dependency=base=base-4.11.1.0 --dependency=bytestring=bytestring-0.10.8.2 --dependency=containers=containers-0.5.11.0 --dependency=data-default-class=data-default-class-0.1.2.0-2kYzERBLX3wJoPfj7mwVvW --dependency=deepseq=deepseq-1.4.3.0 --dependency=exceptions=exceptions-0.10.0-DmsI5QMvE6e6QgVkMINEKb --dependency=inline-c=inline-c-0.6.1.0-FM9gF7RqOpoLWRlok3Pud0 --dependency=mtl=mtl-2.2.2 --dependency=pretty=pretty-1.1.3.6 --dependency=primitive=primitive-0.6.3.0-DaZpcxwJp2TGn8ITSgfI4C --dependency=process=process-1.6.3.0 --dependency=reflection=reflection-2.1.4-ET4Qfoy5lmWBopRK3ezJIQ --dependency=setenv=setenv-0.1.1.3-H1xmIqlPy4yIDquO6eJhBl --dependency=singletons=singletons-2.4.1-FDzlisNNwplIrNjegYYDdD --dependency=template-haskell=template-haskell-2.13.0.0 --dependency=text=text-1.2.3.0 --dependency=th-lift=th-lift-0.7.10-88ozaMeoe8eDZSlyIjheFa --dependency=th-orphans=th-orphans-0.13.6-6mvRAE1wQLBDXpoe3PtgV3 --dependency=transformers=transformers-0.5.5.0 --dependency=unix=unix-2.7.2.2 --dependency=vector=vector-0.12.0.1-GGZqQZyzchy8YFPCF67wxL --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/ --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/ --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/ --exact-configuration --ghc-option=-fhide-source-paths
Configuring too-many-cells-0.2.2.1...
Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3: Encountered missing dependencies:
SVGFonts -any,
birch-beer -any,
cassava -any,
colour -any,
diagrams -any,
diagrams-cairo -any,
diagrams-graphviz -any,
diagrams-lib -any,
differential -any,
directory -any,
diversity -any,
fgl -any,
filepath -any,
find-clumpiness -any,
foldl -any,
graphviz -any,
hierarchical-clustering -any,
hierarchical-spectral-clustering -any,
hmatrix -any,
inline-r -any,
lens -any,
managed -any,
matrix-market-attoparsec -any,
modularity -any,
optparse-generic -any,
palette -any,
parallel -any,
plots -any,
safe -any,
scientific -any,
sparse-linear-algebra -any,
spectral-clustering >=0.3.0.2,
split -any,
statistics -any,
streaming -any,
streaming-bytestring -any,
streaming-cassava -any,
streaming-utils -any,
streaming-with -any,
temporary -any,
terminal-progress-bar -any,
text-show -any,
vector-algorithms -any,
zlib -any
GregorySchwartz commented 4 years ago

What does the stack.yaml look like? I wonder about the resolver version...it seems like it's being ignored. What happens without the --extra-include-dirs, do these missing dependencies go away? If so, then I think --extra-include-dirs might override things? I think the folks who make stack might have a better understanding of how to fix it.

ArielPaulson commented 4 years ago

Hi @rsolano1-uwhttps://github.com/rsolano1-uw,

For revealing the core stack-build error within the huge amount of output, one thing I found extremely useful, is that stack does not seem to build dependencies in the same order every time.

Basically, you can keep re-running the same "stack build ..."command over and over (for me, maybe 15 times), and it will eventually build everything except the broken dependency, in this case inline-r. So after like 15 re-runs, the output of "stack build ..." will finally contain only the critical error and nothing else.

This was critical for me, since I too got the final unhelpful error block like you did, but this is more of a stack trace and doesn't contain the real error. Only when I whittled the output down did I see the real error, which had to do with a missing libR.so.


From: Gregory Schwartz notifications@github.com Sent: Monday, March 30, 2020 3:51 PM To: GregorySchwartz/too-many-cells too-many-cells@noreply.github.com Cc: Paulson, Ariel apa@stowers.org; Mention mention@noreply.github.com Subject: Re: [GregorySchwartz/too-many-cells] Error with install on CentOS7: inline-r-0.9.2 won't build (#12)

CAUTION: This email was received from an External Source

What does the stack.yaml look like? It seems like it's being ignored. What happens without the --extra-include-dirs, do these missing dependencies go away? If so, then I think --extra-include-dirs might override things?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/GregorySchwartz/too-many-cells/issues/12#issuecomment-606242852, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAGDUHS36EF5SVYLAY2AZSLRKEA5HANCNFSM4LB6FXDA.

rsolano1-uw commented 4 years ago

Hey @GregorySchwartz, my stack.yaml file is the default from this git repo. Without the extra --extra-include-dirs arguments, I get the same error.

Thanks for the tip @ArielPaulson, I did what you said and was able to whittle the output down to just the inline-r error.

This is what my output looks like with and without the --extra-include-dirs arguments:

$ stack build       --extra-include-dirs=$rbin       --extra-include-dirs=$rpkg       --extra-include-dirs=$rlib       --extra-lib-dirs=$rbin       --extra-lib-dirs=$rpkg       --extra-lib-dirs=$rlib
inline-r      > configure
inline-r      > Configuring inline-r-0.9.2...
inline-r      > Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3: The pkg-config package 'libR' version
inline-r      > >=3.0 is required but it could not be found.
inline-r      > 

--  While building package inline-r-0.9.2 using:
      /net/gs/vol1/home/rsolano1/.stack/setup-exe-cache/x86_64-linux/Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3 --builddir=.stack-work/dist/x86_64-linux/Cabal-2.2.0.1 configure --user --package-db=clear --package-db=global --package-db=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/pkgdb --libdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/lib --bindir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/bin --datadir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/share --libexecdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/libexec --sysconfdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/etc --docdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --htmldir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --haddockdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --dependency=aeson=aeson-1.4.0.0-EAbp2GiwrvTH27nXdJzV0g --dependency=base=base-4.11.1.0 --dependency=bytestring=bytestring-0.10.8.2 --dependency=containers=containers-0.5.11.0 --dependency=data-default-class=data-default-class-0.1.2.0-2kYzERBLX3wJoPfj7mwVvW --dependency=deepseq=deepseq-1.4.3.0 --dependency=exceptions=exceptions-0.10.0-DmsI5QMvE6e6QgVkMINEKb --dependency=inline-c=inline-c-0.6.1.0-FM9gF7RqOpoLWRlok3Pud0 --dependency=mtl=mtl-2.2.2 --dependency=pretty=pretty-1.1.3.6 --dependency=primitive=primitive-0.6.3.0-DaZpcxwJp2TGn8ITSgfI4C --dependency=process=process-1.6.3.0 --dependency=reflection=reflection-2.1.4-ET4Qfoy5lmWBopRK3ezJIQ --dependency=setenv=setenv-0.1.1.3-H1xmIqlPy4yIDquO6eJhBl --dependency=singletons=singletons-2.4.1-FDzlisNNwplIrNjegYYDdD --dependency=template-haskell=template-haskell-2.13.0.0 --dependency=text=text-1.2.3.0 --dependency=th-lift=th-lift-0.7.10-88ozaMeoe8eDZSlyIjheFa --dependency=th-orphans=th-orphans-0.13.6-6mvRAE1wQLBDXpoe3PtgV3 --dependency=transformers=transformers-0.5.5.0 --dependency=unix=unix-2.7.2.2 --dependency=vector=vector-0.12.0.1-GGZqQZyzchy8YFPCF67wxL --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/ --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/ --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/ --exact-configuration --ghc-option=-fhide-source-paths
    Process exited with code: ExitFailure 1
Progress 1/3

and

$ stack build
inline-r      > configure
inline-r      > Configuring inline-r-0.9.2...
inline-r      > Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3: The pkg-config package 'libR' version
inline-r      > >=3.0 is required but it could not be found.
inline-r      > 

--  While building package inline-r-0.9.2 using:
      /net/gs/vol1/home/rsolano1/.stack/setup-exe-cache/x86_64-linux/Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3 --builddir=.stack-work/dist/x86_64-linux/Cabal-2.2.0.1 configure --user --package-db=clear --package-db=global --package-db=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/pkgdb --libdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/lib --bindir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/bin --datadir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/share --libexecdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/libexec --sysconfdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/etc --docdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --htmldir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --haddockdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --dependency=aeson=aeson-1.4.0.0-EAbp2GiwrvTH27nXdJzV0g --dependency=base=base-4.11.1.0 --dependency=bytestring=bytestring-0.10.8.2 --dependency=containers=containers-0.5.11.0 --dependency=data-default-class=data-default-class-0.1.2.0-2kYzERBLX3wJoPfj7mwVvW --dependency=deepseq=deepseq-1.4.3.0 --dependency=exceptions=exceptions-0.10.0-DmsI5QMvE6e6QgVkMINEKb --dependency=inline-c=inline-c-0.6.1.0-FM9gF7RqOpoLWRlok3Pud0 --dependency=mtl=mtl-2.2.2 --dependency=pretty=pretty-1.1.3.6 --dependency=primitive=primitive-0.6.3.0-DaZpcxwJp2TGn8ITSgfI4C --dependency=process=process-1.6.3.0 --dependency=reflection=reflection-2.1.4-ET4Qfoy5lmWBopRK3ezJIQ --dependency=setenv=setenv-0.1.1.3-H1xmIqlPy4yIDquO6eJhBl --dependency=singletons=singletons-2.4.1-FDzlisNNwplIrNjegYYDdD --dependency=template-haskell=template-haskell-2.13.0.0 --dependency=text=text-1.2.3.0 --dependency=th-lift=th-lift-0.7.10-88ozaMeoe8eDZSlyIjheFa --dependency=th-orphans=th-orphans-0.13.6-6mvRAE1wQLBDXpoe3PtgV3 --dependency=transformers=transformers-0.5.5.0 --dependency=unix=unix-2.7.2.2 --dependency=vector=vector-0.12.0.1-GGZqQZyzchy8YFPCF67wxL --exact-configuration --ghc-option=-fhide-source-paths
    Process exited with code: ExitFailure 1
Progress 1/3
ArielPaulson commented 4 years ago

That is the identical error I was getting. Did you remove all traces of R from the build box? Including all share and lib objects?


From: rsolano1-uw notifications@github.com Sent: Monday, March 30, 2020 4:54 PM To: GregorySchwartz/too-many-cells too-many-cells@noreply.github.com Cc: Paulson, Ariel apa@stowers.org; Mention mention@noreply.github.com Subject: Re: [GregorySchwartz/too-many-cells] Error with install on CentOS7: inline-r-0.9.2 won't build (#12)

CAUTION: This email was received from an External Source

Hey @GregorySchwartzhttps://github.com/GregorySchwartz, my stack.yaml file is the default from this git repo. Without the extra --extra-include-dirs arguments, I get the same error.

Thanks for the tip @ArielPaulsonhttps://github.com/ArielPaulson, I did what you said and was able to whittle the output down to just the inline-r error.

This is what my output looks like with and without the --extra-include-dirs arguments:

$ stack build --extra-include-dirs=$rbin --extra-include-dirs=$rpkg --extra-include-dirs=$rlib --extra-lib-dirs=$rbin --extra-lib-dirs=$rpkg --extra-lib-dirs=$rlib inline-r > configure inline-r > Configuring inline-r-0.9.2... inline-r > Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3: The pkg-config package 'libR' version inline-r > >=3.0 is required but it could not be found. inline-r >

-- While building package inline-r-0.9.2 using: /net/gs/vol1/home/rsolano1/.stack/setup-exe-cache/x86_64-linux/Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3 --builddir=.stack-work/dist/x86_64-linux/Cabal-2.2.0.1 configure --user --package-db=clear --package-db=global --package-db=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/pkgdb --libdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/lib --bindir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/bin --datadir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/share --libexecdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/libexec --sysconfdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/etc --docdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --htmldir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --haddockdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --dependency=aeson=aeson-1.4.0.0-EAbp2GiwrvTH27nXdJzV0g --dependency=base=base-4.11.1.0 --dependency=bytestring=bytestring-0.10.8.2 --dependency=containers=containers-0.5.11.0 --dependency=data-default-class=data-default-class-0.1.2.0-2kYzERBLX3wJoPfj7mwVvW --dependency=deepseq=deepseq-1.4.3.0 --dependency=exceptions=exceptions-0.10.0-DmsI5QMvE6e6QgVkMINEKb --dependency=inline-c=inline-c-0.6.1.0-FM9gF7RqOpoLWRlok3Pud0 --dependency=mtl=mtl-2.2.2 --dependency=pretty=pretty-1.1.3.6 --dependency=primitive=primitive-0.6.3.0-DaZpcxwJp2TGn8ITSgfI4C --dependency=process=process-1.6.3.0 --dependency=reflection=reflection-2.1.4-ET4Qfoy5lmWBopRK3ezJIQ --dependency=setenv=setenv-0.1.1.3-H1xmIqlPy4yIDquO6eJhBl --dependency=singletons=singletons-2.4.1-FDzlisNNwplIrNjegYYDdD --dependency=template-haskell=template-haskell-2.13.0.0 --dependency=text=text-1.2.3.0 --dependency=th-lift=th-lift-0.7.10-88ozaMeoe8eDZSlyIjheFa --dependency=th-orphans=th-orphans-0.13.6-6mvRAE1wQLBDXpoe3PtgV3 --dependency=transformers=transformers-0.5.5.0 --dependency=unix=unix-2.7.2.2 --dependency=vector=vector-0.12.0.1-GGZqQZyzchy8YFPCF67wxL --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/ --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/ --extra-include-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/bin/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/pkgconfig/ --extra-lib-dirs=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib/ --exact-configuration --ghc-option=-fhide-source-paths Process exited with code: ExitFailure 1 Progress 1/3

and

$ stack build inline-r > configure inline-r > Configuring inline-r-0.9.2... inline-r > Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3: The pkg-config package 'libR' version inline-r > >=3.0 is required but it could not be found. inline-r >

-- While building package inline-r-0.9.2 using: /net/gs/vol1/home/rsolano1/.stack/setup-exe-cache/x86_64-linux/Cabal-simple_mPHDZzAJ_2.2.0.1_ghc-8.4.3 --builddir=.stack-work/dist/x86_64-linux/Cabal-2.2.0.1 configure --user --package-db=clear --package-db=global --package-db=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/pkgdb --libdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/lib --bindir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/bin --datadir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/share --libexecdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/libexec --sysconfdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/etc --docdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --htmldir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --haddockdir=/net/gs/vol1/home/rsolano1/.stack/snapshots/x86_64-linux/dfe4707604c8f349437e232192d2ca59bfc7553865fc241257e976a155100033/8.4.3/doc/inline-r-0.9.2 --dependency=aeson=aeson-1.4.0.0-EAbp2GiwrvTH27nXdJzV0g --dependency=base=base-4.11.1.0 --dependency=bytestring=bytestring-0.10.8.2 --dependency=containers=containers-0.5.11.0 --dependency=data-default-class=data-default-class-0.1.2.0-2kYzERBLX3wJoPfj7mwVvW --dependency=deepseq=deepseq-1.4.3.0 --dependency=exceptions=exceptions-0.10.0-DmsI5QMvE6e6QgVkMINEKb --dependency=inline-c=inline-c-0.6.1.0-FM9gF7RqOpoLWRlok3Pud0 --dependency=mtl=mtl-2.2.2 --dependency=pretty=pretty-1.1.3.6 --dependency=primitive=primitive-0.6.3.0-DaZpcxwJp2TGn8ITSgfI4C --dependency=process=process-1.6.3.0 --dependency=reflection=reflection-2.1.4-ET4Qfoy5lmWBopRK3ezJIQ --dependency=setenv=setenv-0.1.1.3-H1xmIqlPy4yIDquO6eJhBl --dependency=singletons=singletons-2.4.1-FDzlisNNwplIrNjegYYDdD --dependency=template-haskell=template-haskell-2.13.0.0 --dependency=text=text-1.2.3.0 --dependency=th-lift=th-lift-0.7.10-88ozaMeoe8eDZSlyIjheFa --dependency=th-orphans=th-orphans-0.13.6-6mvRAE1wQLBDXpoe3PtgV3 --dependency=transformers=transformers-0.5.5.0 --dependency=unix=unix-2.7.2.2 --dependency=vector=vector-0.12.0.1-GGZqQZyzchy8YFPCF67wxL --exact-configuration --ghc-option=-fhide-source-paths Process exited with code: ExitFailure 1 Progress 1/3

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/GregorySchwartz/too-many-cells/issues/12#issuecomment-606271844, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAGDUHWUNYRJXFDVBD7P7KDRKEIKLANCNFSM4LB6FXDA.

rsolano1-uw commented 4 years ago

Yes, there was never a local istallation of R on this system, only the network install that is loaded into the environment by Modules.

GregorySchwartz commented 4 years ago

@rsolano1-uw This is similar to https://github.com/tweag/HaskellR/issues/200. There may be something there to help. Looks like you need to point to the libR.pc file?

rsolano1-uw commented 4 years ago

@GregorySchwartz I do point it to libR.pc. The file exists in my $rpkg directory which I pass to stack with --extra-include-dirs and --extra-lib-dirs. The contents of the file point to my $rlib directory, which contains libR.so

GregorySchwartz commented 4 years ago

What version is it? What does libR.pc say and point to?

rsolano1-uw commented 4 years ago

My R version is 3.6.1. Here's the contents of libR.pc:

$ cat libR.pc 
rhome=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R
rlibdir=${rhome}/lib
rincludedir=/net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/include

Name: libR
Description: R as a library
Version: 3.6.1
Libs: -Wl,--export-dynamic -fopenmp  -L/usr/local/lib64 -L${rlibdir} -lR
Cflags: -I${rincludedir} -I${rincludedir}
Libs.private:

And here's what's in those directories:

$ ls /net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/lib
libR.so
$ ls /net/gs/vol3/software/modules-sw/R/3.6.1/Linux/CentOS7/x86_64/lib64/R/include
Rconfig.h  Rdefines.h  Rembedded.h  R_ext  R.h  Rinterface.h  Rinternals.h  Rmath.h  Rversion.h  S.h
GregorySchwartz commented 4 years ago

What is your PKG_CONFIG_PATH? What is the output of pkg-config --list-all? Is libR there?

ArielPaulson commented 4 years ago

My $PKG_CONFIG_PATH is empty, and pkg-config --list-all shows nothing R-related.


From: Gregory Schwartz notifications@github.com Sent: Thursday, April 16, 2020 9:15 AM To: GregorySchwartz/too-many-cells too-many-cells@noreply.github.com Cc: Paulson, Ariel apa@stowers.org; Mention mention@noreply.github.com Subject: Re: [GregorySchwartz/too-many-cells] Error with install on CentOS7: inline-r-0.9.2 won't build (#12)

CAUTION: This email was received from an External Source

What is your PKG_CONFIG_PATH? What is the output of pkg-config --list-all? Is libR there?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/GregorySchwartz/too-many-cells/issues/12#issuecomment-614680303, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAGDUHQWQ5J4JOFCFOSXLCDRM4HH5ANCNFSM4LB6FXDA.

GregorySchwartz commented 4 years ago

All, so that would probably be the culprit. For macOS, they needed to point to the location (export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/local/opt/libffi/lib/pkgconfig for macOS in the TooManyCells website instructions). It also looks like your pkg-config isn't finding libR, although that may be fixed by your included directories for building. So try setting your PKG_CONFIG_PATH then installing, maybe that will help.

ArielPaulson commented 4 years ago

I will try this and see if this changes the install, although I am on CentOS7, not macOS.

At the moment, I am also running the example data from your workshop page, I will let you know what happens.


From: Gregory Schwartz notifications@github.com Sent: Thursday, April 16, 2020 3:01 PM To: GregorySchwartz/too-many-cells too-many-cells@noreply.github.com Cc: Paulson, Ariel apa@stowers.org; Mention mention@noreply.github.com Subject: Re: [GregorySchwartz/too-many-cells] Error with install on CentOS7: inline-r-0.9.2 won't build (#12)

CAUTION: This email was received from an External Source

All, so that would probably be the culprit. For macOS, they needed to point to the location (export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/local/opt/libffi/lib/pkgconfig for macOS in the TooManyCells website instructions). It also looks like your pkg-config isn't finding libR, although that may be fixed by your included directories for building. So try setting your PKG_CONFIG_PATH then installing, maybe that will help.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/GregorySchwartz/too-many-cells/issues/12#issuecomment-614865711, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAGDUHVYYXPQAUGXGIYHWE3RM5P2TANCNFSM4LB6FXDA.

GregorySchwartz commented 4 years ago

@ArielPaulson @rsolano1-uw I have package too-many-cells for nix, I recommend trying that out (see the documentation). It's a reproducible derivation which should take care of all dependencies and only requires root once when installing nix.

rsolano1-uw commented 4 years ago

Setting the PKG_CONFIG_PATH allowed me to build and install TMC. The --help option even prints some output, so I think everything is working.