Subject: bug#44989: [email-masked] can't find errno.h

From: raingloom <[email-masked]>
Date: Tue, 1 Dec 2020 12:18:03 +0100

On Tue, 1 Dec 2020 10:54:55 +0100
raingloom <[email-masked]> wrote:

> Haven't had a chance to try with latest version, because there is no
> substitute yet.
> It's a very basic Haskell file, only imports are Data.List and
> System.IO. GHCI works.
> 
> I'm pretty sure I didn't need to add any other packages to my profile
> when I last used GHC, but maybe things have changed since then or I'm
> misremembering, or I usde to have just the right assortment of
> packages.
> 
> error:
> ```
> ghc -o sol1 sol1.hs
> Linking sol1 ...
> In file included from
> /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/include/errno.h:28,
> from
> /gnu/store/55c0m16dwnmmp3pah1hqx1941niwi6x4-ghc-8.6.5/lib/ghc-8.6.5/include/rts/OSThreads.h:28,
> from
> /gnu/store/55c0m16dwnmmp3pah1hqx1941niwi6x4-ghc-8.6.5/lib/ghc-8.6.5/include/Rts.h:168,
> 
>                  from /tmp/ghc1915_0/ghc_1.c:1:0: error: 
> 
> /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/include/bits/errno.h:26:11:
> error: fatal error: linux/errno.h: No such file or directory
>        26 | # include <linux/errno.h>
>           |           ^~~~~~~~~~~~~~~
>    |
> 26 | # include <linux/errno.h>
>    |           ^
> compilation terminated.
> `gcc' failed in phase `C Compiler'. (Exit code: 1)
> ```
> 
> manifest:
> ```
> ;; This file was automatically generated and is for internal use only.
> ;; It cannot be passed to the '--manifest' option.
> 
> (manifest
>   (version 3)
>   (packages
>     (("ghc"
>       "8.6.5"
>       "out"
>       "/gnu/store/55c0m16dwnmmp3pah1hqx1941niwi6x4-ghc-8.6.5"
>       (propagated-inputs ())
>       (search-paths
>         (("GHC_PACKAGE_PATH"
>           ("lib/ghc-8.6.5")
>           ":"
>           directory
>           ".*\\.conf\\.d$")))
>       (properties))
>      ("racket-minimal"
>       "7.9"
>       "out"
>       "/gnu/store/sy5k16y2cgdk2f8dq0if8vxs48xlgnfh-racket-minimal-7.9"
>       (propagated-inputs ())
>       (search-paths ())
>       (properties))
>      ("gcc-toolchain"
>       "10.2.0"
>       "out"
>       "/gnu/store/pknm43xsza6nlc7bn27djip8fis92akd-gcc-toolchain-10.2.0"
>       (propagated-inputs ())
>       (search-paths
>         (("C_INCLUDE_PATH" ("include") ":" directory #f)
>          ("CPLUS_INCLUDE_PATH"
>           ("include/c++" "include")
>           ":"
>           directory
>           #f)
>          ("LIBRARY_PATH" ("lib" "lib64") ":" directory #f)
>          ("GUIX_LOCPATH" ("lib/locale") ":" directory #f)))
>       (properties))
>      ("chez-scheme"
>       "9.5.2"
>       "out"
>       "/gnu/store/abaa0mw2pss8ad0a7dazjwgrynim3yg5-chez-scheme-9.5.2"
>       (propagated-inputs ())
>       (search-paths
>         (("CHEZSCHEMELIBDIRS"
>           ("lib/csv9.5.2-site")
>           ":"
>           directory
>           #f)))
>       (properties))
>      ("rlwrap"
>       "0.43"
>       "out"
>       "/gnu/store/7q500p5srzg8hx56z63fr0myc2h7fzxh-rlwrap-0.43"
>       (propagated-inputs ())
>       (search-paths ())
>       (properties))
>      ("idris2"
>       "0.2.1-1.a5a5d89"
>       "out"
>       "/gnu/store/z0nx9yr279wsx6nba2ssidhi449h0m4z-idris2-0.2.1-1.a5a5d89"
>       (propagated-inputs ())
>       (search-paths ())
>       (properties)))))
> ```

Nevermind, my expectations for the profile's /etc/profile were
incorrect. Looks like I don't have to re-source it for new commands,
but I do for... well, whatever kind of dependency this was.