you are overriding "installopts" so only the last variable definition is being used. That's why your custom prefix is not applied. You should do it like this
installopts = 'PREFIX=%(installdir)s ETCDIR=%(installdir)s/etc/' On Fri, May 4, 2018 at 10:58 AM, Mr. Joseph John < jose...@rajagiritech.edu.in> wrote: > Hi, > > This is the eb file I used, following your instructions. Is there > something wrong with this? > > easyblock = 'ConfigureMake' > > name = "lm-sensors" > version = "3.4.0" > > homepage = "https://github.com/groeck/lm-sensors" > description = """The lm-sensors package, provides user-space support for > the > hardware monitoring drivers in Linux. """ > > buildopts = 'all' > > toolchain = {'name': 'dummy', 'version': ''} > > source_urls = ['https://github.com/groeck/lm-sensors.git'] > sources = [SOURCE_TAR_GZ] > checksums = ['e79c58404f8d792c153207a957b1ed59ed5df109b25482a39526106a4a4a > cbd3'] > > dependencies = [('GCC', '4.9.2'), ('Bison', '3.0.4'), ('flex', '2.6.0')] > > skipsteps = ['configure'] > installopts = 'PREFIX=%(installdir)s/' > installopts = 'ETCDIR=%(installdir)s/etc/' > > moduleclass = "lang" > > Yours sincerely, > > > > > *Joseph John * > > *Assistant Professor * > > *Department of Computer Science & Engineering * > *Rajagiri School of Engineering & Technology* > *https://josephjohnjj.github.io/ <https://josephjohnjj.github.io/>* > > On Fri, May 4, 2018 at 2:19 PM, Pablo Escobar Lopez < > pablo.escobarlo...@unibas.ch> wrote: > >> it looks like your not properly passing the install prefix to the >> makefile. you have an example in the easyconfig I pointed as reference >> >> https://github.com/easybuilders/easybuild-easyconfigs/blob/6 >> 8176cd383d3bc3569894bced5a3fda001d0e4fb/easybuild/easyconfig >> s/l/LuaJIT/LuaJIT-2.0.2-GCC-4.9.2.eb#L20 >> >> >> >> On Fri, May 4, 2018 at 10:35 AM, Mr. Joseph John < >> jose...@rajagiritech.edu.in> wrote: >> >>> Hi, >>> >>> I tried ETCDIR=%(installdir)s/etc/, but now I am getting error in >>> another directory (/usr/). Is there a way to solve this for all the >>> directories? >>> >>> == 2018-05-04 04:29:53,745 easyblock.py:870 DEBUG Creating the >>> installation directory /sNow/easybuild/centos/7.3.161 >>> 1/Broadwell/software/lm-sensors/3.4.0 (cleanup: True) >>> == 2018-05-04 04:29:53,745 easyblock.py:881 INFO Found old directory >>> /sNow/easybuild/centos/7.3.1611/Broadwell/software/lm-sensors/3.4.0 >>> == 2018-05-04 04:29:53,746 filetools.py:1203 INFO Path >>> /sNow/easybuild/centos/7.3.1611/Broadwell/software/lm-sensors/3.4.0 >>> successfully removed. >>> == 2018-05-04 04:29:53,746 easyblock.py:888 INFO Removed old directory >>> /sNow/easybuild/centos/7.3.1611/Broadwell/software/lm-sensors/3.4.0 >>> == 2018-05-04 04:29:53,746 filetools.py:1107 INFO Creating directory >>> /sNow/easybuild/centos/7.3.1611/Broadwell/software/lm-sensors/3.4.0 >>> (parents: True, set_gid: False, sticky: False) >>> == 2018-05-04 04:29:53,747 easyblock.py:2452 INFO Running method >>> install_step part of step install >>> == 2018-05-04 04:29:53,747 run.py:163 DEBUG run_cmd: running cmd make >>> install >>> ETCDIR=/sNow/easybuild/centos/7.3.1611/Broadwell/software/lm-sensors/3.4.0/etc/ >>> (in /sNow/easybuild/centos/7.3.1611/Broadwell/build/lmsensors/3. >>> 4.0/dummy-/lm-sensors-master) >>> == 2018-05-04 04:29:53,747 run.py:183 INFO running cmd: make install >>> ETCDIR=/sNow/easybuild/centos/7.3.1611/Broadwell/software/lm >>> -sensors/3.4.0/etc/ >>> == 2018-05-04 04:29:53,825 build_log.py:158 ERROR EasyBuild crashed with >>> an error (at easybuild/centos/7.3.1611/Broa >>> dwell/software/EasyBuild/3.5.0/lib/python2.7/site-packages/v >>> sc_base-2.5.8-py2.7.egg/vsc/utils/exceptions.py:124 in __init__): cmd " >>> make install ETCDIR=/sNow/easybuild/centos/ >>> 7.3.1611/Broadwell/software/lm-sensors/3.4.0/etc/" exited with exit >>> code 2 and output: >>> mkdir -p /usr/local/lib /usr/local/include/sensors /usr/local/man/man3 >>> /usr/local/man/man5 >>> mkdir: cannot create directory '/usr/local/include/sensors': Read-only >>> file system >>> mkdir: cannot create directory '/usr/local/man': Read-only file system >>> mkdir: cannot create directory '/usr/local/man': Read-only file system >>> make: *** [install-lib] Error 1 >>> (at easybuild/centos/7.3.1611/Broadwell/software/EasyBuild/3.5.0 >>> /lib/python2.7/site-packages/easybuild_framework-3.5.0-py2.7 >>> .egg/easybuild/tools/run.py:481 in parse_cmd_output) >>> == 2018-05-04 04:29:53,825 easyblock.py:2685 WARNING build failed (first >>> 300 chars): cmd " make install ETCDIR=/sNow/easybuild/centos/ >>> 7.3.1611/Broadwell/software/lm-sensors/3.4.0/etc/" exited with exit >>> code 2 and output: >>> mkdir -p /usr/local/lib /usr/local/include/sensors /usr/local/man/man3 >>> /usr/local/man/man5 >>> mkdir: cannot create directory '/usr/local/include/sensors': Read-only fi >>> == 2018-05-04 04:29:53,825 easyblock.py:279 INFO Closing log for >>> application name lm-sensors version 3.4.0 >>> >>> Yours sincerely, >>> >>> >>> >>> *Joseph John * >>> >>> *Assistant Professor * >>> >>> *Department of Computer Science & Engineering * >>> *Rajagiri School of Engineering & Technology* >>> *https://josephjohnjj.github.io/ <https://josephjohnjj.github.io/>* >>> >>> On Wed, May 2, 2018 at 2:54 PM, Mikael Öhman <micket...@gmail.com> >>> wrote: >>> >>>> Hi Joseph, >>>> >>>> You should (probably?) avoid system paths. >>>> I took a peak in the makefiles and I think another installopts is >>>> suitable here: >>>> >>>> ETCDIR=%(installdir)s/etc/ >>>> >>>> (looks like this path gets hardcoded into the binaries) >>>> >>>> Best regards, Mikael >>>> >>>> On Wed, May 2, 2018 at 7:33 AM, Mr. Joseph John < >>>> jose...@rajagiritech.edu.in> wrote: >>>> >>>>> Hi, >>>>> >>>>> I tried to install using the following eb file : >>>>> >>>>> easyblock = 'ConfigureMake' >>>>> >>>>> name = "lm-sensors" >>>>> version = "3.4.0" >>>>> >>>>> homepage = "https://github.com/groeck/lm-sensors" >>>>> description = """The lm-sensors package, provides user-space support >>>>> for the >>>>> hardware monitoring drivers in Linux. """ >>>>> >>>>> buildopts = 'all' >>>>> >>>>> toolchain = {'name': 'dummy', 'version': ''} >>>>> >>>>> source_urls = ['https://github.com/groeck/lm-sensors.git'] >>>>> sources = [SOURCE_TAR_GZ] >>>>> checksums = ['e79c58404f8d792c153207a957b1 >>>>> ed59ed5df109b25482a39526106a4a4acbd3'] >>>>> >>>>> dependencies = [('GCC', '4.9.2'), ('Bison', '3.0.4'), ('flex', >>>>> '2.6.0')] >>>>> >>>>> skipsteps = ['configure'] >>>>> installopts = 'PREFIX=%(installdir)s' >>>>> >>>>> moduleclass = "lang" >>>>> >>>>> >>>>> But i keep getting this error: >>>>> >>>>> mkdir -p /etc /etc/sensors.d >>>>> mkdir: cannot create directory '/etc/sensors.d': Read-only file system >>>>> make: *** [install-etc] Error 1 >>>>> (at easybuild/centos/7.3.1611/Broadwell/software/EasyBuild/3.5.0 >>>>> /lib/python2.7/site-packages/easybuild_framework-3.5.0-py2.7 >>>>> .egg/easybuild/tools/run.py:481 in parse_cmd_output) >>>>> == 2018-05-02 01:21:36,082 easyblock.py:2685 WARNING build failed >>>>> (first 300 chars): cmd " make install PREFIX=/sNow/easybuild/centos/ >>>>> 7.3.1611/Broadwell/software/lm-sensors/3.4.0" exited with exit code 2 >>>>> and output: >>>>> mkdir -p >>>>> /sNow/easybuild/centos/7.3.1611/Broadwell/software/lm-sensors/3.4.0/lib >>>>> /sNow/easybuild/centos/7.3.1611/Broadwell/software/lm-sensors/3.4.0/include/sensors >>>>> /sNo >>>>> == 2018-05-02 01:21:36,082 easyblock.py:279 INFO Closing log for >>>>> application name lm-sensors version 3.4.0 >>>>> >>>>> Is there anyway to set these permissions through easybuild or should I >>>>> change the permission separately? >>>>> >>>>> Yours sincerely, >>>>> >>>>> >>>>> >>>>> *Joseph John * >>>>> >>>>> *Assistant Professor * >>>>> >>>>> *Department of Computer Science & Engineering * >>>>> *Rajagiri School of Engineering & Technology* >>>>> *https://josephjohnjj.github.io/ <https://josephjohnjj.github.io/>* >>>>> >>>>> On Sun, Mar 25, 2018 at 1:10 AM, Pablo Escobar Lopez < >>>>> pablo.escobarlo...@unibas.ch> wrote: >>>>> >>>>>> Hi Joseph, >>>>>> >>>>>> The installation procedure is "make all" and "make install" so it >>>>>> shouldn't be difficult to install it using easybuild. Providing the >>>>>> dependencies with easybuild shouldn't be difficult neither. >>>>>> https://github.com/groeck/lm-sensors/blob/master/INSTALL >>>>>> >>>>>> You can use this easyconfig as reference >>>>>> https://github.com/easybuilders/easybuild-easyconfigs/blob/6 >>>>>> 8176cd383d3bc3569894bced5a3fda001d0e4fb/easybuild/easyconfig >>>>>> s/l/LuaJIT/LuaJIT-2.0.2-GCC-4.9.2.eb >>>>>> >>>>>> I think the only missing detail in that easyconfig is >>>>>> buildopts = 'all' >>>>>> >>>>>> You still need proper support from your kernel but I guess this >>>>>> should be provided by most modern distributions out of the box. >>>>>> >>>>>> regards, >>>>>> Pablo. >>>>>> >>>>>> >>>>>> On Sat, Mar 24, 2018 at 6:52 AM, Mr. Joseph John < >>>>>> jose...@rajagiritech.edu.in> wrote: >>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> I there anyay to install lm-sensors using easybuild? >>>>>>> >>>>>>> yours sincerely, >>>>>>> >>>>>>> >>>>>>> *Joseph John * >>>>>>> >>>>>>> *Assistant Professor * >>>>>>> >>>>>>> *Department of Computer Science & Engineering * >>>>>>> *Rajagiri School of Engineering & Technology* >>>>>>> *https://josephjohnjj.github.io/ <https://josephjohnjj.github.io/>* >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Pablo Escobar López >>>>>> Linux/HPC systems engineer >>>>>> sciCORE, University of Basel >>>>>> SIB Swiss Institute of Bioinformatics >>>>>> http://scicore.unibas.ch >>>>>> >>>>> >>>>> >>>> >>> >> >> >> -- >> Pablo Escobar López >> Linux/HPC systems engineer >> sciCORE, University of Basel >> SIB Swiss Institute of Bioinformatics >> > > -- Pablo Escobar López Linux/HPC systems engineer sciCORE, University of Basel SIB Swiss Institute of Bioinformatics