Open pblyp opened 5 years ago
Можно упаковать в appimage чтобы не заморачиваться со сборкой на зоопарке дистрибутивов. Пользователи ленивы, собирать из сырцов будет 1 из 10.
Буду благодарен, если кто подскажет как собрать/запустить под Ubuntu 18.04.
На Arch у меня пока проблема со сборкой openscenegraph версии 3.7.0, в репозиториях сейчас версия 3.6.4.
Думаю, есть также смысл разобраться с #2
В ауре мой пакет - openscenegraph-dev - собирается в двух версиях - обычной и отладочной. Инструкцию - сделаю
Можно упаковать в appimage чтобы не заморачиваться со сборкой на зоопарке дистрибутивов. Пользователи ленивы, собирать из сырцов будет 1 из 10.
Это хорошая идея, я думаю имеет смысл так и сделать на первое время
Подскажите, делаю сборку в свой дистрибутив ROSA Fresh. Столкнулся с той же проблемой, ссылается на
mkdir: невозможно создать каталог «/usr/lib/osgPlugins-3.7.0/»: Отказано в доступе
Тогда как в репозиториях https://github.com/openscenegraph/OpenSceneGraph/releases максимальная версия 3.6.4
Подскажите, делаю сборку в свой дистрибутив ROSA Fresh. Столкнулся с той же проблемой, ссылается на mkdir: невозможно создать каталог «/usr/lib/osgPlugins-3.7.0/»: Отказано в доступе
я поставил у себя chmod 777 на эту папку
- 0777 это же костыль и очень плохой костыль
Согласен
- папки такой нет как класса, потому что в системе стоит osg 3.4.0. Сейчас озаботился сборкой 3.6.4 актуальной версии. 3.7.0 в принципе нигде нет..
Есть для арча в ауре мой пакет openscenegraph-dev
openscenegraph-dev не поделитесь ссылкой на исходники?
не поделитесь ссылкой на исходники?
OSG или PKGBUILD? Сам движок, его исходники тут https://github.com/openscenegraph/OpenSceneGraph А PKGBUILD вот он https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=openscenegraph-dev по сути сценарий сборки пакета для арча
не поделитесь ссылкой на исходники?
OSG или PKGBUILD? Сам движок, его исходники тут https://github.com/openscenegraph/OpenSceneGraph А PKGBUILD вот он https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=openscenegraph-dev по сути сценарий сборки пакета для арча Вы берете ветку master, верно понимаю? Тогда, ок, попробую из мастера собрать
Вы берете ветку master, верно понимаю? Тогда, ок, попробую из мастера собрать
master
OSG собирается безо всяких проблем под линухой. Вот с мингв пришлось поковырятся
Сборка под Ubuntu (в моём случае 18.04, но должно работать примерно под любыми версиями):
sudo apt install libqtbase5-dev libopenscenegraph-dev libopenal-dev
sudo mkdir /usr/lib/osgPlugins-3.7.0
sudo chown `whoami` /usr/lib/osgPlugins-3.7.0
mkdir RRSbuild
cd RRSbuild
git clone https://github.com/maisvendoo/RRS.git --depth=1 --recurse
cd RRS
qmake
make
cd ..
git clone https://github.com/maisvendoo/RRS-data.git data
ln -s RRS/cfg
ln -s RRS/themes
mkdir logs
Если не находит osg::PIf при сборке, значит, в системе старая версия OpenSceneGraph, но это легко решается патчем https://gist.github.com/shurshur/3e5456bfd6f83404f386d6e996c979dd
Из win-версии (можно установить в wine) берём каталог c:\rrs\routes и копируем его в RRSbuild/routes, аналогично поступаем с c:\rrs\fonts.
Запуск с учётом всех глюков:
cd RRSbuild/bin
PATH=`pwd`:$PATH LD_LIBRARY_PATH=`pwd`/../lib ./launcher
Если что-то пошло не так - смотрим логи в logs. В особенно тяжёлых случаях медитируем над strace.
Делать make install при такой неупорядоченности всего что только можно я постеснялся :)
Тикеты на решение хотя бы некоторых проблем #13 #14 #15
Собрал у себя OSG из мастера, теперь сборка падает с такой ошибкой:
&& make -f Makefile
make[2]: вход в каталог «/mnt/cl/home/admin/rpmbuild/BUILD/RRS-1.0.1/viewer/osgdb_dmd»
g++ -c -O2 -Wa,--compress-debug-sections -gdwarf-4 -fvar-tracking-assignments -frecord-gcc-switches -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -ffat-lto-objects -fno-delete-null-pointer-checks -fstack-protector --param=ssp-buffer-size=4 -fPIC -DPIC -fPIC -std=gnu++11 -Wall -W -fPIC -I. -Iinclude -I/usr/lib64/qt5/mkspecs/linux-g++-64 -o dmd-parser.o src/dmd-parser.cpp
In file included from /usr/include/osg/Texture:20:0,
from /usr/include/osg/Camera:21,
from /usr/include/osg/View:17,
from /usr/include/osg/RenderInfo:18,
from /usr/include/osg/Drawable:21,
from include/dmd-mesh.h:5,
from include/dmd-parser.h:4,
from src/dmd-parser.cpp:1:
/usr/include/osg/GraphicsContext:150:26: ошибка: «Affinity» in namespace «OpenThreads» does not name a type
OpenThreads::Affinity affinity;
^
In file included from /usr/include/osg/View:17:0,
from /usr/include/osg/RenderInfo:18,
from /usr/include/osg/Drawable:21,
from include/dmd-mesh.h:5,
from include/dmd-parser.h:4,
from src/dmd-parser.cpp:1:
/usr/include/osg/Camera:545:54: ошибка: «Affinity» in namespace «OpenThreads» does not name a type
void setProcessorAffinity(const OpenThreads::Affinity& affinity);
^
/usr/include/osg/Camera:546:22: ошибка: «Affinity» in namespace «OpenThreads» does not name a type
OpenThreads::Affinity& getProcessorAffinity() { return _affinity; }
^
/usr/include/osg/Camera:547:28: ошибка: «Affinity» in namespace «OpenThreads» does not name a type
const OpenThreads::Affinity& getProcessorAffinity() const { return _affinity; }
^
/usr/include/osg/Camera:853:22: ошибка: «Affinity» in namespace «OpenThreads» does not name a type
OpenThreads::Affinity _affinity;
^
make[2]: *** [Makefile:335: dmd-parser.o] Ошибка 1
make[2]: выход из каталога «/mnt/cl/home/admin/rpmbuild/BUILD/RRS-1.0.1/viewer/osgdb_dmd»
make[1]: *** [Makefile:49: sub-osgdb_dmd-make_first-ordered] Ошибка 2
make[1]: выход из каталога «/mnt/cl/home/admin/rpmbuild/BUILD/RRS-1.0.1/viewer»
make: *** [Makefile:796: sub-viewer-make_first-ordered] Ошибка 2
Не очень понимаю, как это пофиксить
Всем доброго времени суток, не подскажите, как установить libqtbase5-dev, а то при попытке это сделать появляется Невозможно найти пакет libqtbase5-dev.
@mehan-l в дебиане это qtbase5-dev
а в убунту?
@mehan-l в убунту пакет здесь https://lmgtfy.com/?q=qtbase5-dev+ubuntu&s=g&iie=1
ок, спасибо
Make вылетает с таким выводом:
Project ERROR: Unknown module(s) in QT: serialbus Makefile:711: recipe for target 'sub-modbus-make_first-ordered' failed make[1]: *** [sub-modbus-make_first-ordered] Error 3 make[1]: Leaving directory '/home/fedor/Desktop/rrs/rrsbuild/RRS/simulator' Makefile:368: recipe for target 'sub-simulator-make_first-ordered' failed make: *** [sub-simulator-make_first-ordered] Error 2
Как исправить?
v1.0.4
mv: cannot create regular file '/usr/lib64/osgPlugins-3.7.0/osgdb_dmd.so': Permission denied make[2]: [Makefile:186: /usr/lib64/osgPlugins-3.7.0/osgdb_dmd.so] Error 1 (ignored) make[2]: Leaving directory '/home/builder/rpmbuild/BUILD/RRS-1.0.4/build/viewer/osgdb_dmd' cd library/ && ( test -e Makefile || /usr/bin/qmake-qt5 -o Makefile /home/builder/rpmbuild/BUILD/RRS-1.0.4/viewer/library/library.pro libsuff=64 'QMAKE_CFLAGS=-O2 -Wa,--compress-debug-sections -gdwarf-4 -fvar-tracking-assignments -frecord-gcc-switches -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -ffat-lto-objects -fno-delete-null-pointer-checks -fstack-protector --param=ssp-buffer-size=4 -fPIC -DPIC -fPIC' 'QMAKE_CXXFLAGS=-O2 -Wa,--compress-debug-sections -gdwarf-4 -fvar-tracking-assignments -frecord-gcc-switches -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -ffat-lto-objects -fno-delete-null-pointer-checks -fstack-protector --param=ssp-buffer-size=4 -fPIC -DPIC -fPIC' QMAKE_CXXFLAGS_RELEASE= 'QMAKE_LFLAGS= -Wl,--as-needed -Wl,--no-undefined -Wl,-z,now -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags -Wl,--hash-style=gnu' ) && /usr/bin/make -f Makefile make[2]: Entering directory '/home/builder/rpmbuild/BUILD/RRS-1.0.4/build/viewer/library' g++ -c -O2 -Wa,--compress-debug-sections -gdwarf-4 -fvar-tracking-assignments -frecord-gcc-switches -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -ffat-lto-objects -fno-delete-null-pointer-checks -fstack-protector --param=ssp-buffer-size=4 -fPIC -DPIC -fPIC -std=gnu++11 -D_REENTRANT -Wall -W -fPIC -DLIBRARY_LIB -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../../viewer/library -I. -I../../../common-headers -I../../../filesystem/include -I../../../viewer/library/include -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -I. -isystem /usr/include/libdrm -I/usr/lib64/qt5/mkspecs/linux-g++-64 -o library.o ../../../viewer/library/src/library.cpp rm -f liblibrary.so.1.0.0 liblibrary.so liblibrary.so.1 liblibrary.so.1.0 g++ -Wl,--as-needed -Wl,--no-undefined -Wl,-z,now -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags -Wl,--hash-style=gnu -Wl,-O1 -Wl,--as-needed -Wl,--no-undefined -Wl,-z,now -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags -Wl,--hash-style=gnu -shared -Wl,-soname,liblibrary.so.1 -o liblibrary.so.1.0.0 library.o -L/usr/X11R6/lib64 -losg -losgDB -L../../../lib -lfilesystem -lQt5Gui -lQt5Core -lGL -lpthread library.o: In function
Library::load()':
/home/builder/rpmbuild/BUILD/RRS-1.0.4/build/viewer/library/../../../viewer/library/src/library.cpp:54: undefined reference to dlopen' library.o: In function
Library::resolve(std::__cxx11::basic_string<char, std::char_traits
RPM build errors: Bad exit status from /var/tmp/rpm-tmp.99930 (%build) ` и снова проблема
v1.0.6 все также проблема сборки под Linux
В рецепте @shurshur на Linux Mint мне для полного успеха не хватило:
apt install libqt5serialbus5-dev libqt5serialport5-dev
Можно упаковать в appimage чтобы не заморачиваться со сборкой на зоопарке дистрибутивов. Пользователи ленивы, собирать из сырцов будет 1 из 10.
я пытаюсь собрать, да не выходит
Привет!
Будет здорово, если появится инструкция по сборке на Linux. Не сразу понял, что, к примеру, надо собирать с qmake и подхватывать зависимости командой
git submodule update --init
плюс хотелось бы список зависимостей.На Arch у меня пока проблема со сборкой openscenegraph версии 3.7.0, в репозиториях сейчас версия 3.6.4.
Думаю, есть также смысл разобраться с #2