libgpuarray Test #10 and #11 fails - theano

Problem
I always have used theano normally. WIth CUDA and CUDNN and CNMEM. I have an XTITAN.
Actually I ran my code on the university server.
Im trying to install libgpuarray but the tests #10 and #11 fails.
What should i do ?
Extra-Information
nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61
nvidia-smi
Fri Mar 17 18:35:45 2017
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.48 Driver Version: 367.48 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX TIT... Off | 0000:02:00.0 On | N/A |
| 22% 36C P8 15W / 250W | 69MiB / 12204MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 1 GeForce GTX TIT... Off | 0000:82:00.0 Off | N/A |
| 22% 43C P8 16W / 250W | 1MiB / 12206MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 2 GeForce GTX TIT... Off | 0000:83:00.0 Off | N/A |
| 22% 30C P8 14W / 250W | 1MiB / 12206MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 1437 G /usr/bin/Xorg 40MiB |
| 0 3011 G gnome-shell 27MiB |
+-----------------------------------------------------------------------------+
How Im installing libgpuarray
rm -rf build Build
mkdir Build
cd Build
cmake .. -DCMAKE_INSTALL_PREFIX=~/.local -DCMAKE_BUILD_TYPE=Release
make
make install
...
(myVE) andromeda#REDACTED:~/private/libgpuarray/Build$ cmake .. -DCMAKE_INSTALL_PREFIX=~/.local -DCMAKE_BUILD_TYPE=Release
-- The C compiler identification is GNU 4.9.2
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Looking for strlcat
-- Looking for strlcat - not found
-- Looking for mkstemp
-- Looking for mkstemp - found
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.28")
-- checking for one of the modules 'check'
-- Looking for ck_assert_ptr_ne
-- Looking for ck_assert_ptr_ne - found
-- Found MPI_C: /usr/lib/libmpi.so;/usr/lib/x86_64-linux-gnu/libdl.so;/usr/lib/x86_64-linux-gnu/libhwloc.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/andromeda/private/libgpuarray/Build
(myVE) andromeda#REDACTED:~/private/libgpuarray/Build$ make
Scanning dependencies of target gpuarray
[ 1%] Building C object src/CMakeFiles/gpuarray.dir/cache/lru.c.o
[ 2%] Building C object src/CMakeFiles/gpuarray.dir/cache/twoq.c.o
[ 3%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_types.c.o
[ 4%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_error.c.o
[ 5%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_util.c.o
[ 6%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_buffer.c.o
[ 7%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_buffer_blas.c.o
[ 8%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_buffer_collectives.c.o
[ 9%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_array.c.o
[ 10%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_array_blas.c.o
[ 11%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_array_collectives.c.o
[ 12%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_kernel.c.o
[ 13%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_extension.c.o
[ 14%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_elemwise.c.o
[ 15%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_reduction.c.o
[ 16%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_buffer_cuda.c.o
[ 17%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_blas_cuda_cublas.c.o
[ 18%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_collectives_cuda_nccl.c.o
[ 19%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_buffer_opencl.c.o
/home/andromeda/private/libgpuarray/src/gpuarray_buffer_opencl.c: In function ‘cl_free_ctx.part.5’:
/home/andromeda/private/libgpuarray/src/gpuarray_buffer_opencl.c:223:15: warning: ‘blas_ops’ may be used uninitialized in this function [-Wmaybe-uninitialized]
blas_ops->teardown((gpucontext *)ctx);
^
/home/andromeda/private/libgpuarray/src/gpuarray_buffer_opencl.c: In function ‘cl_deinit’:
/home/andromeda/private/libgpuarray/src/gpuarray_buffer_opencl.c:223:15: warning: ‘blas_ops’ may be used uninitialized in this function [-Wmaybe-uninitialized]
/home/andromeda/private/libgpuarray/src/gpuarray_buffer_opencl.c:215:22: note: ‘blas_ops’ was declared here
gpuarray_blas_ops *blas_ops;
^
[ 20%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_blas_opencl_clblas.c.o
[ 21%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_blas_opencl_clblast.c.o
[ 22%] Building C object src/CMakeFiles/gpuarray.dir/gpuarray_strl.c.o
[ 23%] Building C object src/CMakeFiles/gpuarray.dir/util/strb.c.o
[ 24%] Building C object src/CMakeFiles/gpuarray.dir/util/xxhash.c.o
[ 25%] Building C object src/CMakeFiles/gpuarray.dir/util/integerfactoring.c.o
[ 26%] Building C object src/CMakeFiles/gpuarray.dir/loaders/dyn_load.c.o
[ 27%] Building C object src/CMakeFiles/gpuarray.dir/loaders/libcuda.c.o
/home/andromeda/private/libgpuarray/src/loaders/libcuda.c: In function ‘load_libcuda’:
/home/andromeda/private/libgpuarray/src/loaders/libcuda.c:46:9: warning: unused variable ‘v’ [-Wunused-variable]
float v;
^
[ 28%] Building C object src/CMakeFiles/gpuarray.dir/loaders/libnvrtc.c.o
[ 29%] Building C object src/CMakeFiles/gpuarray.dir/loaders/libcublas.c.o
[ 30%] Building C object src/CMakeFiles/gpuarray.dir/loaders/libnccl.c.o
[ 31%] Building C object src/CMakeFiles/gpuarray.dir/loaders/libopencl.c.o
[ 32%] Building C object src/CMakeFiles/gpuarray.dir/loaders/libclblas.c.o
[ 33%] Building C object src/CMakeFiles/gpuarray.dir/loaders/libclblast.c.o
Linking C shared library ../../lib/libgpuarray.so
[ 34%] Built target gpuarray
Scanning dependencies of target gpuarray-static
[ 35%] Building C object src/CMakeFiles/gpuarray-static.dir/cache/lru.c.o
[ 36%] Building C object src/CMakeFiles/gpuarray-static.dir/cache/twoq.c.o
[ 37%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_types.c.o
[ 38%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_error.c.o
[ 39%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_util.c.o
[ 40%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_buffer.c.o
[ 41%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_buffer_blas.c.o
[ 42%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_buffer_collectives.c.o
[ 43%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_array.c.o
[ 44%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_array_blas.c.o
[ 45%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_array_collectives.c.o
[ 46%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_kernel.c.o
[ 47%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_extension.c.o
[ 48%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_elemwise.c.o
[ 49%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_reduction.c.o
[ 50%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_buffer_cuda.c.o
[ 51%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_blas_cuda_cublas.c.o
[ 52%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_collectives_cuda_nccl.c.o
[ 53%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_buffer_opencl.c.o
/home/andromeda/private/libgpuarray/src/gpuarray_buffer_opencl.c: In function ‘cl_free_ctx.part.5’:
/home/andromeda/private/libgpuarray/src/gpuarray_buffer_opencl.c:223:15: warning: ‘blas_ops’ may be used uninitialized in this function [-Wmaybe-uninitialized]
blas_ops->teardown((gpucontext *)ctx);
^
/home/andromeda/private/libgpuarray/src/gpuarray_buffer_opencl.c: In function ‘cl_deinit’:
/home/andromeda/private/libgpuarray/src/gpuarray_buffer_opencl.c:223:15: warning: ‘blas_ops’ may be used uninitialized in this function [-Wmaybe-uninitialized]
/home/andromeda/private/libgpuarray/src/gpuarray_buffer_opencl.c:215:22: note: ‘blas_ops’ was declared here
gpuarray_blas_ops *blas_ops;
^
[ 54%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_blas_opencl_clblas.c.o
[ 55%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_blas_opencl_clblast.c.o
[ 56%] Building C object src/CMakeFiles/gpuarray-static.dir/gpuarray_strl.c.o
[ 57%] Building C object src/CMakeFiles/gpuarray-static.dir/util/strb.c.o
[ 58%] Building C object src/CMakeFiles/gpuarray-static.dir/util/xxhash.c.o
[ 59%] Building C object src/CMakeFiles/gpuarray-static.dir/util/integerfactoring.c.o
[ 60%] Building C object src/CMakeFiles/gpuarray-static.dir/loaders/dyn_load.c.o
[ 61%] Building C object src/CMakeFiles/gpuarray-static.dir/loaders/libcuda.c.o
/home/andromeda/private/libgpuarray/src/loaders/libcuda.c: In function ‘load_libcuda’:
/home/andromeda/private/libgpuarray/src/loaders/libcuda.c:46:9: warning: unused variable ‘v’ [-Wunused-variable]
float v;
^
[ 62%] Building C object src/CMakeFiles/gpuarray-static.dir/loaders/libnvrtc.c.o
[ 63%] Building C object src/CMakeFiles/gpuarray-static.dir/loaders/libcublas.c.o
[ 64%] Building C object src/CMakeFiles/gpuarray-static.dir/loaders/libnccl.c.o
[ 65%] Building C object src/CMakeFiles/gpuarray-static.dir/loaders/libopencl.c.o
[ 66%] Building C object src/CMakeFiles/gpuarray-static.dir/loaders/libclblas.c.o
[ 67%] Building C object src/CMakeFiles/gpuarray-static.dir/loaders/libclblast.c.o
Linking C static library ../../lib/libgpuarray-static.a
[ 68%] Built target gpuarray-static
Scanning dependencies of target check_array
[ 69%] Building C object tests/CMakeFiles/check_array.dir/main.c.o
[ 70%] Building C object tests/CMakeFiles/check_array.dir/device.c.o
[ 71%] Building C object tests/CMakeFiles/check_array.dir/check_array.c.o
Linking C executable check_array
[ 71%] Built target check_array
Scanning dependencies of target check_blas
[ 72%] Building C object tests/CMakeFiles/check_blas.dir/main.c.o
[ 73%] Building C object tests/CMakeFiles/check_blas.dir/device.c.o
[ 74%] Building C object tests/CMakeFiles/check_blas.dir/check_blas.c.o
Linking C executable check_blas
[ 74%] Built target check_blas
Scanning dependencies of target check_buffer
[ 75%] Building C object tests/CMakeFiles/check_buffer.dir/main.c.o
[ 76%] Building C object tests/CMakeFiles/check_buffer.dir/device.c.o
[ 77%] Building C object tests/CMakeFiles/check_buffer.dir/check_buffer.c.o
Linking C executable check_buffer
[ 77%] Built target check_buffer
Scanning dependencies of target check_buffer_collectives
[ 78%] Building C object tests/CMakeFiles/check_buffer_collectives.dir/main.c.o
[ 79%] Building C object tests/CMakeFiles/check_buffer_collectives.dir/device.c.o
[ 80%] Building C object tests/CMakeFiles/check_buffer_collectives.dir/communicator.c.o
[ 81%] Building C object tests/CMakeFiles/check_buffer_collectives.dir/check_buffer_collectives.c.o
Linking C executable check_buffer_collectives
[ 81%] Built target check_buffer_collectives
Scanning dependencies of target check_collectives
[ 82%] Building C object tests/CMakeFiles/check_collectives.dir/main.c.o
[ 83%] Building C object tests/CMakeFiles/check_collectives.dir/device.c.o
[ 84%] Building C object tests/CMakeFiles/check_collectives.dir/communicator.c.o
[ 85%] Building C object tests/CMakeFiles/check_collectives.dir/check_collectives.c.o
Linking C executable check_collectives
[ 85%] Built target check_collectives
Scanning dependencies of target check_elemwise
[ 86%] Building C object tests/CMakeFiles/check_elemwise.dir/main.c.o
[ 87%] Building C object tests/CMakeFiles/check_elemwise.dir/device.c.o
[ 88%] Building C object tests/CMakeFiles/check_elemwise.dir/check_elemwise.c.o
Linking C executable check_elemwise
[ 88%] Built target check_elemwise
Scanning dependencies of target check_error
[ 89%] Building C object tests/CMakeFiles/check_error.dir/main.c.o
[ 90%] Building C object tests/CMakeFiles/check_error.dir/check_error.c.o
Linking C executable check_error
[ 90%] Built target check_error
Scanning dependencies of target check_reduction
[ 91%] Building C object tests/CMakeFiles/check_reduction.dir/main.c.o
[ 92%] Building C object tests/CMakeFiles/check_reduction.dir/device.c.o
[ 93%] Building C object tests/CMakeFiles/check_reduction.dir/check_reduction.c.o
Linking C executable check_reduction
[ 93%] Built target check_reduction
Scanning dependencies of target check_types
[ 94%] Building C object tests/CMakeFiles/check_types.dir/main.c.o
[ 95%] Building C object tests/CMakeFiles/check_types.dir/check_types.c.o
Linking C executable check_types
[ 95%] Built target check_types
Scanning dependencies of target check_util
[ 96%] Building C object tests/CMakeFiles/check_util.dir/main.c.o
[ 97%] Building C object tests/CMakeFiles/check_util.dir/check_util.c.o
Linking C executable check_util
[ 97%] Built target check_util
Scanning dependencies of target check_util_integerfactoring
[ 98%] Building C object tests/CMakeFiles/check_util_integerfactoring.dir/main.c.o
[100%] Building C object tests/CMakeFiles/check_util_integerfactoring.dir/check_util_integerfactoring.c.o
Linking C executable check_util_integerfactoring
[100%] Built target check_util_integerfactoring
------------------
Then :
(myVE) andromeda#REDACTED:~/private/libgpuarray/Build$ make install
[ 34%] Built target gpuarray
[ 68%] Built target gpuarray-static
[ 71%] Built target check_array
[ 74%] Built target check_blas
[ 77%] Built target check_buffer
[ 81%] Built target check_buffer_collectives
[ 85%] Built target check_collectives
[ 88%] Built target check_elemwise
[ 90%] Built target check_error
[ 93%] Built target check_reduction
[ 95%] Built target check_types
[ 97%] Built target check_util
[100%] Built target check_util_integerfactoring
Install the project...
-- Install configuration: "Release"
-- Installing: /home/andromeda/.local/include/gpuarray/array.h
-- Installing: /home/andromeda/.local/include/gpuarray/blas.h
-- Installing: /home/andromeda/.local/include/gpuarray/collectives.h
-- Installing: /home/andromeda/.local/include/gpuarray/buffer.h
-- Installing: /home/andromeda/.local/include/gpuarray/buffer_blas.h
-- Installing: /home/andromeda/.local/include/gpuarray/buffer_collectives.h
-- Installing: /home/andromeda/.local/include/gpuarray/abi_version.h
-- Installing: /home/andromeda/.local/include/gpuarray/config.h
-- Installing: /home/andromeda/.local/include/gpuarray/elemwise.h
-- Installing: /home/andromeda/.local/include/gpuarray/error.h
-- Installing: /home/andromeda/.local/include/gpuarray/extension.h
-- Installing: /home/andromeda/.local/include/gpuarray/ext_cuda.h
-- Installing: /home/andromeda/.local/include/gpuarray/kernel.h
-- Installing: /home/andromeda/.local/include/gpuarray/types.h
-- Installing: /home/andromeda/.local/include/gpuarray/util.h
-- Installing: /home/andromeda/.local/lib/libgpuarray.so.2.0
-- Up-to-date: /home/andromeda/.local/lib/libgpuarray.so.2
-- Up-to-date: /home/andromeda/.local/lib/libgpuarray.so
-- Installing: /home/andromeda/.local/lib/libgpuarray-static.a
And the test :
(myVE) andromeda#REDACTED:~/private/libgpuarray/Build$ DEVICE=cuda2 make test
Running tests...
Test project /home/andromeda/private/libgpuarray/Build
Start 1: test_types
1/11 Test #1: test_types ....................... Passed 0.01 sec
Start 2: test_util
2/11 Test #2: test_util ........................ Passed 0.01 sec
Start 3: test_util_integerfactoring
3/11 Test #3: test_util_integerfactoring ....... Passed 0.67 sec
Start 4: test_reduction
4/11 Test #4: test_reduction ................... Passed 8.30 sec
Start 5: test_array
5/11 Test #5: test_array ....................... Passed 3.13 sec
Start 6: test_blas
6/11 Test #6: test_blas ........................ Passed 3.49 sec
Start 7: test_elemwise
7/11 Test #7: test_elemwise .................... Passed 25.22 sec
Start 8: test_error
8/11 Test #8: test_error ....................... Passed 0.02 sec
Start 9: test_buffer
9/11 Test #9: test_buffer ...................... Passed 4.77 sec
Start 10: test_buffer_collectives
10/11 Test #10: test_buffer_collectives ..........***Failed 0.87 sec
Start 11: test_collectives
11/11 Test #11: test_collectives .................***Failed 0.85 sec
82% tests passed, 2 tests failed out of 11
Total Test time (real) = 47.37 sec
The following tests FAILED:
10 - test_buffer_collectives (Failed)
11 - test_collectives (Failed)
Errors while running CTest
Makefile:117: recipe for target 'test' failed
make: *** [test] Error 8
(myVE) andromeda#REDACTED:~/private/libgpuarray/Build$

According to the github libgpuarray issues :
The last two tests require nccl and will fail if it's not present. If you're not trying to use nccl, you can ignore those failures.
—
https://github.com/Theano/libgpuarray/issues/383#issuecomment-287491789

Related

replace dash by space in pytest's report

I'm on my way to simplify a set of tests by pytest by stacking parameters
import pytest
#pytest.mark.parametrize("option_a", ["-r", "-s"])
#pytest.mark.parametrize("option_b", ["--alpha", "--beta", "--gamma"])
def test_foo(option_a, option_b):
assert option_a in ["-r", "-s"]
As anticipated, the above MWE performs an exhaustive permutation:
======================================= test session starts =======================================
platform linux -- Python 3.9.7, pytest-6.2.4, py-1.10.0, pluggy-0.13.1 -- /usr/bin/python3
cachedir: .pytest_cache
rootdir: /home/guest/Desktop/project, configfile: pytest.ini
collected 6 items
test_ping.py::test_foo[--alpha--r] PASSED [ 16%]
test_ping.py::test_foo[--alpha--s] PASSED [ 33%]
test_ping.py::test_foo[--beta--r] PASSED [ 50%]
test_ping.py::test_foo[--beta--s] PASSED [ 66%]
test_ping.py::test_foo[--gamma--r] PASSED [ 83%]
test_ping.py::test_foo[--gamma--s] PASSED [100%]
======================================== 6 passed in 0.02s ========================================
What bothers me a bit is the additional dash trailing the first parameter (--alpha, --beta, --gamma). Someone not familiar enough with pytest may assume the second parameter tested would be --r (instead of -r), or --s (instead of -s).
Is there a practical approach to substitute this separator by a blank space? Since this is just an issue how output to the CLI is formatted, I would like to refrain to define multiple fixtures for each test function.
To summarize our comments, it's possible to use ids and keep in mind test ordering. pytest is going to use the parameter with the higher number of levels as an outer loop (here: option_b), the one with fewer levels as the inner one (here: option_a). Also, I have added the custom_format function as an example of an approach how to custom a view of a parameter.
import pytest
#pytest.mark.parametrize("option_a", ["-r", "-s"], ids=[" -r", " -s"])
#pytest.mark.parametrize("option_b", ["--alpha", "--beta", "--gamma"], ids=["--alpha ", "--beta ", "--gamma "])
def test_foo(option_a, option_b):
assert option_a in ["-r", "-s"]
def custom_format(val):
return f" {val} "
#pytest.mark.parametrize("option_a", ["-r", "-s"], ids=custom_format)
#pytest.mark.parametrize("option_b", ["--alpha", "--beta", "--gamma"], ids=custom_format)
def test_foo_1(option_a, option_b):
assert option_a in ["-r", "-s"]
It will not remove hyphens between parameters but could decrease confusion.
collected 12 items
test_.py::test_foo[--alpha - -r] PASSED [ 8%]
test_.py::test_foo[--alpha - -s] PASSED [ 16%]
test_.py::test_foo[--beta - -r] PASSED [ 25%]
test_.py::test_foo[--beta - -s] PASSED [ 33%]
test_.py::test_foo[--gamma - -r] PASSED [ 41%]
test_.py::test_foo[--gamma - -s] PASSED [ 50%]
test_.py::test_foo_1[ --alpha - -r ] PASSED [ 58%]
test_.py::test_foo_1[ --alpha - -s ] PASSED [ 66%]
test_.py::test_foo_1[ --beta - -r ] PASSED [ 75%]
test_.py::test_foo_1[ --beta - -s ] PASSED [ 83%]
test_.py::test_foo_1[ --gamma - -r ] PASSED [ 91%]
test_.py::test_foo_1[ --gamma - -s ] PASSED [100%]

Error during installation UHD on BeagleBone (Debian 10)

I followed instrucions from: https://files.ettus.com/manual/page_build_guide.html
I can't build and install uhd and .cpp files for uhd on my Debian. I have error after make command.
cmake .. is ok. The problem is with something called NEON I think.
Processor info:
cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 2 (v7l)
BogoMIPS : 995.32
Features : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc08
CPU revision : 2
Hardware : Generic AM33XX (Flattened Device Tree)
Revision : 0000
Serial : 4219BBBK05E9
Release:
lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)
Release: 10
Codename: buster
Installation:
root#beaglebone:/home/debian/uhd/host/build# make
[ 2%] Built target uhd_rpclib
[ 2%] Built target uhd-resources
[ 3%] Building CXX object lib/CMakeFiles/uhd.dir/convert/convert_with_neon.cpp.o
In file included from /home/debian/uhd/host/lib/convert/convert_with_neon.cpp:10:
/usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h: In member function ‘virtual void __convert_fc32_1_sc16_item32_le_1_PRIORITY_SIMD::operator()(const input_type&, const output_type&, size_t)’:
/usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:6740:1: error: inlining failed in call to always_inline ‘float32x4_t vdupq_n_f32(float32_t)’: target specific option mismatch
vdupq_n_f32 (float32_t __a)
^~~~~~~~~~~
/home/debian/uhd/host/lib/convert/convert_with_neon.cpp:27:33: note: called from here
float32x4_t Q0 = vdupq_n_f32(float(scale_factor));
~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
In file included from /home/debian/uhd/host/lib/convert/convert_with_neon.cpp:10:
/usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:10844:1: error: inlining failed in call to always_inline ‘void vst1_s16(int16_t*, int16x4_t)’: target specific option mismatch
vst1_s16 (int16_t * __a, int16x4_t __b)
^~~~~~~~
/home/debian/uhd/host/lib/convert/convert_with_neon.cpp:50:17: note: called from here
vst1_s16((reinterpret_cast<int16_t*>(&output[i + 4])), D13);
~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/debian/uhd/host/lib/convert/convert_with_neon.cpp:10:
/usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:7440:1: error: inlining failed in call to always_inline ‘int32x4_t vcvtq_s32_f32(float32x4_t)’: target specific option mismatch
vcvtq_s32_f32 (float32x4_t __a)
^~~~~~~~~~~~~
/home/debian/uhd/host/lib/convert/convert_with_neon.cpp:47:39: note: called from here
int32x4_t Q9 = vcvtq_s32_f32(Q8);
~~~~~~~~~~~~~^~~~
In file included from /home/debian/uhd/host/lib/convert/convert_with_neon.cpp:10:
/usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:1172:1: error: inlining failed in call to always_inline ‘float32x4_t vmulq_f32(float32x4_t, float32x4_t)’: target specific option mismatch
vmulq_f32 (float32x4_t __a, float32x4_t __b)
^~~~~~~~~
/home/debian/uhd/host/lib/convert/convert_with_neon.cpp:46:35: note: called from here
float32x4_t Q8 = vmulq_f32(Q7, Q0);
~~~~~~~~~^~~~~~~~
In file included from /home/debian/uhd/host/lib/convert/convert_with_neon.cpp:10:
/usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:10392:1: error: inlining failed in call to always_inline ‘float32x4_t vld1q_f32(const float32_t*)’: target specific option mismatch
vld1q_f32 (const float32_t * __a)
^~~~~~~~~
/home/debian/uhd/host/lib/convert/convert_with_neon.cpp:29:36: note: called from here
float32x4_t Q1 = vld1q_f32(reinterpret_cast<const float*>(&input[i]));
~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [lib/CMakeFiles/uhd.dir/build.make:502: lib/CMakeFiles/uhd.dir/convert/convert_with_neon.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:129: lib/CMakeFiles/uhd.dir/all] Error 2
make: *** [Makefile:163: all] Error 2
What I can do now?
Edit file CMakeCache.txt located in uhd/host/build/.
//Use NEON SIMD instuctions, if applicable
NEON_SIMD_ENABLE:BOOL=OFF
Then use:
make
It solve the problem.

Jansson build errors

I am pretty new to Linux and I am having problems integrating an external software into my program. When I am following the instructions on integrating a couple of lines that includes Jansson (Add G4Sipm to your CMakeLists.txt in this document enter link description here) I get errors which I suspect is the problem of integration itself since it does separately build on its own. The errors I get are after command build -j2. Here is a part of the terminal output:
Scanning dependencies of target jansson
Scanning dependencies of target gtest
Scanning dependencies of target G4GeneralParticleSource
[ 1%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/dump.c.o
[ 2%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/error.c.o
[ 2%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/hashtable.c.o
[ 3%] Building CXX object G4BasicObjects/G4PropertyFileReadInTools/CMakeFiles/G4PropertyFileReadInTools.dir/src/PropertyToolsManager.cc.o
[ 4%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/hashtable_seed.c.o
[ 4%] Building CXX object G4BasicObjects/G4PropertyFileReadInTools/CMakeFiles/G4PropertyFileReadInTools.dir/src/GoddessProperties.cc.o
[ 4%] Building CXX object G4BasicObjects/G4PropertyFileReadInTools/CMakeFiles/G4PropertyFileReadInTools.dir/src/VectorUtil.cc.o
[ 5%] Building CXX object externals/g4sipm/externals/googletest/googletest/CMakeFiles/gtest.dir/src/gtest-all.cc.o
[ 6%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/load.c.o
[ 6%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/memory.c.o
[ 7%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/pack_unpack.c.o
[ 7%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/strbuffer.c.o
In file included from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/hashtable.h:11,
from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson_private.h:11,
from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/dump.c:12:
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:101:22: error: unknown type name ‘json_int_t’; did you mean ‘json_t’?
101 | json_t *json_integer(json_int_t value);
| ^~~~~~~~~~
| json_t
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:280:1: error: unknown type name ‘json_int_t’; did you mean ‘json_auto_t’?
280 | json_int_t json_integer_value(const json_t *integer);
| ^~~~~~~~~~
| json_auto_t
In file included from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/hashtable.h:11,
from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson_private.h:11,
from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/error.c:1:
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:101:22: error: unknown type name ‘json_int_t’; did you mean ‘json_t’?
101 | json_t *json_integer(json_int_t value);
| ^~~~~~~~~~
| json_t
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:288:39: error: unknown type name ‘json_int_t’; did you mean ‘json_auto_t’?
288 | int json_integer_set(json_t *integer, json_int_t value);
| ^~~~~~~~~~
| json_auto_t
In file included from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/dump.c:12:
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson_private.h:60:5: error: unknown type name ‘json_int_t’
60 | json_int_t value;
| ^~~~~~~~~~
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:280:1: error: unknown type name ‘json_int_t’; did you mean ‘json_auto_t’?
280 | json_int_t json_integer_value(const json_t *integer);
| ^~~~~~~~~~
| json_auto_t
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:288:39: error: unknown type name ‘json_int_t’; did you mean ‘json_auto_t’?
288 | int json_integer_set(json_t *integer, json_int_t value);
| ^~~~~~~~~~
| json_auto_t
In file included from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/error.c:1:
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson_private.h:60:5: error: unknown type name ‘json_int_t’
60 | json_int_t value;
| ^~~~~~~~~~
In file included from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/hashtable.h:11,
from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/hashtable.c:19:
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:101:22: error: unknown type name ‘json_int_t’; did you mean ‘json_t’?
101 | json_t *json_integer(json_int_t value);
| ^~~~~~~~~~
| json_t
I tried adding #include <jansson_config.h> instead of #include "jansson_config.h" however errors still persisted. I tried contacting the project lead however it seems they have all moved on from the project. Any help and suggestions would be greatly appreciated, thank you!
Edit 1: for clarification, I am using the latest version of Jansson

crosstools-ng: compiling toolchain for x86_64 linux on OSX - error when installing kernel headers

I'm trying to create a toolchain for x86_64 linux on a 64 bit Mac running OSX 10.9.5 and using crosstool-ng-1.22.0. I have tried building using a number of the samples (x86_64-w64-mingw32,x86_64-pc-linux-gnu and x86_64-unknown-linux-gnu) but I am running into build errors, as shown below. I am not building the gold linker, nor am I attempting to link statically, and I am building on a case-sensitive file system. The build.log and config are shown after the error listing.
It looks as though the build environment is perhaps looking for OSX header files (within /usr/include) when installing/building the kernel headers, rather than Linux ones, but I don't know what to do to fix this.
Can anyone please offer advice for what I need to do to build successfully?
$ ct-ng build
[INFO ] Performing some trivial sanity checks
[INFO ] Build started 20160825.084703
[INFO ] Building environment variables
[WARN ] Directory '/Volumes/CaseSensitiveLinux/ct-ng/src' does not exist.
[WARN ] Will not save downloaded tarballs to local storage.
[EXTRA] Preparing working directories
[EXTRA] Installing user-supplied crosstool-NG configuration
[EXTRA] =================================================================
[EXTRA] Dumping internal crosstool-NG configuration
[EXTRA] Building a toolchain for:
[EXTRA] build = x86_64-apple-darwin13.4.0
[EXTRA] host = x86_64-apple-darwin13.4.0
[EXTRA] target = x86_64-unknown-linux-gnu
[EXTRA] Dumping internal crosstool-NG configuration: done in 0.00s (at 00:05)
[INFO ] =================================================================
[INFO ] Retrieving needed toolchain components' tarballs
[INFO ] Retrieving needed toolchain components' tarballs: done in 1.00s (at 00:06)
[INFO ] =================================================================
[INFO ] Extracting and patching toolchain components
[INFO ] Extracting and patching toolchain components: done in 0.00s (at 00:06)
[INFO ] =================================================================
[INFO ] Installing ncurses for build
[EXTRA] Configuring ncurses
[EXTRA] Building ncurses
[EXTRA] Installing ncurses
[INFO ] Installing ncurses for build: done in 22.00s (at 00:28)
[INFO ] =================================================================
[INFO ] Installing gettext for build
[EXTRA] Configuring gettext
[EXTRA] Building gettext
[EXTRA] Installing gettext
[INFO ] Installing gettext for build: done in 228.00s (at 04:17)
[INFO ] =================================================================
[INFO ] Installing GMP for host
[EXTRA] Configuring GMP
[EXTRA] Building GMP
[EXTRA] Installing GMP
[INFO ] Installing GMP for host: done in 36.00s (at 04:53)
[INFO ] =================================================================
[INFO ] Installing MPFR for host
[EXTRA] Configuring MPFR
[EXTRA] Building MPFR
[EXTRA] Installing MPFR
[INFO ] Installing MPFR for host: done in 23.00s (at 05:16)
[INFO ] =================================================================
[INFO ] Installing ISL for host
[EXTRA] Configuring ISL
[EXTRA] Building ISL
[EXTRA] Installing ISL
[INFO ] Installing ISL for host: done in 15.00s (at 05:31)
[INFO ] =================================================================
[INFO ] Installing MPC for host
[EXTRA] Configuring MPC
[EXTRA] Building MPC
[EXTRA] Installing MPC
[INFO ] Installing MPC for host: done in 11.00s (at 05:42)
[INFO ] =================================================================
[INFO ] Installing expat for host
[EXTRA] Configuring expat
[EXTRA] Building expat
[EXTRA] Installing expat
[INFO ] Installing expat for host: done in 7.00s (at 05:49)
[INFO ] =================================================================
[INFO ] Installing gettext for host
[EXTRA] Configuring gettext
[EXTRA] Building gettext
[EXTRA] Installing gettext
[INFO ] Installing gettext for host: done in 196.00s (at 09:05)
[INFO ] =================================================================
[INFO ] Installing binutils for host
[EXTRA] Configuring binutils
[EXTRA] Building binutils
[EXTRA] Installing binutils
[INFO ] Installing binutils for host: done in 51.00s (at 09:56)
[INFO ] =================================================================
[INFO ] Installing pass-1 core C gcc compiler
[EXTRA] Configuring core C gcc compiler
[EXTRA] Building gcc
[EXTRA] Installing gcc
[EXTRA] Housekeeping for final gcc compiler
[INFO ] Installing pass-1 core C gcc compiler: done in 154.00s (at 12:30)
[INFO ] =================================================================
[INFO ] Installing kernel headers
[EXTRA] Installing kernel headers
[ERROR] /usr/include/bits/types.h:43:25: error: typedef redefinition with different types ('long' vs 'long long')
[ERROR] /usr/include/bits/types.h:44:27: error: typedef redefinition with different types ('unsigned long' vs 'unsigned long long')
[ERROR] /Volumes/CaseSensitiveLinux/ct-ng/.build/src/linux-3.12.50/arch/x86/tools/relocs.h:15:10: fatal error: 'endian.h' file not found
[ERROR] make[3]: *** [arch/x86/tools/relocs_32.o] Error 1
[ERROR] make[2]: *** [archscripts] Error 2
[ERROR] make[1]: *** [sub-make] Error 2
[ERROR]
[ERROR] >>
[ERROR] >> Build failed in step 'Installing kernel headers'
[ERROR] >> called in step '(top-level)'
[ERROR] >>
[ERROR] >> Error happened in: CT_DoExecLog[scripts/functions#216]
[ERROR] >> called from: do_kernel_install[scripts/build/kernel/linux.sh#119]
[ERROR] >> called from: do_kernel_headers[scripts/build/kernel/linux.sh#91]
[ERROR] >> called from: main[scripts/crosstool-NG.sh#646]
[ERROR] >>
[ERROR] >> For more info on this error, look at the file: 'build.log'
[ERROR] >> There is a list of known issues, some with workarounds, in:
[ERROR] >> '/usr/local/Cellar/crosstool-ng/1.22.0_1/share/doc/crosstool-ng/crosstool-ng-1.22.0/B - Known issues.txt'
[ERROR]
[ERROR] (elapsed: 12:32.00)
[12:32] / make: *** [build] Error 1
Here is the relevant part of the build.log:
[DEBUG] ==> Executing: 'ln' '-sfv' 'x86_64-unknown-linux-gnu-gcc' '/Volumes/CaseSensitiveLinux/ct-ng/.build/x86_64-unknown-linux-gnu/buildtools/bin/x86_64-unknown-linux-gnu-cc'
[ALL ] /Volumes/CaseSensitiveLinux/ct-ng/.build/x86_64-unknown-linux-gnu/buildtools/bin/x86_64-unknown-linux-gnu-cc -> x86_64-unknown-linux-gnu-gcc
[INFO ] Installing pass-1 core C gcc compiler: done in 154.00s (at 12:30)
[INFO ] =================================================================
[INFO ] Installing kernel headers
[DEBUG] Using kernel's headers_install
[EXTRA] Installing kernel headers
[DEBUG] ==> Executing: '/usr/bin/make' '-C' '/Volumes/CaseSensitiveLinux/ct-ng/.build/src/linux-3.12.50' 'CROSS_COMPILE=x86_64-unknown-linux-gnu-' 'O=/Volumes/CaseSensitiveLinux/ct-ng/.build/x86_64-unknown-linux-gnu/build/build-kernel-headers' 'ARCH=x86' 'INSTALL_HDR_PATH=/Volumes/CaseSensitiveLinux/ct-ng/x-tools/x86_64-unknown-linux-gnu/x86_64-unknown-linux-gnu/sysroot/usr' 'V=0' 'headers_install'
[ALL ] CHK include/generated/uapi/linux/version.h
[ALL ] UPD include/generated/uapi/linux/version.h
[ALL ] HOSTCC scripts/basic/fixdep
[ALL ] WRAP arch/x86/include/generated/asm/clkdev.h
[ALL ] SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_32.h
[ALL ] SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_64.h
[ALL ] SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_x32.h
[ALL ] SYSTBL arch/x86/syscalls/../include/generated/asm/syscalls_32.h
[ALL ] HOSTCC arch/x86/tools/relocs_32.o
[ALL ] In file included from /Volumes/CaseSensitiveLinux/ct-ng/.build/src/linux-3.12.50/arch/x86/tools/relocs_32.c:1:
[ALL ] In file included from /Volumes/CaseSensitiveLinux/ct-ng/.build/src/linux-3.12.50/arch/x86/tools/relocs.h:13:
[ALL ] In file included from /usr/include/byteswap.h:24:
[ALL ] In file included from /usr/include/bits/byteswap.h:27:
[ERROR] /usr/include/bits/types.h:43:25: error: typedef redefinition with different types ('long' vs 'long long')
[ALL ] typedef signed long int __int64_t;
[ALL ] ^
[ALL ] /usr/include/i386/_types.h:46:20: note: previous definition is here
[ALL ] typedef long long __int64_t;
[ALL ] ^
[ALL ] In file included from /Volumes/CaseSensitiveLinux/ct-ng/.build/src/linux-3.12.50/arch/x86/tools/relocs_32.c:1:
[ALL ] In file included from /Volumes/CaseSensitiveLinux/ct-ng/.build/src/linux-3.12.50/arch/x86/tools/relocs.h:13:
[ALL ] In file included from /usr/include/byteswap.h:24:
[ALL ] In file included from /usr/include/bits/byteswap.h:27:
[ERROR] /usr/include/bits/types.h:44:27: error: typedef redefinition with different types ('unsigned long' vs 'unsigned long long')
[ALL ] typedef unsigned long int __uint64_t;
[ALL ] ^
[ALL ] /usr/include/i386/_types.h:47:28: note: previous definition is here
[ALL ] typedef unsigned long long __uint64_t;
[ALL ] ^
[ALL ] In file included from /Volumes/CaseSensitiveLinux/ct-ng/.build/src/linux-3.12.50/arch/x86/tools/relocs_32.c:1:
[ERROR] /Volumes/CaseSensitiveLinux/ct-ng/.build/src/linux-3.12.50/arch/x86/tools/relocs.h:15:10: fatal error: 'endian.h' file not found
[ALL ] #include <endian.h>
[ALL ] ^
[ALL ] 3 errors generated.
[ERROR] make[3]: *** [arch/x86/tools/relocs_32.o] Error 1
[ERROR] make[2]: *** [archscripts] Error 2
[ERROR] make[1]: *** [sub-make] Error 2
[ERROR]
[ERROR] >>
[ERROR] >> Build failed in step 'Installing kernel headers'
[ERROR] >> called in step '(top-level)'
[ERROR] >>
[ERROR] >> Error happened in: CT_DoExecLog[scripts/functions#216]
[ERROR] >> called from: do_kernel_install[scripts/build/kernel/linux.sh#119]
[ERROR] >> called from: do_kernel_headers[scripts/build/kernel/linux.sh#91]
[ERROR] >> called from: main[scripts/crosstool-NG.sh#646]
[ERROR] >>
[ERROR] >> For more info on this error, look at the file: 'build.log'
[ERROR] >> There is a list of known issues, some with workarounds, in:
[ERROR] >> '/usr/local/Cellar/crosstool-ng/1.22.0_1/share/doc/crosstool-ng/crosstool-ng-1.22.0/B - Known issues.txt'
[ERROR]
[ERROR] (elapsed: 12:32.00)
Finally, here is the config file:
$ cat .config
#
# Automatically generated file; DO NOT EDIT.
# Crosstool-NG Configuration
#
CT_CONFIGURE_has_make381=y
CT_CONFIGURE_has_xz=y
CT_CONFIGURE_has_svn=y
CT_MODULES=y
#
# Paths and misc options
#
#
# crosstool-NG behavior
#
# CT_OBSOLETE is not set
# CT_EXPERIMENTAL is not set
# CT_DEBUG_CT is not set
#
# Paths
#
CT_LOCAL_TARBALLS_DIR="/Volumes/CaseSensitiveLinux/ct-ng/src"
CT_SAVE_TARBALLS=y
CT_WORK_DIR="/Volumes/CaseSensitiveLinux/ct-ng/.build"
CT_PREFIX_DIR="/Volumes/CaseSensitiveLinux/ct-ng/x-tools/${CT_TARGET}"
CT_INSTALL_DIR="${CT_PREFIX_DIR}"
CT_RM_RF_PREFIX_DIR=y
CT_REMOVE_DOCS=y
CT_INSTALL_DIR_RO=y
CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y
# CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES is not set
#
# Downloading
#
# CT_FORBID_DOWNLOAD is not set
# CT_FORCE_DOWNLOAD is not set
CT_CONNECT_TIMEOUT=10
# CT_ONLY_DOWNLOAD is not set
# CT_USE_MIRROR is not set
#
# Extracting
#
# CT_FORCE_EXTRACT is not set
CT_OVERIDE_CONFIG_GUESS_SUB=y
# CT_ONLY_EXTRACT is not set
CT_PATCH_BUNDLED=y
# CT_PATCH_LOCAL is not set
# CT_PATCH_BUNDLED_LOCAL is not set
# CT_PATCH_LOCAL_BUNDLED is not set
# CT_PATCH_BUNDLED_FALLBACK_LOCAL is not set
# CT_PATCH_LOCAL_FALLBACK_BUNDLED is not set
# CT_PATCH_NONE is not set
CT_PATCH_ORDER="bundled"
#
# Build behavior
#
CT_PARALLEL_JOBS=0
CT_LOAD=""
CT_USE_PIPES=y
CT_EXTRA_CFLAGS_FOR_BUILD=""
CT_EXTRA_LDFLAGS_FOR_BUILD=""
CT_EXTRA_CFLAGS_FOR_HOST=""
CT_EXTRA_LDFLAGS_FOR_HOST=""
# CT_CONFIG_SHELL_SH is not set
# CT_CONFIG_SHELL_ASH is not set
CT_CONFIG_SHELL_BASH=y
# CT_CONFIG_SHELL_CUSTOM is not set
CT_CONFIG_SHELL="${bash}"
#
# Logging
#
# CT_LOG_ERROR is not set
# CT_LOG_WARN is not set
# CT_LOG_INFO is not set
CT_LOG_EXTRA=y
# CT_LOG_ALL is not set
# CT_LOG_DEBUG is not set
CT_LOG_LEVEL_MAX="EXTRA"
# CT_LOG_SEE_TOOLS_WARN is not set
CT_LOG_PROGRESS_BAR=y
CT_LOG_TO_FILE=y
CT_LOG_FILE_COMPRESS=y
#
# Target options
#
CT_ARCH="x86"
CT_ARCH_SUPPORTS_32=y
CT_ARCH_SUPPORTS_64=y
CT_ARCH_SUPPORTS_WITH_ARCH=y
CT_ARCH_SUPPORTS_WITH_CPU=y
CT_ARCH_SUPPORTS_WITH_TUNE=y
CT_ARCH_DEFAULT_32=y
CT_ARCH_ARCH=""
CT_ARCH_CPU=""
CT_ARCH_TUNE=""
# CT_ARCH_32 is not set
CT_ARCH_64=y
CT_ARCH_BITNESS=64
CT_TARGET_CFLAGS=""
CT_TARGET_LDFLAGS=""
# CT_ARCH_alpha is not set
# CT_ARCH_arm is not set
# CT_ARCH_avr is not set
# CT_ARCH_m68k is not set
# CT_ARCH_mips is not set
# CT_ARCH_nios2 is not set
# CT_ARCH_powerpc is not set
# CT_ARCH_s390 is not set
# CT_ARCH_sh is not set
# CT_ARCH_sparc is not set
CT_ARCH_x86=y
# CT_ARCH_xtensa is not set
CT_ARCH_alpha_AVAILABLE=y
CT_ARCH_arm_AVAILABLE=y
CT_ARCH_avr_AVAILABLE=y
CT_ARCH_m68k_AVAILABLE=y
CT_ARCH_microblaze_AVAILABLE=y
CT_ARCH_mips_AVAILABLE=y
CT_ARCH_nios2_AVAILABLE=y
CT_ARCH_powerpc_AVAILABLE=y
CT_ARCH_s390_AVAILABLE=y
CT_ARCH_sh_AVAILABLE=y
CT_ARCH_sparc_AVAILABLE=y
CT_ARCH_x86_AVAILABLE=y
CT_ARCH_xtensa_AVAILABLE=y
CT_ARCH_SUFFIX=""
#
# Generic target options
#
# CT_MULTILIB is not set
CT_ARCH_USE_MMU=y
#
# Target optimisations
#
CT_ARCH_FLOAT=""
#
# Toolchain options
#
#
# General toolchain options
#
CT_FORCE_SYSROOT=y
CT_USE_SYSROOT=y
CT_SYSROOT_NAME="sysroot"
CT_SYSROOT_DIR_PREFIX=""
# CT_STATIC_TOOLCHAIN is not set
CT_TOOLCHAIN_PKGVERSION=""
CT_TOOLCHAIN_BUGURL=""
#
# Tuple completion and aliasing
#
CT_TARGET_VENDOR="unknown"
CT_TARGET_ALIAS_SED_EXPR=""
CT_TARGET_ALIAS=""
#
# Toolchain type
#
CT_CROSS=y
# CT_CANADIAN is not set
CT_TOOLCHAIN_TYPE="cross"
#
# Build system
#
CT_BUILD=""
CT_BUILD_PREFIX=""
CT_BUILD_SUFFIX=""
#
# Misc options
#
# CT_TOOLCHAIN_ENABLE_NLS is not set
#
# Operating System
#
CT_KERNEL_SUPPORTS_SHARED_LIBS=y
CT_KERNEL="linux"
CT_KERNEL_VERSION="3.12.50"
# CT_KERNEL_bare_metal is not set
CT_KERNEL_linux=y
CT_KERNEL_bare_metal_AVAILABLE=y
CT_KERNEL_linux_AVAILABLE=y
# CT_KERNEL_V_4_3 is not set
# CT_KERNEL_V_4_2 is not set
# CT_KERNEL_V_4_1 is not set
# CT_KERNEL_V_3_18 is not set
# CT_KERNEL_V_3_14 is not set
CT_KERNEL_V_3_12=y
# CT_KERNEL_V_3_10 is not set
# CT_KERNEL_V_3_4 is not set
# CT_KERNEL_V_3_2 is not set
# CT_KERNEL_V_2_6_32 is not set
# CT_KERNEL_LINUX_CUSTOM is not set
CT_KERNEL_windows_AVAILABLE=y
#
# Common kernel options
#
CT_SHARED_LIBS=y
#
# linux other options
#
CT_KERNEL_LINUX_VERBOSITY_0=y
# CT_KERNEL_LINUX_VERBOSITY_1 is not set
# CT_KERNEL_LINUX_VERBOSITY_2 is not set
CT_KERNEL_LINUX_VERBOSE_LEVEL=0
CT_KERNEL_LINUX_INSTALL_CHECK=y
#
# Binary utilities
#
CT_ARCH_BINFMT_ELF=y
CT_BINUTILS="binutils"
CT_BINUTILS_binutils=y
#
# GNU binutils
#
# CT_CC_BINUTILS_SHOW_LINARO is not set
CT_BINUTILS_V_2_25_1=y
# CT_BINUTILS_V_2_25 is not set
# CT_BINUTILS_V_2_24 is not set
# CT_BINUTILS_V_2_23_2 is not set
# CT_BINUTILS_V_2_23_1 is not set
# CT_BINUTILS_V_2_22 is not set
# CT_BINUTILS_V_2_21_53 is not set
# CT_BINUTILS_V_2_21_1a is not set
# CT_BINUTILS_V_2_20_1a is not set
# CT_BINUTILS_V_2_19_1a is not set
# CT_BINUTILS_V_2_18a is not set
CT_BINUTILS_VERSION="2.25.1"
CT_BINUTILS_2_25_1_or_later=y
CT_BINUTILS_2_25_or_later=y
CT_BINUTILS_2_24_or_later=y
CT_BINUTILS_2_23_or_later=y
CT_BINUTILS_2_22_or_later=y
CT_BINUTILS_2_21_or_later=y
CT_BINUTILS_2_20_or_later=y
CT_BINUTILS_2_19_or_later=y
CT_BINUTILS_2_18_or_later=y
CT_BINUTILS_HAS_HASH_STYLE=y
CT_BINUTILS_HAS_GOLD=y
CT_BINUTILS_GOLD_SUPPORTS_ARCH=y
CT_BINUTILS_GOLD_SUPPORT=y
CT_BINUTILS_HAS_PLUGINS=y
CT_BINUTILS_HAS_PKGVERSION_BUGURL=y
CT_BINUTILS_FORCE_LD_BFD=y
CT_BINUTILS_LINKER_LD=y
# CT_BINUTILS_LINKER_LD_GOLD is not set
# CT_BINUTILS_LINKER_GOLD_LD is not set
CT_BINUTILS_LINKERS_LIST="ld"
CT_BINUTILS_LINKER_DEFAULT="bfd"
CT_BINUTILS_PLUGINS=y
CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
# CT_BINUTILS_FOR_TARGET is not set
#
# binutils other options
#
#
# C-library
#
CT_LIBC="glibc"
CT_LIBC_VERSION="2.22"
CT_LIBC_glibc=y
# CT_LIBC_musl is not set
# CT_LIBC_uClibc is not set
CT_LIBC_avr_libc_AVAILABLE=y
CT_LIBC_glibc_AVAILABLE=y
CT_THREADS="nptl"
# CT_CC_GLIBC_SHOW_LINARO is not set
CT_LIBC_GLIBC_V_2_22=y
# CT_LIBC_GLIBC_V_2_21 is not set
# CT_LIBC_GLIBC_V_2_20 is not set
# CT_LIBC_GLIBC_V_2_19 is not set
# CT_LIBC_GLIBC_V_2_18 is not set
# CT_LIBC_GLIBC_V_2_17 is not set
# CT_LIBC_GLIBC_V_2_16_0 is not set
# CT_LIBC_GLIBC_V_2_15 is not set
# CT_LIBC_GLIBC_V_2_14_1 is not set
# CT_LIBC_GLIBC_V_2_14 is not set
# CT_LIBC_GLIBC_V_2_13 is not set
# CT_LIBC_GLIBC_V_2_12_2 is not set
# CT_LIBC_GLIBC_V_2_12_1 is not set
# CT_LIBC_GLIBC_V_2_11_1 is not set
# CT_LIBC_GLIBC_V_2_11 is not set
# CT_LIBC_GLIBC_V_2_10_1 is not set
# CT_LIBC_GLIBC_V_2_9 is not set
# CT_LIBC_GLIBC_V_2_8 is not set
CT_LIBC_GLIBC_2_21_or_later=y
CT_LIBC_GLIBC_2_20_or_later=y
CT_LIBC_GLIBC_2_17_or_later=y
CT_LIBC_mingw_AVAILABLE=y
CT_LIBC_musl_AVAILABLE=y
CT_LIBC_newlib_AVAILABLE=y
CT_LIBC_none_AVAILABLE=y
CT_LIBC_uClibc_AVAILABLE=y
CT_LIBC_SUPPORT_THREADS_ANY=y
CT_LIBC_SUPPORT_THREADS_NATIVE=y
#
# Common C library options
#
CT_THREADS_NATIVE=y
CT_LIBC_XLDD=y
#
# glibc other options
#
# CT_LIBC_GLIBC_PORTS_EXTERNAL is not set
CT_LIBC_glibc_familly=y
CT_LIBC_GLIBC_EXTRA_CONFIG_ARRAY=""
CT_LIBC_GLIBC_CONFIGPARMS=""
CT_LIBC_GLIBC_EXTRA_CFLAGS=""
CT_LIBC_EXTRA_CC_ARGS=""
# CT_LIBC_DISABLE_VERSIONING is not set
CT_LIBC_OLDEST_ABI=""
CT_LIBC_GLIBC_FORCE_UNWIND=y
CT_LIBC_ADDONS_LIST=""
# CT_LIBC_LOCALES is not set
CT_LIBC_GLIBC_KERNEL_VERSION_NONE=y
# CT_LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS is not set
# CT_LIBC_GLIBC_KERNEL_VERSION_CHOSEN is not set
CT_LIBC_GLIBC_MIN_KERNEL=""
#
# C compiler
#
CT_CC="gcc"
CT_CC_CORE_PASSES_NEEDED=y
CT_CC_CORE_PASS_1_NEEDED=y
CT_CC_CORE_PASS_2_NEEDED=y
CT_CC_gcc=y
# CT_CC_GCC_SHOW_LINARO is not set
CT_CC_GCC_V_5_2_0=y
# CT_CC_GCC_V_4_9_3 is not set
# CT_CC_GCC_V_4_8_5 is not set
# CT_CC_GCC_V_4_7_4 is not set
# CT_CC_GCC_V_4_6_4 is not set
# CT_CC_GCC_V_4_5_4 is not set
# CT_CC_GCC_V_4_4_7 is not set
# CT_CC_GCC_V_4_3_6 is not set
# CT_CC_GCC_V_4_2_4 is not set
CT_CC_GCC_4_2_or_later=y
CT_CC_GCC_4_3_or_later=y
CT_CC_GCC_4_4_or_later=y
CT_CC_GCC_4_5_or_later=y
CT_CC_GCC_4_6_or_later=y
CT_CC_GCC_4_7_or_later=y
CT_CC_GCC_4_8_or_later=y
CT_CC_GCC_4_9_or_later=y
CT_CC_GCC_5=y
CT_CC_GCC_5_or_later=y
CT_CC_GCC_HAS_GRAPHITE=y
CT_CC_GCC_USE_GRAPHITE=y
CT_CC_GCC_HAS_LTO=y
CT_CC_GCC_USE_LTO=y
CT_CC_GCC_HAS_PKGVERSION_BUGURL=y
CT_CC_GCC_HAS_BUILD_ID=y
CT_CC_GCC_HAS_LNK_HASH_STYLE=y
CT_CC_GCC_ENABLE_PLUGINS=y
CT_CC_GCC_USE_GMP_MPFR=y
CT_CC_GCC_USE_MPC=y
CT_CC_GCC_HAS_LIBQUADMATH=y
CT_CC_GCC_HAS_LIBSANITIZER=y
CT_CC_GCC_VERSION="5.2.0"
# CT_CC_LANG_FORTRAN is not set
CT_CC_GCC_ENABLE_CXX_FLAGS=""
CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY=""
CT_CC_GCC_EXTRA_CONFIG_ARRAY=""
CT_CC_GCC_EXTRA_ENV_ARRAY=""
# CT_CC_GCC_STATIC_LIBSTDCXX is not set
# CT_CC_GCC_SYSTEM_ZLIB is not set
#
# Optimisation features
#
#
# Settings for libraries running on target
#
CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y
# CT_CC_GCC_LIBMUDFLAP is not set
# CT_CC_GCC_LIBGOMP is not set
# CT_CC_GCC_LIBSSP is not set
# CT_CC_GCC_LIBQUADMATH is not set
# CT_CC_GCC_LIBSANITIZER is not set
#
# Misc. obscure options.
#
CT_CC_CXA_ATEXIT=y
# CT_CC_GCC_DISABLE_PCH is not set
CT_CC_GCC_SJLJ_EXCEPTIONS=m
CT_CC_GCC_LDBL_128=m
# CT_CC_GCC_BUILD_ID is not set
# CT_CC_GCC_LNK_HASH_STYLE_DEFAULT is not set
# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set
# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set
CT_CC_GCC_LNK_HASH_STYLE_BOTH=y
CT_CC_GCC_LNK_HASH_STYLE="both"
CT_CC_GCC_DEC_FLOAT_AUTO=y
# CT_CC_GCC_DEC_FLOAT_BID is not set
# CT_CC_GCC_DEC_FLOAT_DPD is not set
# CT_CC_GCC_DEC_FLOATS_NO is not set
CT_CC_SUPPORT_CXX=y
CT_CC_SUPPORT_FORTRAN=y
CT_CC_SUPPORT_JAVA=y
CT_CC_SUPPORT_ADA=y
CT_CC_SUPPORT_OBJC=y
CT_CC_SUPPORT_OBJCXX=y
CT_CC_SUPPORT_GOLANG=y
#
# Additional supported languages:
#
CT_CC_LANG_CXX=y
# CT_CC_LANG_JAVA is not set
#
# Debug facilities
#
# CT_DEBUG_dmalloc is not set
# CT_DEBUG_duma is not set
CT_DEBUG_gdb=y
CT_GDB_CROSS=y
# CT_GDB_CROSS_STATIC is not set
# CT_GDB_CROSS_SIM is not set
CT_GDB_CROSS_PYTHON=y
CT_GDB_CROSS_EXTRA_CONFIG_ARRAY=""
# CT_GDB_NATIVE is not set
CT_GDB_GDBSERVER=y
CT_GDB_GDBSERVER_HAS_IPA_LIB=y
CT_GDB_GDBSERVER_STATIC=y
#
# gdb version
#
# CT_DEBUG_GDB_SHOW_LINARO is not set
CT_GDB_V_7_10=y
# CT_GDB_V_7_9_1 is not set
# CT_GDB_V_7_9 is not set
# CT_GDB_V_7_8_2 is not set
# CT_GDB_V_7_8_1 is not set
# CT_GDB_V_7_8 is not set
# CT_GDB_V_7_7_1 is not set
# CT_GDB_V_7_7 is not set
# CT_GDB_V_7_6_1 is not set
# CT_GDB_V_7_5_1 is not set
# CT_GDB_V_7_4_1 is not set
# CT_GDB_V_7_4 is not set
# CT_GDB_V_7_3_1 is not set
# CT_GDB_V_7_3a is not set
# CT_GDB_V_7_2a is not set
# CT_GDB_V_7_1a is not set
# CT_GDB_V_7_0_1a is not set
# CT_GDB_V_7_0a is not set
# CT_GDB_V_6_8a is not set
CT_GDB_7_2_or_later=y
CT_GDB_7_0_or_later=y
CT_GDB_HAS_PKGVERSION_BUGURL=y
CT_GDB_HAS_PYTHON=y
CT_GDB_INSTALL_GDBINIT=y
CT_GDB_VERSION="7.10"
# CT_DEBUG_ltrace is not set
# CT_DEBUG_strace is not set
#
# Companion libraries
#
CT_COMPLIBS_NEEDED=y
CT_LIBICONV_NEEDED=y
CT_GETTEXT_NEEDED=y
CT_GMP_NEEDED=y
CT_MPFR_NEEDED=y
CT_ISL_NEEDED=y
CT_MPC_NEEDED=y
CT_EXPAT_NEEDED=y
CT_NCURSES_NEEDED=y
CT_COMPLIBS=y
CT_LIBICONV=y
CT_GETTEXT=y
CT_GMP=y
CT_MPFR=y
CT_ISL=y
CT_MPC=y
CT_EXPAT=y
CT_NCURSES=y
CT_LIBICONV_V_1_14=y
CT_LIBICONV_VERSION="1.14"
CT_GETTEXT_V_0_19_6=y
CT_GETTEXT_VERSION="0.19.6"
CT_GMP_V_6_0_0=y
# CT_GMP_V_5_1_3 is not set
# CT_GMP_V_5_1_1 is not set
# CT_GMP_V_5_0_2 is not set
# CT_GMP_V_5_0_1 is not set
# CT_GMP_V_4_3_2 is not set
# CT_GMP_V_4_3_1 is not set
# CT_GMP_V_4_3_0 is not set
CT_GMP_5_0_2_or_later=y
CT_GMP_VERSION="6.0.0a"
CT_MPFR_V_3_1_3=y
# CT_MPFR_V_3_1_2 is not set
# CT_MPFR_V_3_1_0 is not set
# CT_MPFR_V_3_0_1 is not set
# CT_MPFR_V_3_0_0 is not set
# CT_MPFR_V_2_4_2 is not set
# CT_MPFR_V_2_4_1 is not set
# CT_MPFR_V_2_4_0 is not set
CT_MPFR_VERSION="3.1.3"
CT_ISL_V_0_14=y
# CT_ISL_V_0_12_2 is not set
CT_ISL_V_0_14_or_later=y
CT_ISL_V_0_12_or_later=y
CT_ISL_VERSION="0.14"
CT_MPC_V_1_0_3=y
# CT_MPC_V_1_0_2 is not set
# CT_MPC_V_1_0_1 is not set
# CT_MPC_V_1_0 is not set
# CT_MPC_V_0_9 is not set
# CT_MPC_V_0_8_2 is not set
# CT_MPC_V_0_8_1 is not set
# CT_MPC_V_0_7 is not set
CT_MPC_VERSION="1.0.3"
CT_EXPAT_V_2_1_0=y
CT_EXPAT_VERSION="2.1.0"
CT_NCURSES_V_6_0=y
CT_NCURSES_VERSION="6.0"
#
# Companion libraries common options
#
# CT_COMPLIBS_CHECK is not set
#
# Companion tools
#
#
# READ HELP before you say 'Y' below !!!
#
# CT_COMP_TOOLS is not set
It turns out that you need to provide an implementation of endian.h (with thanks to Waldemar Brodkorb on the crosstool-ng mailing list) for his steer. There were additional edits required to get a successful build - glibc was the main problem. I got a script to do the build for me working (OSX 10.9) and have posted it on Github.

Unknown symbol in while loading a kernel module

I need help understanding why I get an error when I insert a module. I have tried this with no success.
$ sudo modprobe lpfc_scst
FATAL: Error inserting lpfc_scst (/lib/modules/2.6.32-33-generic/extra/lpfc_scst.ko): Unknown symbol in module, or unknown parameter (see dmesg)
$ dmesg | tail
[ 1201.262842] lpfc_scst: Unknown symbol scst_register_target
[ 1201.262949] lpfc_scst: Unknown symbol lpfc_tm_term
[ 1201.263161] lpfc_scst: no symbol version for scst_register_session
[ 1201.263164] lpfc_scst: Unknown symbol scst_register_session
[ 1201.263284] lpfc_scst: no symbol version for scst_rx_mgmt_fn
[ 1201.263286] lpfc_scst: Unknown symbol scst_rx_mgmt_fn
[ 1201.263395] lpfc_scst: no symbol version for scst_unregister_session
[ 1201.263398] lpfc_scst: Unknown symbol scst_unregister_session
[ 1201.263573] lpfc_scst: no symbol version for scst_rx_data
[ 1201.263575] lpfc_scst: Unknown symbol scst_rx_data
$ cat /proc/kallsyms | grep scst_register_target
dffd2a10 r __ksymtab_scst_register_target [scst]
dffd302e r __kstrtab_scst_register_target [scst]
dffd2b34 r __kcrctab_scst_register_target [scst]
dffd2a20 r __ksymtab___scst_register_target_template_non_gpl [scst]
dffd3063 r __kstrtab___scst_register_target_template_non_gpl [scst]
dffd2b3c r __kcrctab___scst_register_target_template_non_gpl [scst]
dffd2c10 r __ksymtab___scst_register_target_template [scst]
dffd308b r __kstrtab___scst_register_target_template [scst]
dffd2de8 r __kcrctab___scst_register_target_template [scst]
dff913a0 t __scst_register_target_template [scst]
dff90dd0 T scst_register_target [scst]
dff91840 T __scst_register_target_template_non_gpl [scst]
$
Many thanks.
I have solved this problem as suggested on this forum:
Compiled scst.
Appended the generated Module.symvers to existent /lib/modules/<version>/build/Module.symvers (Hack. Do not know why the kernel did not see the exported symbols).
Copied the scst to /lib/modules/<version>/extra.
depmod -a.
Compiled lpfc_scst.
Inserted module lpfc_scst with no problems.
Have a nice day.
If you are trying to insmod a module that was build against a kernel source tree/headers that are not the actual source of the running kernel, the most likely cause is that some kernel configuration is different between the running kernel and the one you built the module against.
The linker inside the Linux kernel actually looks at a bunch of things besides the symbol name for matching symbols, including possibly a hash of the function parameter and return value, various config option (preempt / non preempt) when trying to match symbol names. I guess that in your case it does not find the right match due to different config options
This means that the kernel isn't allowing modules to see that variable. It does look like you haven't added your variables to the list of symbols that the kernel exports:
EXPORT_SYMBOL_NOVERS(scst_register_target);

Resources