fixfix
2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3, 4, 5  След.
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение21.11.2022, 19:09 


31/08/22
183
Повторил.
CMakeCache.txt

(Оффтоп)



Напишите пожалуйста любое сообщение, чтобы я мог вторую часть опубликовать. (превышен лимит символов в сообщении)

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение21.11.2022, 19:19 
Заслуженный участник


14/10/14
1220
----

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение21.11.2022, 20:47 


31/08/22
183
Спасибо. Вторая часть.
CMakeOutput.log

(Оффтоп)



CMakeError.log

(Оффтоп)


 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение21.11.2022, 21:07 
Заслуженный участник


14/10/14
1220
Ерунда какая-то... Откуда взялось /usr/bin/make и то, что дальше? Естественно, так работать не будет, у вас нету /usr/bin/...

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение21.11.2022, 21:58 


31/08/22
183
Понятия не имею. Все, что я делал описал в предыдущем сообщении.
Как это исправить?

В CMakeLists.txt нашел упоминание. Концовку стер, не влезало в сообщение.

(Оффтоп)



Питон установлен если что. Anaconda.

..........
Нашел в пакетах питона такой файл "0007-Darwin-Look-in-sysroot-usr-lib-include-if-sysroot-is.patch"

(Оффтоп)


 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение21.11.2022, 22:16 
Заслуженный участник


14/10/14
1220
Видимо, нужен кто-то, кто работает с cmake.

Я не понимаю, почему вы просто поменяли CMAKE_MAKE_PROGRAM, а build command (т. е. команда, которая её вызывает) после этого поменялась каким-то невообразимым образом? Я бы ожидал, что поменяется только название вызываемой программы. Не знаю, что делать, в качестве жеста отчаяния можно ппробовать поменять CMAKE_MAKE_PROGRAM на "заглушку" (например, на пустой пакетный файл) и посмотреть, что будет.

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение21.11.2022, 22:38 


31/08/22
183
Воткнул тупо первый попавшийся мой пустой консольный проект TensorDecompositionSolver.exe.
О чудо, пошло дальше, даже полоса сборки пошла.
Но облом.
Error.log

(Оффтоп)



Output.log

(Оффтоп)


 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение21.11.2022, 22:43 
Заслуженный участник


14/10/14
1220
Schrodinger's cat в сообщении #1570775 писал(а):
Но облом.
Ну это-то конечно, тут всё вроде бы хорошо, нормальная команда получается. А если make.exe, то получается незнамо что?

Может, у вас make.exe -- это не GNU make, а какая-то ерунда? Что он скажет, если из командной строки запустить make.exe -v?

-- 21.11.2022, 23:49 --

А, или может это make пытается рекурсивно себя вызывать, но при уходе в рекурсию откуда-то берёт неправильный путь к себе?

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение22.11.2022, 01:19 


12/07/21
108
Schrodinger's cat

Как я понял, wsl2 + ubuntu вы поставили. Перекиньте из папки INSTALL во внешнюю папку файл make.inc.gfortran и переименуйте его в make.inc. Запустите "make". Получите 3 статических библиотеки и статистику всех тестов (ошибок не обнаружено).

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение22.11.2022, 09:30 


31/08/22
183
Slav-27 в сообщении #1570776 писал(а):
А если make.exe, то получается незнамо что?

Собственно Вы видели что получается. :D

Slav-27 в сообщении #1570776 писал(а):
Может, у вас make.exe -- это не GNU make, а какая-то ерунда?

Перечень доступных Make'ов я приводил выше скриншотом из cygwin (отфильтровано по "make").
https://postlmg.cc/ph0VC3Yh
Написано "The GNU version of the make utility" получается что GNU.
Еще пробовал тот который ниже по списку "mingw64-i686-qt4-qmake".
Так же CMake установлен с сайта разрабов, версия 3.25
https://cmake.org/download/
Возможен ли конфликт версий? Может из за этого околесица...
Могу установить любой, ткните пальцем.
Еще у меня такое ощущение, а все ли устанавливает этот cygwin? может что то не доставлено. Ощущение возникает из за того что в списке я вижу отдельными пунктами с теми же названиями какие то debug'и, lib...

Остальное вечером, как только дойду до домашнего компа.

ПС: И хоть результата пока нет, и я про это не пишу, но я безмерно благодарен за помощь.

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение22.11.2022, 19:34 


27/08/14
207
Если ещё актуально, сборка при помощи mxe:
    1. Скачиваем mxe и ставим зависимости
    2. В Makefile правим MXE_TARGETS на нужный (MXE_TARGETS := x86_64-w64-mingw32.shared). Можно собрать и статически, только на выходе будет liblapack.a
    3. Делаем make lapack и долго ждём.
    4. В usr/x86_64-w64-mingw32.shared/bin забираем результат.
Если хочется собрать последнюю версию lapack, а не версию из репозитория mxe, то
    1. В каталоге mxe делаем make cmake
    2. В каталоге lapack создаём каталог build и из него запускаем получившийся cmake (вместо моего, указать свой путь):
    Код:
    PATH=$PATH:/home/progger/develop/other/mxe/usr/bin x86_64-w64-mingw32.shared-cmake -DTEST_FORTRAN_COMPILER=OFF ..
    PATH=$PATH:/home/progger/develop/other/mxe/usr/bin x86_64-w64-mingw32.shared-cmake --build . -j

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение22.11.2022, 19:55 


31/08/22
183
Slav-27 в сообщении #1570776 писал(а):
Что он скажет, если из командной строки запустить make.exe -v?

Код:
GNU Make 4.3
Built for x86_64-pc-cygwin
Copyright (C) 1988-2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.


Вообще у строки "/usr/bin/" подозрительное сходство с окружением Питона.
Там такое можно встретить "#!/usr/bin/env python3". Но чтобы было так "/usr/bin/make" ничего.
"make.exe" нашелся только в папке cygwin, больше файлов с таким названием на компьютере нет.

-- 22.11.2022, 20:07 --

traffic_lights в сообщении #1570805 писал(а):
Как я понял, wsl2 + ubuntu вы поставили.

Да, поставил.

traffic_lights в сообщении #1570805 писал(а):
Перекиньте из папки INSTALL во внешнюю папку файл make.inc.gfortran и переименуйте его в make.inc.

Это можно в винде сделать? Перекинул переименовал.

traffic_lights в сообщении #1570805 писал(а):
Запустите "make".

А вот этот пункт пожалуйста подробнее.
Раз речь про wsl то наверно его запустить и установить make?
Потом в качестве аргументов что писать?

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение22.11.2022, 21:47 


12/07/21
108
Schrodinger's cat


Можно все в винде делать.
1. распаковать архив. У меня он находится на диске e
2. запускаем ubuntu: появляется окно и в ней строка ввода (домашний директорий):
yurii@DESKTOP-5UFU1LE:~$
3. переходим в виндовую директорию:
yurii@DESKTOP-5UFU1LE:~$cd /mnt/e/lapack-3.11
Результат работы команды cd:
yurii@DESKTOP-5UFU1LE:/mnt/e/lapack-3.11$
4. копируем файл make.inc.gfortran (можно виндовыми средствами) из lapack-3.11/install в lapack-3.11
5. rename его в make.inc
6. Выполняем команду "make":
yurii@DESKTOP-5UFU1LE:/mnt/e/lapack-3.11$make
7. Ждем до победного конца: образуются три статических библиотеки в директории lapack-3.11 и выводится статистика по всем тестам.

P.S.
да, надо сначала выполнить следующие команды:
0. sudo apt update && sudo apt -y upgrade
1. sudo apt install gfortran
2. sudo apt install m4
3. sudo apt install make
4. sudo apt install texinfo
5. sudo apt install automake
6. sudo apt install g++
7. sudo apt-get install libomp-dev
Некоторые сейчас не пригодятся, но потом будут полезны

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение24.11.2022, 20:09 


31/08/22
183
traffic_lights
Сработало все с первого раза и без заморочек. Вот это сервис.
Эмммм... вот только созданы как я понимаю библиотеки линукса... мне бы *.lib и *.dll...

Подскажите пожалуйста как теперь поменять таргет.

Кстати говоря, в перечне программ вижу automake, в cygwin я ее не устанавливал, хотя там такая в списке имеется... Просто наблюдение.

ПС: Похоже я начинаю любить линукс. Вырисовывается любовный треугольник. Виндовс "любит" меня, я люблю линукс :D

 Профиль  
                  
 
 Re: Собрать lapack.dll и не застрелиться
Сообщение24.11.2022, 23:26 


12/07/21
108
Schrodinger's cat

Я смотрю, у вас "каша" в голове с библиотеками. Поставьте Visual Studio 2022 + oneapi: там уже есть готовые решения для генерации своих библиотек из Intel MKL на все случаи жизни (хоть динамические. хоть статические, хоть с распараллеливанием, хоть без, хоть ...). Будут у вас свои виндовые библиотеки, скорости которых в десятки раз превышают скорость полученных вами в ubuntu библиотек.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 68 ]  На страницу Пред.  1, 2, 3, 4, 5  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group