Вопросы с меткой [lib]


Не могу скомпилировать проект для Android

Ответить

ответов 0

0

Вам же линкер говорит: не могу найти библиотеки

0

@AndrejLevkovitch а как это можно починить, настроить линкер то-есть?

0

линкер не нужно чинить - он не сломан. Зато вам нужно почитать о этапах компиляции. Собственно у вас либо нет этих библиотек, либо тула их не может найти

liboping ошибка operation not permitted

Ответить

ответов 0

0

здравствуйте, использую qt каждому файлу проекта раздал права, но всё равно ошибка, она же наверно создаёт объектный файл и его запускает, у которого нет прав. как это поправить ?

0

@DanBit, наверное надо обратиться к системному администратору

0

github.com/octo/liboping/issues/43

0

не понимаю как там решается проблемам ?

0

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

Необходимо сделать библиотеку для windows и linux

Ответить

ответов 0

0

из вопроса неясно в чем заключается проблема. Уточните, пожалуйста, что вы хотите сделать + инструментарий

0

#ifdef Windows ...

0

Как задать хороший вопрос?

0

CMake и в бой)) А вообще прочитайте про кросс-платформенный код на С++

Как сократить вес exe C++ при дополнительный подключаемых lib и dll

Ответить

ответов 0

0

Попробуйте вот этот флажок. Еще, если не секрет, откуда такие требования к размеру?

0

А можно ли из каждой lib использовать только лишь определенную функцию? При это импортировать только то, что надо, а не все. Например из <iostream> только cout без др функций как sin и т.д.

0

линкер не добавляет неиспользуемые функции из библиотек, только необходимое. Если дело в студии, то установите флаг О1 docs.microsoft.com/ru-ru/cpp/build/reference/…

Как python исполняет код библиотек?

Ответить

ответов 0

0

Все скомпилировано в .pyc вроде.

Не подключается библиотека PyQt (Python)

Ответить

ответов 0

1

Минус за лень и нежелание читать учебники/руководства и сообщения об ошибках. Ну и за скрин вместо текста.

c++ На чем писать игры? ПО?

Узнать ответ

ответов 1

0

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

Как создать header файл для lib?

Ответить

ответов 0

0

А вы хоть немного знаете c/c++?

0

@AndrejLevkovitch немного да, проекты не писал.

0

вы понимаете чем хидер отличается от библиотеки? Зачем он нужен?

Почему не рабает api в gradle так как ожидается?

Ответить

ответов 0

0

Попробуйте добавить { transitive = true } к строке подключения библиотеки. Т.е. должно получиться implementation ('LIB_MODULE_DEP') { transitive = true }

0

@ЮрийСПб получаю ошибку. Добавил в вопрос

0

У меня вот так вот нормально подключалось: implementation project(':libplayer'), т.е. без path: - попробуйте так)

0

@ЮрийСПб не понял, то есть просто удалить слово path ? Мне кажется path тут не имеет никакой роли, просто для понимания так сказать... В любом случае я попробовал удалить path не работает, попробовал добавить {transitive = true } тоже не работает...

0

Других идей у меня нет(

0

@ЮрийСПб а вот, что насчет этого думаете https://quasar.site/questions/303473/kak-sdelat-klass-vidimym-tolko-vnutri-biblioteki

0

Если я правильно понял - то это невозможно. Вместе с либой в проект попадают всё исходники оной. Иначе оно просто компилиться не будет.

0

@ЮрийСПб странно. Но если эти классы используются только внутри либы... и снаружи они не нужны ... ну ладно

Как использовать библиотеку из GitHub в Android Studio

Ответить

ответов 0

0

это старая библиотека, лучше найти другую аналогичную. как подключать библиотеки в Android Studio (в версиях gradle 3+ вместо compile теперь используется implementation)

0

неудобно сделано, автор не дает бинарников скачать, а так же их не залил ни в какой репозиторий, надо самому их билдить. Вам надо скачать проект оттуда, потом импортировать проект в android studio (папку library, тип проекта aar, android library), а потом запустить build и появится папка с либой, а дальше по ссылке от @pavlofff. А еще лучше и вправду найти поновее библиотеку, последний коммит в этой 6 лет назад.

lib разных версий соответственно для dll разных версий

Ответить

ответов 0

0

грузить вручную с помощью LoadLibrary и вручную привязывать точки входа к указателям на функции

0

Видимо вам придется пересобрать библиотеку импорта для одной из этих библиотек, чтобы они обе не пытались одновременно импортировать символы из одной и той же .dll.

0

@VTT у меня нет исходников, что бы сделать это

0

Сами .dll пересобирать не надо, только .lib, так что исходники не нужны. Можете даже срезать угол и попробовать переименовать имя линкуемой .dll непосредственно отредактировав .lib в каком-нибудь hex редакторе (не изменяя при этом длины имени).

0

@VTT 1) У меня нет исходников .lib файлов. Или их можно как-то напрямую редактировать? 2) dll переименовать нет возможности, программа ведь не моя 3) если я правильно понимаю, вместе с версией программы изменилась и версия dll. Соответственно, в каждой dll, предположительно, частично свой набор функций и их реализация. Другими словами, что бы моя программа работала с двумя программами, она должна корректно работать с обеими версиями dll. Т.е. мне как-то надо заставить мою программу по выбору динамически использовать ту или иную библиотеку импорта, а потом и нужную dll подключать в процессе.

Добавить статическую библиотеку к проекту

Ответить

ответов 0

0

никак. это делается с помощью программы-компилятора, а не с помощью программы make.

Как использовать статическую библиотеку?

Узнать ответ

ответов 1

1

Если кратко и судя по описанному - никак. У gcc и cl разные ABI (грубо говоря, формат бинарных файлов) и прицепить библиотеку от VS к gcc 8.2 не сможете. Нужно собрать библиотеку той же версией (с той же разрядностью) gcc. И потом, можно будет использовать параметр -l (буква 'эль') для библиотеки при сборке, типа: gcc file.c -lname, где name - краткое имя библиотеки, а полное имя тогда будет вида libname.a.

0

Вроде бы mingw может линковаться и нормально работать с чисто сишными .lib, но нужно проверять. Еще, если не секрет, где вы нашли gcc 8.2 для windows?

0

Дико извиняюсь за ошибку, я имел ввиду MinGW.