С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/29: Рейтинг темы: голосов - 29, средняя оценка - 4.72
2 / 2 / 1
Регистрация: 28.09.2013
Сообщений: 255
1

Установка сторонних библиотек

11.03.2016, 21:16. Показов 5654. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Мне нужна библиотека по нейросетям. В интернете нашел вот такую библиотеку. http://www.nongnu.org/libann/doc/installing.html
Там описан процесс установки. Но я в этой фигне ничего не понимаю. Насколько понял, это последовательность установки для Unix подобных с-м. А если у меня Windows, то бишь ничего ставить не нужно? Просто разархивировал, прописал include и все должно работать, или как?
P.S. в архиве лежат исходники, а не .dll и т.п.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.03.2016, 21:16
Ответы с готовыми решениями:

Подключение сторонних библиотек
Я пишу в Visual Studio и в некоторый проектах использую SDL. У меня есть папка с библиотеками и...

Использование сторонних библиотек
Всем салют! Я новичок на этом форуме, а также в языке Си++. У меня возникли вопросы. Дело в том,...

Графика без сторонних библиотек
Интересует следующий вопрос: можно ли без сторонних библиотек, чистым С++ вывести пиксели разных...

Скрытие warning сторонних статических библиотек в g++
Здравствуйте! Я статически подключаю библиотеку (liblibrary.a), и тут компилятор gnu g++ выдает...

13
Любитель чаепитий
3744 / 1800 / 566
Регистрация: 24.08.2014
Сообщений: 6,016
Записей в блоге: 1
11.03.2016, 21:22 2
vab9petryk,
4.Build the library

make
Собирать придется.
0
2 / 2 / 1
Регистрация: 28.09.2013
Сообщений: 255
11.03.2016, 21:25  [ТС] 3
Цитата Сообщение от GbaLog- Посмотреть сообщение
Собирать придется.
как их собирать под виндой? Есть литература почитать? Таких примеров сборки видел уже много, но собирать еще не научился.
0
Любитель чаепитий
3744 / 1800 / 566
Регистрация: 24.08.2014
Сообщений: 6,016
Записей в блоге: 1
11.03.2016, 21:30 4
vab9petryk, Например, вот туториал по cmake.
1
Эксперт С++
8972 / 4318 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
12.03.2016, 01:32 5
Цитата Сообщение от vab9petryk Посмотреть сообщение
А если у меня Windows
Libann is designed to be a ANSI C++ compliant library. As such, it should compile on any compliant compiler. That said, not all compilers are strictly compliant, and Microsoft is notable in this respect. Furthermore, I don't have a Visual C++ compiler to test it with. However, considerable attention has been given to keeping the code as portable as possible, and it should be easy to compile with very few changes. Please email reports of your success (or lack thereof) to the user's mailing list.
если вкратце - дистрибутив не содержит на борту сборку для вижуал студии.
более того, судя по обзору проекта - грасноглазое УГ.

так то шансы, что это вообще удастся собрать под винду
без переписывания кода серьёзного хирургического вмешательства ...
в общем я бы на это не рассчитывал.

так что если у вас нет опыта прохождения увлекательнейших квестов:
"сборка очередного опенсорс-недоразумения",
то боюсь ваш прогноз будет не утешительным.

проще будет найти какую нибудь более цивилизованную библиотеку.
и когда такие вещи ищите,
обращайте внимание на волшебный тэг "кросс платформа".
1
2 / 2 / 1
Регистрация: 28.09.2013
Сообщений: 255
12.03.2016, 15:15  [ТС] 6
Цитата Сообщение от GbaLog- Посмотреть сообщение
Например, вот туториал по cmake.
"CMake — кроссплатформенная автоматизированная система сборки проектов. Непосредственно сборкой она не занимается, а только генерирует Makefile, который потом будет выполнен утилитой make."
Так стоп, сборкой она не занимается же.
0
Эксперт С++
8972 / 4318 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
12.03.2016, 15:19 7
Цитата Сообщение от vab9petryk Посмотреть сообщение
Так стоп, сборкой она не занимается же.
занимается.
и не только сборкой.
и не только makefile
0
2 / 2 / 1
Регистрация: 28.09.2013
Сообщений: 255
12.03.2016, 15:51  [ТС] 8
Цитата Сообщение от hoggy Посмотреть сообщение
проще будет найти какую нибудь более цивилизованную библиотеку
хорошо. Можете подкинуть абсолютно любую библиотеку, вплоть до библиотеки с одной функции, и гайда по тому как такие вещи собирать? Я нуб в этом деле. Мне более-менее удалось разобраться что такое makefile, make, cmake, nmake, qmake и для чего они нужны. Но я не до конца понимаю, что описано в этом гайде - компиляция исходных фалов в объектные или в библиотеки? И как такие вещи делать на винде? Знаю вроде что на винде можно использовать nmake от MSVS, или mingw32-make (портированный make на винду). То есть, Qt Creator в частности использует mingw32-make (потому как nmake я там не нашел)?
И почему это дело вообще называют библиотекой? Там же просто исходные файлы, никаких .dll там нет. Захочу, сделаю библиотеку, а не захочу, не буду.

К вышеприведенным вопросам хотел бы добавить следующие.
Правильно я понимаю, что:
1) makefile можно создать ручками, а можно использовать cmake, qmake и т.п. программы для упрощения создания такого файла?
2) cmake, qmake и т.п. программы не способны выполнить инструкции записанные в makefile?
3) для винды существует только mingw32-make и nmake для выполнения инструкций записанных в makefile?
4) у makefile есть конкуренты?
5) команды записанные в makefile, независимо от того кем они записаны (программой, человеком) и для какого компилятора, способны быть выполнены одинаковым образом с помощью make, nmake, mingw32-make, главное чтобы все было должным образом настроено (например, на винде чтобы в переменные среды был задан путь к компилятору, использующемся в makefile).
6) Скомпилировать библиотеку, как и объектный файл, можно с помощью g++ напрямую в консоли, а можно просто создав соответствующий makefile в котором написаны необходимые инструкции, и запустить makefile на исполнение nmake, make или mingw32-make?
7) Что делает эта строчка в Linux?
Configure the software to suit your system:
./configure

Правит makefile или что? Какой аналог этой строчки в винде?

Добавлено через 1 минуту
Цитата Сообщение от hoggy Посмотреть сообщение
занимается.
и не только сборкой.
и не только makefile
Я совсем уже запутался. Она просто создает makefile. Она не выполняет инструкций makefile, то есть не собирает проект.
0
19409 / 10028 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
12.03.2016, 15:58 9
Цитата Сообщение от vab9petryk Посмотреть сообщение
Она не выполняет инструкций makefile
Разве это принципиально? Если у тебя уже есть корректный makefile, то беспокоиться не о чем - запускаешь make и идешь пить кофе. Обеспечить тебя корректным makefile`ом для заданной платформы и есть задача cmake. А это самое сложное в этой цепочке.
0
2 / 2 / 1
Регистрация: 28.09.2013
Сообщений: 255
12.03.2016, 16:46  [ТС] 10
Цитата Сообщение от DrOffset Посмотреть сообщение
Разве это принципиально?
Это не принципиально. Просто я пытаюсь понять что к чему.
Цитата Сообщение от DrOffset Посмотреть сообщение
Если у тебя уже есть корректный makefile, то беспокоиться не о чем - запускаешь make и идешь пить кофе
make это утилита Unix, а я на винде.
Я просто пытаюсь понять что к чему. Утилит таких много. Какого то обзора по ним, или книги типа: "Сборка проектов на Unix, Windows, MacOs, компиляция библиотек" я найти не могу. Лишь некоторые примеры в книгах по языку С++. Но и в них все описано очень тоскливо, для новичка непонятно.
0
Эксперт С++
8972 / 4318 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
12.03.2016, 16:48 11
Лучший ответ Сообщение было отмечено vab9petryk как решение

Решение

Цитата Сообщение от vab9petryk Посмотреть сообщение
Можете подкинуть абсолютно любую библиотеку, вплоть до библиотеки с одной функции, и гайда по тому как такие вещи собирать?
да вы и сами легко можете загуглить материалы
по любой интересующей вас системе сборки.

просто не нужно пытаться охватить из все сразу одновременно.
начать можно сразу же с cmake.
Цитата Сообщение от vab9petryk Посмотреть сообщение
И почему это дело вообще называют библиотекой?
хз, почему и что именно вы так называете.

Цитата Сообщение от vab9petryk Посмотреть сообщение
1) makefile можно создать ручками, а можно использовать cmake, qmake и т.п. программы для упрощения создания такого файла?
верно.
cmake предназначен не только для упрощения.
его главная задача - сделать сборку независящей от среды.
хотите красноглазый makefile? пожалуйста.
а хотите, можете заказать виндузятный.
а хотите, можно заказать файлы проекта для вижуал студии.
а хотите, можно работать с QtCreator.

в общем, однажды написанный сценарий делает
разработку и сборку независящей ни от платформы,
ни от используемой IDE.

qmake - родная система сборки QtCreator

Цитата Сообщение от vab9petryk Посмотреть сообщение
cmake, qmake и т.п. программы не способны выполнить инструкции записанные в makefile?
у них есть свой собственный язык сценария сборки.
на основе которого они генерируют файл проекта целевой платформы/и IDE
далее они могут автоматически запустить нативные для платформы инструменты,
руками которых будет осуществлена непосредственно сборка.

таким образом, от программиста требуется указать только что и как нужно собрать.
остальное - забота cmake/qmake

Цитата Сообщение от vab9petryk Посмотреть сообщение
у makefile есть конкуренты?
конкуренты конечно есть.
но makefile прочно занимает свою нишу,
и помирать не собирается.

хотя сегодня его уже давно никто руками не пишет.
в основном он генерируется автоматом
на основе более высокоуровневых скриптов.

Цитата Сообщение от vab9petryk Посмотреть сообщение
команды записанные в makefile, независимо от того кем они записаны (программой, человеком) и для какого компилятора, способны быть выполнены одинаковым образом с помощью make, nmake, mingw32-make, главное чтобы все было должным образом настроено (например, на винде чтобы в переменные среды был задан путь к компилятору, использующемся в makefile).
это три принципиально разные системы сборки,
сценарии сборки хоть и имеют много схожего,
однако между ними такие же различия,
как например, между тремя разными языками программирования.

Цитата Сообщение от vab9petryk Посмотреть сообщение
Скомпилировать библиотеку, как и объектный файл, можно с помощью g++ напрямую в консоли, а можно просто создав соответствующий makefile в котором написаны необходимые инструкции, и запустить makefile на исполнение nmake, make или mingw32-make?
ага. makefile - сценарий, которые содержит описание того
как именно системе сборки нужно будет пинать компилятор/линкер/етс.

вам нужно понять - мейкфайл мейкфайлу рознь.
так например, nmake работает с компилятором вижуал студии,
который называется cl, а вовсе не с g++

Цитата Сообщение от vab9petryk Посмотреть сообщение
Что делает эта строчка в Linux?
Configure the software to suit your system:
./configure
этот вопрос вам лучше задать господину DrOffset.

Цитата Сообщение от vab9petryk Посмотреть сообщение
Я совсем уже запутался. Она просто создает makefile. Она не выполняет инструкций makefile, то есть не собирает проект.
при запуске вы указываете: "хочу сборку под вижуал студию",
ну или : "хочу сборку под mingw"
ну или ещё какую нибудь.
cmake умеет множество платформ, тулсетов, и проектов разных IDE,

при этом cmake автоматически обнаружит все необходимое
для построения проекта
(вплоть до проверки работоспособности нужных для сборки компиляторов)
настроит окружение среды
создаст целевой проект.
и пнув нативный для проекта инструмент
инициирует сборку.

на выхлопе вы получите готовый продукт.

говорят, что сам по себе cmake сборкой не занимается.
он занимается созданием файлов проекта для целевой среды,
и умеет осуществить сборку руками этой среды.


Цитата Сообщение от vab9petryk Посмотреть сообщение
"Сборка проектов на Unix, Windows, MacOs, компиляция библиотек"
если вам нужна кросс платформа и независимость от среды,
тогда cmake - ваш лучший друг.
3
2 / 2 / 1
Регистрация: 28.09.2013
Сообщений: 255
12.03.2016, 17:32  [ТС] 12
Цитата Сообщение от hoggy Посмотреть сообщение
это три принципиально разные системы сборки,
сценарии сборки хоть и имеют много схожего,
однако между ними такие же различия,
как например, между тремя разными языками программирования.
То есть, если мне нужно компилить с помощью cl, я makefile исполняю с помощью nmake, а если компилить нужно используя g++, то либо make если *nix, либо mingw32-make если винда?
Использование nmake для выполнения makefile использующего g++ ни к чему хорошему не приведет?
0
Эксперт С++
8972 / 4318 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
12.03.2016, 17:41 13
Цитата Сообщение от vab9petryk Посмотреть сообщение
То есть, если мне нужно компилить с помощью cl, я makefile исполняю с помощью nmake, а если компилить нужно используя g++, то либо make если *nix, либо mingw32-make если винда?
ога.

под виндой маки - устаревшая технология.

там лучше собирать при помощи devenv (вижуал студия) + xml файла проекта.
либо если студия не установлена, msbuild (он понимает и xml и mak)

cmake под виндой запускает msbuild

msbuild - родная для мелкомягких систем сборки.
devenv в конечном итоге тоже делает сборку руками msbuild

Добавлено через 42 секунды
Цитата Сообщение от vab9petryk Посмотреть сообщение
Использование nmake для выполнения makefile использующего g++ ни к чему хорошему не приведет?
будет примерно тоже самое, как если бы вы компилятором с++
попытались скомпилировать код на си-шарпе.
1
19409 / 10028 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
12.03.2016, 22:29 14
Цитата Сообщение от vab9petryk Посмотреть сообщение
make это утилита Unix
Не обязательно. Есть порты на win в составе MSYS или Cygwin. Также есть почти полный аналог в составе mingw - mingw32-make.

Цитата Сообщение от vab9petryk Посмотреть сообщение
Что делает эта строчка в Linux?
Configure the software to suit your system:
./configure
Проверяет и устанавливает параметры сборки. Компилятор, зависимости, и т.д. На основании этого - генерирует makefile. Скрипт configure - это часть autotools - это тоже система сборки.

На винде ее тоже можно использовать, присутствует в составе MSYS и Cygwin.

Цитата Сообщение от vab9petryk Посмотреть сообщение
Какого то обзора по ним, или книги типа: "Сборка проектов на Unix, Windows, MacOs, компиляция библиотек" я найти не могу.
Надо привыкать, что очень много какую информацию тебе не будут расписывать. Учись сам разбираться.

Могу дать несколько ссылок для затравки:
https://www.opennet.ru/docs/RUS/make_compile/
https://www.gnu.org/software/autoconf/manual/
https://cmake.org/documentation/
1
12.03.2016, 22:29
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.03.2016, 22:29
Помогаю со студенческими работами здесь

Почему включение сторонних библиотек не рекомендуется?
Почему нежелательно включать в программу под linux ну например ncurses.h (сторонняя популярная...

Отключение предупреждений при подключении сторонних библиотек
Доброго времени суток! возник вопрос - чисто теоретический - допустим, что я подключил библиотеку,...

Работа нескольких сторонних библиотек под одним интерфейсом
Здравствуйте! Хочу реализовать библиотеку, которая будет предоставлять интерфейс к некоему...

Как узнать частоту звука без сторонних библиотек
кто нибудь знает как в работать со звуком без сторонних библиотек? мне нужно чтобы во время...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka, REST и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C# с RabbitMQ, CQRS, Swagger и CI/CD
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
Как создать игру "Танчики" на Unity3d и C#
InfoMaster 14.01.2025
Разработка игр – это увлекательный процесс, сочетающий в себе творчество и технические навыки. В этой статье мы рассмотрим создание классической игры "Танчики" с использованием Unity3D и языка. . .
Организую платный онлайн микро-курс по доработке Android-клиента Telegram
_Ivana 14.01.2025
Официальная версия и распространенные форки не полностью устраивают? Сделай свою кастомную версию клиента! 4 занятия по 2 часа (2 недели пн, ср 19:00-21:00 по Москве). Первое вводное занятие. . .
Как создать приложение для фитнеса для iOS/iPhone на Kotlin
InfoMaster 14.01.2025
Создание собственного фитнес-приложения — это не только захватывающий, но и полезный процесс, ведь оно может стать вашим верным помощником на пути к здоровому и активному образу жизни. В современных. . .
Как создать приложение магазина для iOS/iPhone на Swift
InfoMaster 14.01.2025
Введение в разработку iOS-приложений Разработка приложений для iPhone и других устройств на базе iOS открывает огромные возможности для создания инновационных мобильных решений. В данной статье мы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru