Russian Qt Forum
Март 29, 2024, 07:37 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Таинственные dependencies  (Прочитано 2281 раз)
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« : Февраль 11, 2021, 12:50 »

Добрый день

Собираю приложение (имя SORT) с помощью CMake, вякает что не находит либы, предлагает установить TSL_DIR. Ну ладно, нашел ту либу (самопальная того же автора), кое-как собрал, прописываюю путь фолдера в котором tsl-config.cmake (ну т.е. следую инструкции). Ни фига, все равно либу не видит и опцию TSL_DIR очищает. Заглянул в CmakeLists.txt, там такое

Цитировать
# loading tsl lirary, this is mandatory
set(TSL_DIR ${SORT_SOURCE_DIR}/dependencies/tsl/)
find_package(TSL REQUIRED CONFIG)
message(STATUS "Tiny Shading Langauge version: ${TSL_VERSION}")

Какрй нафиг dependencies ? Откуда он его взял? Ну нету такого фродера нигде в установке. Может его самому надо делать? Тогда как (или из чего) Непонимающий

И еще вопросик: как получить больше инфы? Ну напр кто такой TSL REQUIRED CONFIG, где он его искал и.т.п. ?

Спвсибо
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #1 : Февраль 12, 2021, 17:34 »

Пришлось "копать". Начал с той либы (Tiny-Shading-Language). Там тоже dependencies. Пере-читал инструкцию, в теории все выглядит очень мило - мол, в консоли введите "make" - и все.  Конечно я "пробывал", хотя заранее знал - на OSX не покатит (как на линухе не знаю). Ну ладно, толкнул make еще раз и прочитал где он там загнулся. Оказывается он запускает пытон-скрыпт который эти самые dependencies и создает, и пытается скачать - та це марнi надii бо iнета нема. Хорошо, пробую скачать руками

https://raw.githubusercontent.com/JiayinCao/Tiny-Shading-Language/dependencies/llvm_10_0_0/mac/x86_64/

А ссылка-то невалидна. А если действовать через CMake, тот приклепается с той же бедой. Кое-как заткнуть это удается, но похоже собранная либа не работает. Там какие-то yacc, bison и еще бог весть что

ЧЯДНТ ?
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #2 : Февраль 13, 2021, 09:00 »

Скачал весь llvm10 (186 метров) и распаковал его в deoendencies. И CMake создал Xcode проект - и не пискнул! Правда радоваться не пришлось - проект не компилится. Сначала не проходит стартовый скрипт, файл grammar.y, ошибка в строке
Цитировать
%define api.pure
Говорит нужна строка. Ну ладно, изменил на "api.pure". Но он наструячил сотню define типа
Цитировать
#define ID 329
Которые сразу же заклинили исходники. Плюс неск ошибок в ф-циях печати ошибки. Ну закомментил эти макросы и подправил ф-ции. Либа откомпилилась, но тесты не идут, и главное приложение валится в коде либы.

Ладно, в Cmake вместо Xcode ставлю "Linux Makefiles", эту либу мне дебажить совершенно не нужно, абы собралась. Получаю тот же рез-т что и при вызове make из консоли
Цитировать
Сheck for working CXX compiler: /usr/bin/clang - broken
CMake Error at /Applications/CMake.app/Contents/share/cmake-3.19/Modules/CMakeTestCXXCompiler.cmake:59 (message):
  The C++ compiler

    "/usr/bin/clang"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: /Users/igor/Desktop/Tiny-Shading-Language-master/build/CMakeFiles/CMakeTmp
    
    Run Build Command(s):/usr/bin/make cmTC_90f10/fast && /Volumes/Data HD/Xcode.app/Contents/Developer/usr/bin/make  -f CMakeFiles/cmTC_90f10.dir/build.make CMakeFiles/cmTC_90f10.dir/build
    make: /Volumes/Data: No such file or directory
    make: *** [cmTC_90f10/fast] Error 1

  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:61 (project)


Configuring incomplete, errors occurred!
Загнулся на пути с пробелами. Ну это уж можно "разгуглить"! Ага, куда там
https://cmake.org/pipermail/cmake/2010-March/035868.html. Все как у меня - только что делать - хз. Типовая линуксячина - вопрос есть, ответов нет.

И так всякий раз когдв я ныряю в этот "чан с дерьмом" называеиый "сборкой". Я понимаю что в линухе "так принято", и мои стоны ничего не изменят. Но елы-палы, почему такой гемор?  Какие ошибки я допускаю? Как действовать грамотно? (напр в данном случае)
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4349



Просмотр профиля
« Ответ #3 : Февраль 13, 2021, 10:21 »

Даже не знаю, что вам и посоветовать. Улыбающийся
Я особо не сомневался, что дело не в библиотеке...Улыбающийся

Код:
$ git clone --recurse-submodules https://github.com/JiayinCao/Tiny-Shading-Language.git
Клонирование в «Tiny-Shading-Language»…
remote: Enumerating objects: 85, done.
remote: Counting objects: 100% (85/85), done.
remote: Compressing objects: 100% (64/64), done.
remote: Total 3529 (delta 30), reused 52 (delta 15), pack-reused 3444
Получение объектов: 100% (3529/3529), 1.50 GiB | 1.47 MiB/s, готово.
Определение изменений: 100% (2394/2394), готово.
$ cd Tiny-Shading-Language/
$ mkdir build
$ cd build/
$ cmake ..
-- The C compiler identification is GNU 10.2.0
-- The CXX compiler identification is GNU 10.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Create tsl_version.h from tsl_version.h.in
-- Found LLVM 11.0.1
-- Using LLVMConfig.cmake in: /usr/lib64/cmake/llvm
-- Configuring done
-- Generating done
-- Build files have been written to: /home/bre/src/Tiny-Shading-Language/build
$ make -j8
[  2%] Generating ../../../generated_src/compiled_lex.cpp, ../../../generated_src/compiled_grammar.cpp, ../../../generated_src/compiled_grammar.hpp
Scanning dependencies of target LLVM_Test
Generating flex and bison source code
[  6%] Building CXX object src/llvm_test/CMakeFiles/LLVM_Test.dir/llvm_test.cpp.o
[  6%] Building CXX object src/llvm_test/CMakeFiles/LLVM_Test.dir/main.cpp.o
[  8%] Building CXX object src/llvm_test/CMakeFiles/LLVM_Test.dir/__/thirdparty/gtest/gtest-all.cc.o
Scanning dependencies of target TSL_Lib
[ 17%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/compiler/ast.cpp.o
[ 17%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/compiler/compile_context.cpp.o
[ 17%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/compiler/compiler.cpp.o
[ 17%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/compiler/ast_memory_janitor.cpp.o
[ 19%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/compiler/global_module.cpp.o
[ 21%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/compiler/str_helper.cpp.o
[ 23%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/system/callback.cpp.o
[ 26%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/system/shading_context.cpp.o
[ 28%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/system/shading_system.cpp.o
[ 30%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/__/__/generated_src/compiled_lex.cpp.o
[ 32%] Building CXX object src/tsl_lib/CMakeFiles/TSL_Lib.dir/__/__/generated_src/compiled_grammar.cpp.o
[ 34%] Linking CXX shared library libTSL_Lib.so
[ 36%] Linking CXX executable ../../../bin/LLVM_Test
[ 36%] Built target TSL_Lib
Scanning dependencies of target TSL_Sample
Scanning dependencies of target TSL_Test
[ 41%] Building CXX object src/tsl_sample/CMakeFiles/TSL_Sample.dir/rt_bxdf.cpp.o
[ 41%] Building CXX object src/tsl_sample/CMakeFiles/TSL_Sample.dir/rt_core.cpp.o
[ 43%] Building CXX object src/tsl_sample/CMakeFiles/TSL_Sample.dir/rt_tsl.cpp.o
[ 45%] Building CXX object src/tsl_sample/CMakeFiles/TSL_Sample.dir/main.cpp.o
[ 47%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/basic.cpp.o
[ 50%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/array.cpp.o
[ 52%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/main.cpp.o
[ 54%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/callback.cpp.o
[ 54%] Built target LLVM_Test
[ 56%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/closures.cpp.o
[ 58%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/comments.cpp.o
[ 60%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/empty.cpp.o
[ 63%] Linking CXX executable ../../../bin/TSL_Sample
[ 65%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/expression.cpp.o
[ 67%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/functions.cpp.o
[ 69%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/global_value.cpp.o
[ 69%] Built target TSL_Sample
[ 71%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/logic.cpp.o
[ 73%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/math.cpp.o
[ 76%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/multi_thread.cpp.o
[ 78%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/numbers.cpp.o
[ 80%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/output.cpp.o
[ 82%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/real_algorithms.cpp.o
[ 84%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/shader_group.cpp.o
[ 86%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/shader_resource.cpp.o
[ 89%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/struct.cpp.o
[ 91%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/system.cpp.o
[ 93%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/test_common.cpp.o
[ 95%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/test/variables.cpp.o
[ 97%] Building CXX object src/tsl_test/CMakeFiles/TSL_Test.dir/__/thirdparty/gtest/gtest-all.cc.o
[100%] Linking CXX executable ../../../bin/TSL_Test
[100%] Built target TSL_Test
$
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 22.