You are not logged in.
Hello everyone
I'm trying to compile YADE on my Arch System. I wrote a PKGBUILD file:
pkgname=yade
pkgver=0.70.0
pkgrel=1
pkgdesc="Extensible open-source framework for discrete numerical models, focused on Discrete Element Method. The computation parts are written in c++ using flexible object model, allowing independent implementation of new algorithms and interfaces. Python is used for rapid and concise scene construction, simulation control, postprocessing and debugging."
arch=('any')
url='https://yade-dem.org'
license=('GPLv2')
depends=('freeglut' 'loki-lib' 'boost' 'fakeroot' 'python' 'ipython' 'python-matplotlib'
'sqlite'
'python-numpy' 'tk' 'gnuplot' 'gts' 'pygts' 'python-pygraphviz' 'vtk' 'eigen3'
'python-xlib' 'python-pyqt4' 'gtk-engines' 'qt4' 'python-imaging'
'python-sphinx' 'libxmu' 'libxi' 'gmp' 'cgal' 'help2man'
'suitesparse' 'metis' 'openblas')
makedepends=('cmake')
optdepends=('jquery: javascript library for documentation'
'python-bibtex: parsing bibtex with python for documentation')
source=('git://github.com/yade/trunk.git')
sha1sums=('SKIP')
build() {
mkdir -p build
cd build
cmake ../trunk \
-DCMAKE_BUILD_TYPE=Release \
-DCHUNKSIZE=2
}
package() {
cd build
make DESTDIR="$pkgdir" install
}
But their are certain problems with the Cmake build:
-- Found Qt4: /usr/bin/qmake-qt4 (found version "4.8.5")
-- Version is set to 2013-09-04.git-dfb9745
-- GTS using gts-config /usr/bin/gts-config
-- Using GTS from /usr
-- Boost version: 1.54.0
-- Found the following Boost libraries:
-- python
-- thread
-- date_time
-- filesystem
-- iostreams
-- regex
-- serialization
-- Boost_VERSION: 105400
-- Boost_LIB_VERSION: 1_54
-- Boost_INCLUDE_DIRS: /usr/include
-- Boost_LIBRARIES: /usr/lib64/libboost_python.so/usr/lib64/libboost_thread.so/usr/lib64/libboost_date_time.so/usr/lib64/libboost_filesystem.so/usr/lib64/libboost_iostreams.so/usr/lib64/libboost_regex.so/usr/lib64/libboost_serialization.so
-- Found Eigen3
-- Found VTK
-- Found OpenMP
-- GTS using gts-config /usr/bin/gts-config
-- Using GTS from /usr
-- Found GTS
-- Found Qt4: /usr/bin/qmake-qt4 (found version "4.8.5")
-- GUI-LIBS NOT found
-- GMP libs: /usr/lib64/libgmp.so /usr/lib64/libgmpxx.so
-- GMP libs: /usr/lib64/libgmp.so /usr/lib64/libgmpxx.so
-- Found CGAL
-- Could NOT find OpenBlas (missing: OPENBLAS_LIBRARY)
-- CHOLMOD NOT found, LINSOLV disabled
-- Found GL2PS
Yade will be installed to default path /usr/local, if you want to override it use -DINSTALL_PREFIX option.
-- Suffix is set to -2013-09-04.git-dfb9745
-- LIBRARY_OUTPUT_PATH is set to lib64
-- runtimePREFIX is set to /usr/local
-- Could NOT find gts (missing: PY_gts)
-- Use embedded version of gts. Please, consider installing the corresponding package
-- Could NOT find minieigen (missing: PY_minieigen)
-- Use embedded version of minieigen. Please, consider installing the corresponding package
CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
Could NOT find Tkinter (missing: PY_Tkinter)
Call Stack (most recent call first):
/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:315 (_FPHSA_FAILURE_MESSAGE)
cMake/FindPythonModule.cmake:22 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:354 (find_python_module)
-- Configuring incomplete, errors occurred!
What is the problem with PY_Tkinter why does Cmake not find the installation. Also gts is not found altought it is installed.
Thanks for any advice
Cheers reza
Offline
It looks like YADE has trouble finding the correct python bindings, this is often caused by a program requiring python 2.x , while dependencies are python 3 versions.
The pkgbuild for pygts specifically uses python2 , althought it has python-numpy as a dependency, which is the python3 version !
The https://yade-dem.org/doc/installation.html doesn't list which python version is used, best check with the YADE devs which python version they require.
Some comments about the pkgbuild :
You're creating a git package , check the VCS PKGBUILD guidelines in the wiki.
/usr/local is normally not used on archlinux, adding -DINSTALL_PREFIX=/usr to the cmake line will correct this.
Added :
LIBRARY_OUTPUT_PATH: path to install libraries (lib by default)
Seems you also should use -DLIBRARY_OUTPUT_PATH=/usr/lib
Last edited by Lone_Wolf (2013-09-06 12:33:34)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
Thanks Lone_Wolf for the tipps!
I checked and they are using python2.x version. The problem is now I have both 2.x and 3 installed. How do I tell to only use python2.x?
Offline
The YADE source doesn't seem to mention python2 or python3 at all.
However, cmake uses 2 functions to find python stuff, FindPythonInterp.cmake and FindPythonLibs.cmake (both are located in /usr/share/cmake-2.8/Modules ).
In the sourcecode of FindPythonLibs.cmake there are these lines :
# If you'd like to specify the installation of Python to use, you should modify
# the following cache variables:
# PYTHON_LIBRARY - path to the python library
# PYTHON_INCLUDE_DIR - path to where Python.h is found
adding DPYTHON_LIBRARY=/usr/bin/python2.7 and DPYTHON_INCLUDE_DIR=/usr/include/python2.7 might work.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
For me it doesn't build, and i have loki-libs installed (from aur) , also i can't i can't find loki-libs files even with GNU find as root...
- Boost_VERSION: 105400
-- Boost_LIB_VERSION: 1_54
-- Boost_INCLUDE_DIRS: /usr/include
-- Boost_LIBRARIES: /usr/lib64/libboost_python.so/usr/lib64/libboost_thread.so/usr/lib64/libboost_date_time.so/usr/lib64/libboost_filesystem.so/usr/lib64/libboost_iostreams.so/usr/lib64/libboost_regex.so/usr/lib64/libboost_serialization.so/usr/lib64/libboost_system.so
CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
Could NOT find Loki (missing: LOKI_INCLUDE_DIR LOKI_LIBRARY)
Call Stack (most recent call first):
/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:315 (_FPHSA_FAILURE_MESSAGE)
cMake/FindLoki.cmake:14 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:78 (FIND_PACKAGE)
-- Configuring incomplete, errors occurred!
See also "/home/joaquin/yade/src/build/CMakeFiles/CMakeOutput.log".
See also "/home/joaquin/yade/src/build/CMakeFiles/CMakeError.log".
Offline