Jump to content

Qt - SIM(2.16.0.1) - Unigine fatal error: Unigine::Engine::init(): loading binary compilation flags (Double-Release) do not match the engine ones (Float-Release)


photo

Recommended Posts

Добрый день сталкнулся с такой ошибкой чтобы сделать

запускаю программу, и получаю ошибку:

/home/astra/UNIGINE/Work/unigine-basic-qt/main_qt/bin/main_qt_x64
/home/astra/UNIGINE/Work/unigine-basic-qt/main_qt/bin/bin::/home/astra/.local/share/unigine/browser/sdks/sim_linux_2.16_evaluation/bin:/home/astra/UNIGINE/W
ork/3rdparty/xinerama/lib/x86_64-linux-gnu
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'

Unigine fatal error: Unigine::Engine::init(): loading binary compilation flags (Double-Release) do not match the engine ones (Float-Release)

для запуска использую скрипт :

#!/bin/bash

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/astra/.local/share/unigine/browser/sdks/sim_linux_2.16_evaluation/bin
export LD_LIBRARY_PATH

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/astra/UNIGINE/Work/3rdparty/xinerama/lib/x86_64-linux-gnu
export LD_LIBRARY_PATH

SCRIPT_DIR=$( cd "$( dirname "$0" )" && pwd )
MAIN="$SCRIPT_DIR/main_qt_x64"
echo ${MAIN}

export LD_LIBRARY_PATH="$SCRIPT_DIR/bin:$LD_LIBRARY_PATH"
echo ${LD_LIBRARY_PATH}

# Консольные комманды должны быть в "" пример: -console_command "config_autosave 0 && world_load ex001"
if [ -f "$MAIN" ]; then
     "$MAIN" -video_app gl -video_refresh 0 -video_debug 0 -main_window_size 1280 720 -main_window_resizable 1 -main_window_fullscreen 0 -render_vsync 0 -video_offscreen 0 -sound_app auto -data_path ../data/ -cache_path ../../../../../data -microprofile_enabled 1 -extern_plugin OpenFlight,FbxImporter,CadImporter,GLTFImporter,FbxExporter -console_command "config_autosave 0 && world_load ex001"
else
    echo "Application executable not found"
fi  

--------------

копирую комплект библиотек Qt (qt_foldier)

------------

main_qt - из примеров sdk

-----------

Спасибо!

 

 

qt_foldier.png

main_qt.pro

Edited by mihail.litvinov
Link to comment

Здравствуйте Михаил,

Ошибка "loading binary compilation flags (Double-Release) do not match the engine ones (Float-Release)" означает что приложение собранно с дефайном препроцессора "UNIGINE_DOUBLE" но слинковано с Float движком(libUnigine_x64.so). По умолчанию такой ошибки не должно возникать с QT-Based проектом. К тому же на вашем скриншоте видно наличие double библиотек движка в проекте, но отсутсвуют float библиотеки. 

 

Сходу не получается воспроизвести данную ошибку на нашей стороне с стандартным QT-based проектом. Можете пожалуйста более подробно расписать какие действия привели к этой ошибке, пересобирали ли вы приложение и с какой конфигурацией?

 

Спасибо

Link to comment

Добрый день!

https://cloud.mail.ru/public/dWKU/u5LVFpxd8

я заархивировал проект

что сделал

создал с нуля простой проект базирующийся на Qt-base

и из примера ViewportQt  - MainWindow и еще 1 файл ...

получаю вот  такой вариан

Нужна помощь ((

З.Ы.

задача такая - получить буфер Engine -> сконвертировать в QImage -> и сигналом отправить дальше

Спасибо!

 

 

Screenshot_20221027_193220.png

Link to comment

Добрый день,

Действительно проблема в том что приложение собирается с дефайном UNIGINE_DOUBLE(строка 71 в testQtSendtoWidger.pro) но линкуется с Float библиотекой движка(libUnigine_x64.so) на 64 строке в testQtSendtoWidger.pro. Попробуйте исправить 64 строку

UNIGINE_LIB = Unigine

на 

UNIGINE_LIB = Unigine_double

после пересборки всё должно заработать

  • Like 1
Link to comment
×
×
  • Create New...