Hi Sasha, For some reason OpenSM (and the required management libs) do not build correctly when I use manual autogen.sh, configure --prefix=/tmp/ez/usr ; make; make install mode.
It seems the build system is probably broken as it relies on fixed paths? Here is what I do, errors are included in this list: OK 1. git clone .... --------------- LIBIBCOMMON ------------------ OK 2. cd management/libibcommon; autogen.sh; ./configure --prefix=/tmp/ez/usr ; make ; make install --------------- LIBIBUMAD ------------------ OK 3. cd management/libibumad; autogen.sh; FAIL 4. ./configure --prefix=/tmp/ez/usr checking for sys_read_string in -libcommon... no configure: error: sys_read_string() not found. libibumad requires libibcommon. To overcome this I manually added the --disable-libcheck ./configure --prefix=/tmp/ez/usr --disable-libcheck I do not understand why after installing the common lib I still get this error? Isn't the search path should include the <prefix>/lib ??? FAIL 5. make Make fails as it does not find the infiniband/common.h To overcome this I manually added -I<prefix>/include .... make CFLAGS="-I/tmp/ez/usr/include" OK 6. make install --------------- OPENSM ------------------ OK 7. cd management/opensm; autogen.sh; FAIL 8. configure --prefix=/tmp/ez/usr checking for umad_init in -libumad... no configure: error: umad_init() not found. libosmvendor of type openib requires libibumad. configure: error: /bin/sh './configure' failed for libvendor To overcome this I manually added the --disable-libcheck ./configure --prefix=/tmp/ez/usr --disable-libcheck This problem is same as the above: lib path for linking should use the <prefix>/lib. FAIL 9. make Here again the include path is missing the <prefix>/include: ./../include/vendor/osm_vendor_ibumad.h:44:31: infiniband/common.h: No such file or directory ./../include/vendor/osm_vendor_ibumad.h:45:29: infiniband/umad.h: No such file or directory To overcome this I manually added -I<prefix>/include .... make CFLAGS="-I/tmp/ez/usr/include" But this is not enough as the linker fail: /usr/bin/ld: cannot find -libumad To overcome this I had to add -L<prefix>/lib .... make CFLAGS="-I/tmp/ez/usr/include" LDFLAGS="-L/tmp/ez/usr/lib -libumad -libcommon" OK 10. make install I hope the above issues could be fixed such that the installation would be simpler. Also I propose removing the un-needed extra levels of autotools inside OpenSM code as there is no need/reason to have it eb declared as 5 different projects resulting with "configure" time longer than the compile time. Thanks Eitan Eitan Zahavi Senior Engineering Director, Software Architect Mellanox Technologies LTD Tel:+972-4-9097208 Fax:+972-4-9593245 P.O. Box 586 Yokneam 20692 ISRAEL
_______________________________________________ general mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
