-
Notifications
You must be signed in to change notification settings - Fork 1
Linux build instructions
I've written out my build instructions for Fedora 43 and Ubuntu. It's confirmed working on both, but I've been unable to package it.
Assuming a clean install of Fedora 43:
sudo dnf group install development-tools
sudo dnf install git cmake
sudo dnf install "qt6*-devel"
sudo dnf install opencv-devel
sudo dnf install levmar-devel
sudo dnf install quazip-qt6 quazip-qt6-devel
sudo dnf install glew glew-devel libGLEW
git clone https://github.com/XROMMPackages/xmalab.git
cd xmalab
mkdir build
change these parts of CMAKELISTS.txt:
#find_package(GLEW REQUIRED)
set(GLEW_FOUND TRUE)
set(GLEW_INCLUDE_DIRS "/usr/include")
set(GLEW_LIBRARIES "/usr/lib64/libGLEW.so")
set(GLEW_LIBRARY "/usr/lib64/libGLEW.so")
cd build
cmake-gui
set libraries etc accordingly.
Window borders aren't particularly clean, but it does work:
sudo apt install build-essential
sudo apt install git cmake cmake-gui
sudo apt install libopencv-dev
sudo apt install qt6-base-dev qt6-tools-dev
sudo apt install libquazip1-qt6-dev
sudo apt install libglew-dev
Levmar needs doing manually:
wget https://users.ics.forth.gr/~lourakis/levmar/levmar-2.6.tgz --no-check-certificate
tar -cvf levmar2.6.tgz
cd levmar2.6
In compiler.h add in #include <math.h> and change #define LM_FINITE finite to 'isfinite' (for gcc compiler)
Then in the makefile, change LAPACKLIBS to remove -l2fc
make levmar
cd ..
git clone https://github.com/XROMMPackages/xmalab.git
cd xmalab
mkdir build
cd build
cmake-gui
edit CMakeLists.txt for linux
target_link_libraries(${PROJECT_NAME}
${GLEW_LIBRARIES}
${QUAZIP_LIBRARIES}
${LEVMAR_LIBRARY}
`lapack`
`blas`
`Qt6::Core`
`Qt6::Widgets`
`Qt6::OpenGL`
`Qt6::OpenGLWidgets`
`Qt6::Concurrent`
`Qt6::Gui`
`Qt6::PrintSupport`
`${OpenCV_LIBS}`
`${OPENGL_LIBRARIES}`
)
make
That should produce a binary, XMALab in build/bin
There are issues with QT6 and Wayland that prevent moving windows with the mouse sometimes so you may want to run it with:
QT_QPA_PLATFORM=xcb ./XMALab