From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:58625) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j47C7-0007bq-Rj for guix-patches@gnu.org; Tue, 18 Feb 2020 13:02:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j47C6-0005op-LS for guix-patches@gnu.org; Tue, 18 Feb 2020 13:02:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:35289) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j47C6-0005oI-I6 for guix-patches@gnu.org; Tue, 18 Feb 2020 13:02:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1j47C6-0008NA-Fp for guix-patches@gnu.org; Tue, 18 Feb 2020 13:02:02 -0500 Subject: [bug#39588] gnu: Add mpich, scalapack-mpich, mumps-mpich, pt-scotch-mpich, python-mpi4py-mpich Resent-Message-ID: From: Maurice =?UTF-8?Q?Br=C3=A9mond?= References: <87blq2rclk.fsf@inria.fr> <87o8tx3z2q.fsf@gnu.org> Date: Tue, 18 Feb 2020 18:58:11 +0100 In-Reply-To: <87o8tx3z2q.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 17 Feb 2020 18:26:05 +0100") Message-ID: <87k14j6amk.fsf@inria.fr> MIME-Version: 1.0 Content-Type: text/plain List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Maurice =?UTF-8?Q?Br=C3=A9mond?= Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 39588@debbugs.gnu.org, zimoun Hi Ludovic & Simon! I agree, the *-mpich packages are not necessary and this asks the question of why those variants and why not others. Finally, I could keep them on my own channel for convenience. If I understand, in this case, the usage of --with-input is possible because implicit packages are very likely to not use mpi ? In guix packages, mpi input is usually declared as (("openmpi" . ,openmpi)) or (("mpi" . ,openmpi)) So two flags are necessary for the transformation. Doing this, I ran into problems with your patch... You can try with my original patch just a transformation of mumps-openmpi into mumps-mpich: guix time-machine --url=https://gitlab.inria.fr/bremond/guix.git \ --branch=add-mpich -- \ environment -K --pure --ad-hoc mumps-openmpi \ --with-input=mpi=mpich --with-input=openmpi=mpich -- This works for me, I can use a similar command to compile and execute a program which uses mumps and I can see with ldd that mpich is used. Then with the current mpich patch on savannah master: guix time-machine --commit=c70261bfb993cebc23cd80042de3f52a8b7932a4 -- \ environment -K --pure --ad-hoc mumps-openmpi \ --with-input=mpi=mpich --with-input=openmpi=mpich -- This fails on my machine for the pt-scotch check (there is the same error with scalapack check) Invalid error code (-2) (error ring index 127 invalid) INTERNAL ERROR: invalid error code fffffffe (Ring Index out of range) in MPID_nem_tcp_init:373 Fatal error in PMPI_Init: Other MPI error, error stack: MPIR_Init_thread(586)..............: MPID_Init(224).....................: channel initialization failed MPIDI_CH3_Init(105)................: MPID_nem_init(324).................: MPID_nem_tcp_init(175).............: MPID_nem_tcp_get_business_card(401): MPID_nem_tcp_init(373).............: gethostbyname failed, localhost (errno 0) If I go into the build directory and launch the check manually after sourcing the environment-variables file, it works... So it seems that this is related to guix and the guixbuild environment in the definition of the package. Maurice