help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

no C_INCLUDE_PATH env variable defined : I can't compile C applications


From: Mohamed Amine LEGHERABA
Subject: no C_INCLUDE_PATH env variable defined : I can't compile C applications
Date: Sat, 22 Oct 2022 11:07:55 +0000

Hello,
When I do "echo $C_INCLUDE_PATH" in my bash prompt (either my account or root), 
I have nothing.

When I run a custom guix shell (with gcc-toolchain) and I run "echo 
$C_INCLUDE_PATH",
I have "/gnu/store/1p21dbv408cb45zcc15v7wj0q7x99rz2-profile/include"

Without this env variable, C programs can't use "linux/limits.h" or other 
kernel related libraries. Any idea how to solve this problem ?

This is my config :

;; This is an operating system configuration template
;; for a "desktop" setup without full-blown desktop
;; environments.

(use-modules
(gnu)
(gnu system nss)
(ice-9 popen)
(ice-9 rdelim)
;; non guix
;(mohamed packages firefox)
(nongnu packages linux)
(nongnu packages mozilla)
(nongnu packages firmware)
(nongnu system linux-initrd))
(use-service-modules
desktop
;authentification
cups
docker
nix
networking
ssh
xorg
sddm)
(use-package-modules
bootloaders
certs
emacs
emacs-xyz
ratpoison
suckless
wm
xorg
curl
wget
version-control
compression
gnuzilla
terminals
shells
gnome
lxqt
xfce
freedesktop
disk
ssh
cups
virtualization
docker
package-management
containers
bash
)

(define (get-uuid)
(let*
(
(port (open-input-pipe "blkid -s UUID -o value /dev/nvme0n1p1"))
(str (read-line port)))
(close-pipe port)
str))

(define %xorg-libinput-config
"Section \"InputClass\"
Identifier \"libinput touchpad catchall\"
Driver \"libinput\"
MatchDriver \"libinput\"
MatchName \"PIXA3854:00 093A:0274 Touchpad\"
MatchUdevType \"touchpad\"
MatchDMIModalias \"dmi:*svnFramework:pnLaptop:*\"
AttrEventCodeDisable \"BTN_RIGHT\"
MatchDevicePath \"/dev/input/event*\"
MatchIsTouchpad \"on\"
Option \"Tapping\" \"on\"
Option \"TappingDrag\" \"on\"
Option \"DisableWhileTyping\" \"on\"
Option \"MiddleEmulation\" \"on\"
Option \"ScrollMethod\" \"twofinger\"
Option \"NaturalScrolling\" \"on\"
Option \"ClickMethod\" \"clickfinger\"
Option \"TappingButtonMap\" \"lrm\"
EndSection")

(operating-system
(kernel linux)
(initrd microcode-initrd)
;; include iwlwifi
(firmware (list linux-firmware))
(host-name "framework")
(timezone "Europe/Paris")
(locale "fr_FR.utf8")
(keyboard-layout (keyboard-layout "fr" "azerty"))
;(keyboard-layout "fr")
;; Use the UEFI variant of GRUB with the EFI System
;; Partition mounted on /boot/efi.
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(targets '("/boot/efi"))
(keyboard-layout keyboard-layout)))

;; Assume the target root file system is labelled "my-root" and home system is 
labeled "my-home"
(file-systems (append
(list (file-system
(device (file-system-label "my-root"))
(mount-point "/")
(type "ext4"))
(file-system
(device (file-system-label "my-home"))
(mount-point "/home")
(type "ext4"))
(file-system
;(device (uuid "AAAA-AAAA" 'fat))
(device (uuid (get-uuid) 'fat))
(mount-point "/boot/efi")
(type "vfat")))
%base-file-systems))
(swap-devices
(list
(swap-space
(target (file-system-label "swap")))))

(groups ;(cons (user-group (name "docker"))
%base-groups)

(users (cons (user-account
(name "mohamed")
(comment "main account")
(group "users")
;(shell (file-append zsh "/bin/zsh"))
(home-directory "/home/mohamed")
(supplementary-groups '("wheel" "netdev" "input" "tty" "docker"
"audio" "video")))
%base-user-accounts))

;; Add a bunch of window managers; we can choose one at
;; the log-in screen with F1.
(packages (append (list
;; devops
openssh
;; window managers
gnome gnome-tweaks ;sway i3-wm i3status dmenu
;; terminal emulator
xterm kitty
;; shells
;;zsh
bash
git
unzip
zip
icecat firefox
xkeyboard-config
dosfstools
;; input for touchpad
libinput xf86-input-libinput
;xf86-input-synaptics
;; getting web pages
curl wget
;; for HTTPS access
nss-certs
;; telegram client
;telegram-desktop
cups
lxd
docker
nix
qemu
;podman ; not working
)
%base-packages))

;; Use the "desktop" services, which include the X11
;; log-in service, networking with NetworkManager, and more.
(services
(cons*
(set-xorg-configuration
(xorg-configuration
(keyboard-layout keyboard-layout)))
(service docker-service-type)
(service nix-service-type)
(service gnome-desktop-service-type)
(bluetooth-service #:auto-enable? #f)
(service cups-service-type
(cups-configuration
(web-interface? #t)
(extensions
(list cups-filters epson-inkjet-printer-escpr hplip-minimal brlaser))))

(modify-services %desktop-services
;; enable substitute for nonguix - should help with large packages, i.e. linux, 
firefox
(guix-service-type config =>
(guix-configuration
(inherit config)
(substitute-urls
(append
(list "https://substitutes.nonguix.org";)
%default-substitute-urls))
(authorized-keys
(append (list (plain-file "non-guix.pub"
"(public-key
(ecc
(curve Ed25519)
(q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)))"))
%default-authorized-guix-keys))))
(gdm-service-type config =>
(gdm-configuration
(inherit config)
(wayland? #f)
(xorg-configuration
(xorg-configuration
(keyboard-layout keyboard-layout)))
; (extra-config (list %xorg-libinput-config))))
; (local-file "40-libinput.conf"))))
; (extra-config
; (list
; "Section 'InputClass'
; Identifier 'Touchpads'
; Driver 'libinput'
; Option 'Tapping' 'on'
; Option 'NaturalScrolling' 'true'
; EndSection"))))
(auto-login? #t)
(default-user "mohamed"))))))

;; Allow resolution of '.local' host names with mDNS.
(name-service-switch %mdns-host-lookup-nss))

###############

And this is my home.scm :

(use-modules
(guix gexp)
(gnu home)
(gnu home services)
(gnu home services shells)
(gnu home services ssh)
(gnu services)
(gnu packages)
(gnu packages tex)
(gnu packages base)
(gnu packages admin)
(gnu packages shells)
(gnu packages telegram)
(gnu packages package-management)
(gnu packages freedesktop)
(gnu packages libreoffice)
(gnu packages video)
(gnu packages gnome)
(gnu packages ssh)
(gnu packages rust)
(gnu packages crates-io)
(gnu packages python)
(gnu packages node)
(gnu packages irc)
(gnu packages gimp)
(gnu packages disk)
(gnu packages pdf)
(gnu packages commencement)
(gnu packages imagemagick)
(gnu packages cmake)
(gnu packages llvm)
(gnu packages linux)
(nongnu packages messaging)
(mohamed packages crates)
)

(define %home-files
`(
(".gitconfig" ,(local-file "gitconfig"))
;(".config/nix/nix.conf" ,(local-file "nix.conf"))
)
)

(define %zsh-file
`(
,(local-file "zshrc")
)
)

(home-environment
(packages
(list
vlc
shotcut
openshot
texlive-base
gnu-make
openssh
htop
libreoffice
flatpak
gedit
;zsh
rust
rust-cargo-0.65 ;; from custom channel
python
node
weechat ; irc chat
gimp ; pictures editing
obs ; recording
testdisk ; repair disk
xournalpp ; edit pdf
poppler ; combine pdf
imagemagick ; pdf to jpeg
zoom ;; visio conference
gcc-toolchain ;; gcc
linux-libre-headers
;clang-toolchain
cmake ;; cmake
))
(services
(list
(service home-files-service-type %home-files)
;(service home-zsh-service-type
; (home-zsh-configuration
; (zshrc %zsh-file))) (service home-openssh-service-type))))

#############

Thanks,
Mohamed Amine LEGHERABA

reply via email to

[Prev in Thread] Current Thread [Next in Thread]