在 2017/11/11 5:18, Jason Gunthorpe 写道: > On Wed, Nov 08, 2017 at 10:05:22AM +0800, oulijun wrote: >> 在 2017/11/2 23:06, Jason Gunthorpe 写道: >>> On Thu, Nov 02, 2017 at 02:03:18PM +0800, oulijun wrote: >>>>> mkdr build-sparse >>>>> cd build-sparse >>>>> CC=cgcc cmake -GNinja .. >>>>> ninja >>>>> >>>> I have run the sparse successful and don't understand the result. >>> >>> Something is wrong with your local environment: >>> >>>> [10/190] Building C object util/CMakeFiles/rdma_util_pic.dir/mmio.c.o >>>> /usr/include/linux/types.h:4:11: error: unable to open 'asm/types.h' >>> >>> Those headers should exist, they usually come with glibc, eg on Debian >>> it comes from here: >>> >>> linux-libc-dev:amd64: /usr/include/x86_64-linux-gnu/asm/types.h >>> >>> Jason >>> >>> >> Hi, Jason >> I have trying to run sparse according to your way and it is always fail in >> the last two days. >> the print log is >> /usr/include/linux/types.h:4:11: error: unable to open 'asm/types.h' >> >> I do some steps for attempt resolving it and it is fail. >> 1). I am trying to change the files' limit >> chmod 757 /usr/include/x86_64-linux-gnu/asm/* >> 2). I am also trying to run the cmd >> sudo CC=cgcc cmake -GNinja .. >> sudo ninja >> 3). And I am trying to do others for asking my colleague. >> >> Can you give some good advice for me? > > I can't think what could be wrong with your setup, I assume something > bad happened to your OS. Try re-installing the packages, make sure > 'gcc' points to something that came with ubuntu, look at strace from > cgcc to understand why it is failing.. > > Jason > -- Hi, Jason I have re-installed the following packages: 1. apt-get install build-essential cmake gcc libudev-dev libnl-3-dev libnl-route-3-dev ninja-build pkg-config valgrind 2. apt-get install sparse sure, I can sure that it is installed successfully. As a result, I alos re-run the cmds: mkdr build-sparse cd build-sparse CC=cgcc cmake -GNinja .. The print log is: ubuntu@a8d50a1f660b:~/rdma-v16/rdma-core/build-sparse$ CC=cgcc cmake -GNinja .. -- The C compiler identification is GNU 4.8.4 -- Check for working C compiler using: Ninja -- Check for working C compiler using: Ninja -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Found PkgConfig: /usr/bin/pkg-config (found version "0.26") -- Performing Test HAVE_NO_SPARSE -- Performing Test HAVE_NO_SPARSE - Failed Traceback (most recent call last): File "/home/ubuntu/rdma-v16/rdma-core/buildlib/gen-sparse.py", line 137, in <module> Patch from '/home/ubuntu/rdma-v16/rdma-core/buildlib/sparse-include/23/sys-socket.h.diff' failed Unable to apply any patch to 'sys/socket.h', tries 1 Patch from '/home/ubuntu/rdma-v16/rdma-core/buildlib/sparse-include/25/netinet-in.h.diff' failed Patch from '/home/ubuntu/rdma-v16/rdma-core/buildlib/sparse-include/23/netinet-in.h.diff' failed raise ValueError("Patch applications failed"); ValueError: Patch applications failed CMake Error at buildlib/RDMA_Sparse.cmake:27 (message): glibc header file patching for sparse failed. Review include/*.rej and fix the rejects, then do /home/ubuntu/rdma-v16/rdma-core/buildlib/gen-sparse.py -out /home/ubuntu/rdma-v16/rdma-core/build-sparse/include/ --src /home/ubuntu/rdma-v16/rdma-core/ --save Call Stack (most recent call first): CMakeLists.txt:148 (RDMA_CheckSparse) -- Configuring incomplete, errors occurred! See also "/home/ubuntu/rdma-v16/rdma-core/build-sparse/CMakeFiles/CMakeOutput.log". See also "/home/ubuntu/rdma-v16/rdma-core/build-sparse/CMakeFiles/CMakeError.log". Maybe do I some mistakes? thanks Lijun Ou > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > > -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html