Known Issues
Pages 25
- The ArrayFire Community
-
Getting ArrayFire
- Installers
- Installing via Package Managers
- Source
- Using ArrayFire on
- Building from Source
- Linux
- OSX
- Windows
- Building Dependencies
- Known Issues
- Contributing Code to ArrayFire
- Development Guidelines
- Recognition
Clone this wiki locally
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 testcmake
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=allvcpkg 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.jsonmanifest.