Skip to content

Known Issues

pradeep edited this page Jul 22, 2021 · 11 revisions

Common Issues while Building ArrayFire

spdlog

With recent(dated: July 20, 2021) changes to master, spdlog system(package manager/vcpkg) package is utilized when available. However, with the spdlog version 1.8.5-2 on Arch Linux, there is a known issue reported here which results in compilation error for ArrayFire. This problem is currently observed only with the aforementioned version of spdlog on Arch Linux only. As a workaround, you just to uninstall system spdlog so that ArrayFire automatically fetches the required version during CMake configuration step.

BLAS

If your compiler cannot find the cblas_* symbols when linking, make sure the cblas library that CMake found is correct. You can set the correct cblas library in ccmake.

CentOS 6.*

Install devtoolset-2 using the instructions from here.

scl enable devtoolset-2 bash
ccmake ..
make
make test

cmake

CMake (>= 3.5.1) is required. Follow instructions from Linux,Unix section to install cmake from source.

Boost

Required version of Boost (>=1.48) may not be available using the package manager. It needs to be downloaded and installed. The following commands are for version 1.55. For a different version, simply change the version number. You may also choose a --prefix path of your choosing, but may need to manually edit the cmake path if it is not in one of the standard locations.

wget http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.gz
tar -xvzf boost_1_55_0.tar.gz
cd boost_1_55_0/
./bootstrap.sh --prefix=/usr/local
./b2 install --with=all

vcpkg on Linux

  • Forge upstream dependency on Linux is built as static library in VCPKG which is not the expected input for ArrayFire build, as it uses shared library of Forge. We already take care of this on Linux but avoiding forge dependency on non-Windows platform in vcpkg.json manifest.