Skip to contentSkip to conversation

rdma-core make install failing

DISCUSSION ira.weiny 2 participants 4 messages Feb 23, 2017 – Feb 24, 2017 3 messages not in the archive InfiniBand

lore
Share & tools
lore

ira.weiny

author
#0 lore raw

I'm not sure what I'm doing wrong but make install seems to be deleting a library and then complaining that it can't find it for installation... :-/

After running build.sh I ran make install and get this error:

-- Up-to-date:
/nfs/site/home/iweiny/rdma-core/build/etc/libibverbs.d/cxgb3.driver CMake Error at providers/cxgb3/cmake_install.cmake:62 (FILE):
file INSTALL cannot find

    "/nfs/site/home/iweiny/rdma-core/build/lib/libcxgb3-rdmav2.so".

Call Stack (most recent call first):
cmake_install.cmake:47 (INCLUDE)

make: *** [install] Error 1

While trying to figure out why cxgb3 was not building I noticed that actually build.sh _is_ building the library. And more importantly rebuilds it after running make install as per below...

17:51:49 > ./build.sh
-- Missing Optional Items:

--  C11 stdatomic.h NOT available (old compiler)
--  netlink/route/link.h and net/if.h NOT co-includable (old headers)
--  rdma/rdma_netlink.h NOT found (old system kernel headers)
--  rdma/rdma_user_cm.h NOT found (old system kernel headers)
--  rdma/rdma_user_rxe.h NOT found (old system kernel headers)
--  rdma/vmw_pvrdma-abi.h NOT found (old system kernel headers)
--  -Wmissing-field-initializers does NOT work
--  -Wredundant-decls does NOT work
-- Configuring done
-- Generating done
-- Build files have been written to: /nfs/site/home/iweiny/rdma-core/build
[  1%] Built target ccan
[  3%] Built target ccan_pic
[  6%] Built target ibumad

[ 14%] Built target ibverbs
[ 18%] Built target rdmacm
[ 20%] Built target rspreload
[ 21%] Built target ibcm
Linking C shared module ../../lib/libcxgb3-rdmav2.so [ 24%] Built target cxgb3-rdmav2
[ 27%] Built target cxgb4-rdmav2
...

So checking for it... yea there it is...

17:51:54 > ll build/lib/*cx*
-rwxr-x--- 1 iweiny intelall 138157 Feb 23 17:51 build/lib/libcxgb3-rdmav2.so* -rwxr-x--- 1 iweiny intelall 184172 Feb 23 16:22 build/lib/libcxgb4-rdmav2.so*

Then I run make install again...

It fails as above and I look for the library and it is gone...

17:54:19 > ll lib/*cx*
-rwxr-x--- 1 iweiny intelall 184172 Feb 23 16:22 lib/libcxgb4-rdmav2.so*

What is going on here?

I'm really not familiar enough with cmake to see what majic softlink vs real library installation is supposed to be going on here.

Ira

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): 20170223230008.GA546-W4f6Xiosr+yv7QzWx2u06xL4W9x8LtSr@public.gmane.org

#2 lore raw
Quoted 4 lines · ira.weiny

I'm not sure what I'm doing wrong but make install seems to be deleting a library and then complaining that it can't find it for installation... :-/

After running build.sh I ran make install and get this error:

Oh.. you can't 'make install' when using build.sh. I guess we should have a more explicit error message for this case.

build.sh now uses -DIN_PLACE=1 which arranges for everything to run smoothly without being installed. Just run build/bin/blat or do LD_LIBRARY_PATH=pwd/build/bin to use the new library with something out of tree. There is no longer a big reason for developers to 'make install' anymore.

Part of the trick that happens to make IN_PLACE work is that the install path is set to /nfs/site/home/iweiny/rdma-core/build/lib/ which means 'make install' tries to overwrite the built output and just generally makes a mess.

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): 20170223231247.GB18086-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org

author
#4 lore raw

Ok I see...

The issue is that there is a bug in libibmad/infiniband-diags when building against the changes you made to the libibumad headers and using "make install" seemed easier than trying to set up building against my home dir...

I'll try to build against the headers in build.

Ira

Quoted 22 lines

-----Original Message-----
From: Jason Gunthorpe [mailto:jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org]
Sent: Thursday, February 23, 2017 3:13 PM
To: Weiny, Ira <[email protected]>
Cc: [email protected]
Subject: Re: rdma-core make install failing

Quoted 5 lines · ira.weiny

I'm not sure what I'm doing wrong but make install seems to be deleting a library and then complaining that it can't find it for installation... :-/

After running build.sh I ran make install and get this error:

Oh.. you can't 'make install' when using build.sh. I guess we should have a more explicit error message for this case.

build.sh now uses -DIN_PLACE=1 which arranges for everything to run smoothly without being installed. Just run build/bin/blat or do LD_LIBRARY_PATH=pwd/build/bin to use the new library with something out of tree. There is no longer a big reason for developers to 'make install' anymore.

Quoted 6 lines

Part of the trick that happens to make IN_PLACE work is that the install path is set to /nfs/site/home/iweiny/rdma-core/build/lib/
which means 'make install' tries to overwrite the built output and just generally makes a mess.

Jason

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): 2807E5FD2F6FDA4886F6618EAC48510E3C6513E7-8k97q/[email protected]

#6 lore raw
Quoted 6 lines · Ira

Ok I see...

The issue is that there is a bug in libibmad/infiniband-diags when building against the changes you made to the libibumad headers and using "make install" seemed easier than trying to set up building against my home dir...

CPPFLAGS=-I.../rdma-core/build/include/ LDLFLAGS=-L.../rdma-core/build/lib/ ./configure

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html