By the way, make check runs through for me if I add a second parameter to 
--with-max-am (--with-max-am=%d,%d). I wonder how that works for cp2k, because 
they don't have that (took the hint from the compile script in libint).

Greetings
André

----- Am 29. Mai 2020 um 18:05 schrieb Andre Gemuend 
[email protected]:

> Hi Kenneth,
> 
> in fact, I think I misunderstood the prebuilt packages and the build process.
> 
> I seems we first need to build the libint compiler, then the export library,
> then build that. The libint configure that is available after autogen.sh
> doesn't even know "--enable-fortran". Only the export package, which is also
> what is provided as "libint-cp2k". I'm currently looking into it.
> 
> Greetings
> André
> 
> ----- Am 29. Mai 2020 um 14:02 schrieb Kenneth Hoste [email protected]:
> 
>> On 29/05/2020 12:37, André Gemünd wrote:
>>> Hi Kenneth,
>>>
>>> I'm currently trying with the following and its building since roughly 2 
>>> hours,
>>> on a single core though although it was called with -j 32.
>> 
>> I'm seeing the same thing, I'm not sure you can make it build in parallel...
>> 
>> I also tried with lmax=4, and that finished building after ~45min only
>> to fail in "make check" with:
>> 
>> In file included from ../../include/libint2/engine.h(988), from
>> ../../include/libint2/cxxapi.h(41),
>>                  from ../../include/libint2.hpp(24), from test.cc(24):
>> ../../include/libint2/./engine.impl.h(627): error: identifier
>> "LIBINT2_MAX_AM_default1" is undefined BOOST_PP_LIST_FOR_EACH_PRODUCT(
>>     ^
>> 
>> compilation aborted for test.cc (code 2)
>> make[1]: *** [test.o] Error 2
>> 
>> 
>> The generated configure command was using this:
>> 
>> --enable-eri=1 --enable-eri2=1 --enable-eri3=1 --with-max-am=4
>> --with-eri-max-am=4,3 --with-eri2-max-am=6,5 --with-eri3-max-am=6,5
>> --enable-shared  --with-pic
>> 
>> 
>> Should be OK, no?
>> 
>> 
>>>
>>> easyblock = 'ConfigureMake'
>>> name = 'Libint'
>>> version = '2.6.0'
>>>
>>> homepage = 'https://github.com/evaleev/libint'
>>> description = """Libint library is used to evaluate the traditional 
>>> (electron
>>> repulsion) and certain novel two-body
>>>   matrix elements (integrals) over Cartesian Gaussian functions used in 
>>> modern
>>>   atomic and molecular theory."""
>>>
>>> toolchain = {'name': 'foss', 'version': '2020a'}
>>> toolchainopts = {'pic': True, 'cstd': 'c++11'}
>>>
>>> source_urls = ['https://github.com/evaleev/libint/archive']
>>> sources = ['v%(version)s.tar.gz']
>>> checksums = 
>>> ['4ae47e8f0b5632c3d2a956469a7920896708e9f0e396ec10071b8181e4c8d9fa']
>>>
>>> builddependencies = [
>>>      ('Autotools', '20180311'),
>>>      ('GMP', '6.2.0'),
>>>      ('Boost', '1.72.0'),
>>>      ('Eigen', '3.3.7', '', True),
>>>      ('MPFR', '4.0.2'),
>>>      ('Python', '2.7.18'),
>>> ]
>>>
>>> preconfigopts = './autogen.sh && '
>>>
>>> _lmax = 7
>>>
>>> # configure opts motivated by cp2k:
>>> # https://github.com/cp2k/libint-cp2k/blob/master/Jenkinsfile
>>> configopts = '--enable-fortran --enable-eri=1 --enable-eri2=1 
>>> --enable-eri3=1 \
>>>                 --with-max-am=%d \
>>>                 --with-eri-max-am=%d,%d \
>>>                 --with-eri2-max-am=%d,%d \
>>>                 --with-eri3-max-am=%d,%d \
>>>                 --with-opt-am=3 ' % (_lmax, _lmax, _lmax-1, _lmax+2, 
>>> _lmax+1, _lmax+2, _lmax+1)
>>>
>>> moduleclass = 'chem'
>>>
>>> Greetings
>>> André
>>>
>>> ----- Am 29. Mai 2020 um 11:35 schrieb Kenneth Hoste [email protected]:
>>>
>>>> On 29/05/2020 10:46, André Gemünd wrote:
>>>>> Hi Kenneth,
>>>>>
>>>>> thanks for that. I'm at a similar point but using foss-2020a. I also 
>>>>> wanted to
>>>>> do Intel afterwards, but I thought I'd start with foss because I had some 
>>>>> very
>>>>> weird errors with CP2k and Intel in the past. I'm currently looking more
>>>>> closely at Libint (https://github.com/evaleev/libint/wiki)
>>>>>
>>>>> According to that and the buildflags the cp2k people use, we should be 
>>>>> building
>>>>> Libint with
>>>>>
>>>>> --enable-eri=1 --enable-eri2=1 --enable-eri3=1 \
>>>>>           --with-max-am=${LMAX} \
>>>>>           --with-eri-max-am=${LMAX},$((LMAX-1)) \
>>>>>           --with-eri2-max-am=$((LMAX+2)),$((LMAX+1)) \
>>>>>           --with-eri3-max-am=$((LMAX+2)),$((LMAX+1)) \
>>>>>           --with-opt-am=3
>>>>>
>>>>> I don't see the easyblock doing that, or did I miss it?
>>>> That should be done in the Libint easyconfig, indeed, I'll look into
>>>> that as well.
>>>>
>>>>> I'm also wondering if it might make sense to put the lmax option in the 
>>>>> name of
>>>>> the package to be a bit more generic? On the other hand, increasing lmax
>>>>> apparently only increases buildtime and library size (according to the 
>>>>> README
>>>>> here: https://github.com/cp2k/libint-cp2k). The cp2k guys themselves offer
>>>>> prebuilt binaries for up to lmax 7, so maybe that should be our goto as 
>>>>> well?
>>>>> Enabling fortran is not a disadvantage for any other use, so that would 
>>>>> be make
>>>>> the library as generic as possible I guess?
>>>> I think it indeed makes perfect sense to "tag" Libint with versionsuffix
>>>> = '-lmax-7', and not hold back there, unless the build blows up to
>>>> taking hours and consuming GBs of disk space in the installation
>>>> directory (and even then...).
>>>>
>>>>> Also, it doesn't really matter, but is Python really needed as a 
>>>>> builddep? I
>>>>> guess I'll try it out.
>>>> It was added for a reason probably, but I can double check on that...
>>>>
>>>> Could be to avoid relying on the system Python (which could also be
>>>> Python 3).
>>>>
>>>>
>>>> regards,
>>>>
>>>> Kenneth
>>>>
>>>>> Cheers
>>>>> André
>>>>>
>>>>> ----- Am 28. Mai 2020 um 22:13 schrieb Kenneth Hoste 
>>>>> [email protected]:
>>>>>
>>>>>> We have requests for CP2K 7.1, so it's on my TODO list.
>>>>>>
>>>>>> I didn't get very far yet, but I'll share what I have:
>>>>>>
>>>>>> * changes to CP2K easyblock:
>>>>>> https://github.com/easybuilders/easybuild-easyblocks/pull/2069
>>>>>>
>>>>>> * easyconfigs for CP2K 7.1 + deps (doesn't work yet):
>>>>>> https://github.com/easybuilders/easybuild-easyconfigs/pull/10714
>>>>>>
>>>>>> To test:
>>>>>>
>>>>>> eb --include-easyblocks-from-pr 2069 --from-pr 10714 --robot
>>>>>>
>>>>>>
>>>>>> Any help is welcome :)
>>>>>>
>>>>>>
>>>>>> regards,
>>>>>>
>>>>>> Kenneth
>>>>>>
>>>>>> On 28/05/2020 15:55, André Gemünd wrote:
>>>>>>> Dear Loris,
>>>>>>>
>>>>>>> I just found this message from January because I was looking for CP2k 
>>>>>>> 7.1 as
>>>>>>> well. Did you make any progress with that?
>>>>>>>
>>>>>>> Best Greetings
>>>>>>> André
>>>>>>>
>>>>>>> ----- Am 27. Jan 2020 um 15:51 schrieb Loris Bennett 
>>>>>>> [email protected]:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I was wondering whether any work is going on regarding an EB/EC for 
>>>>>>>> CP2L
>>>>>>>> 7.1.  The directory structure seems to have changed such that there is
>>>>>>>> no longer a directory 'makefiles' in the top-level directory, so this
>>>>>>>> bit of the EC
>>>>>>>>
>>>>>>>>     def build_step(self):
>>>>>>>>           """Start the actual build
>>>>>>>>           - go into makefiles dir
>>>>>>>>           - patch Makefile
>>>>>>>>           -build_and_install
>>>>>>>>           """
>>>>>>>>
>>>>>>>>           makefiles = os.path.join(self.cfg['start_dir'], 'makefiles')
>>>>>>>>           change_dir(makefiles)
>>>>>>>>
>>>>>>>> fails.
>>>>>>>>
>>>>>>>> Cheers,
>>>>>>>>
>>>>>>>> Loris
>>>>>>>>
>>>>>>>> --
>>>>>>>> Dr. Loris Bennett (Mr.)
>> >>>>>> ZEDAT, Freie Universität Berlin         Email 
>> >>>>>> [email protected]
> 
> --
> Dipl.-Inf. André Gemünd, Leiter IT / Head of IT
> Fraunhofer-Institute for Algorithms and Scientific Computing
> [email protected]
> Tel: +49 2241 14-2193
> /C=DE/O=Fraunhofer/OU=SCAI/OU=People/CN=Andre Gemuend

-- 
Dipl.-Inf. André Gemünd, Leiter IT / Head of IT
Fraunhofer-Institute for Algorithms and Scientific Computing
[email protected]
Tel: +49 2241 14-2193
/C=DE/O=Fraunhofer/OU=SCAI/OU=People/CN=Andre Gemuend

Reply via email to