quartus-prime-lite: fix loading of libudev.so.0

Loading without a path was broken by nixpkgs commit
e2d06c56951459ab3aebfb40c366ab635a021366. Fortunately we don't want
libudev.so.0 in modelsim now anyway which was the reason for loading by
name only, so we move it back to being 64-bit only and load it by
absolute path.

authored by

Thomas Watson and committed by
Bjørn Forsman
cdc306eb 10e860ea

+2 -3
+2 -3
pkgs/applications/editors/quartus-prime/default.nix
··· 28 28 xorg.libICE 29 29 xorg.libSM 30 30 zlib 31 + libudev0-shim 31 32 # qsys requirements 32 33 xorg.libXtst 33 34 xorg.libXi ··· 53 54 xorg.libX11 54 55 xorg.libXext 55 56 xorg.libXrender 56 - libudev0-shim 57 57 libxcrypt-legacy 58 58 ]; 59 59 ··· 95 95 # LD_PRELOAD fixes issues in the licensing system that cause memory corruption and crashes when 96 96 # starting most operations in many containerized environments, including WSL2, Docker, and LXC 97 97 # (a similiar fix involving LD_PRELOADing tcmalloc did not solve the issue in my situation) 98 - # we use the name so that quartus can load the 64 bit verson and modelsim can load the 32 bit version 99 98 # https://community.intel.com/t5/Intel-FPGA-Software-Installation/Running-Quartus-Prime-Standard-on-WSL-crashes-in-libudev-so/m-p/1189032 100 99 # 101 100 # But, as can be seen in the above resource, LD_PRELOADing libudev breaks ··· 103 102 # `(vlog-2163) Macro `<protected> is undefined.`), so only use LD_PRELOAD 104 103 # for non-ModelSim wrappers. 105 104 if [ "$NIXPKGS_IS_MODELSIM_WRAPPER" != 1 ]; then 106 - export LD_PRELOAD=''${LD_PRELOAD:+$LD_PRELOAD:}libudev.so.0 105 + export LD_PRELOAD=''${LD_PRELOAD:+$LD_PRELOAD:}/usr/lib/libudev.so.0 107 106 fi 108 107 ''; 109 108