0 / 0 / 0
Регистрация: 17.02.2017
Сообщений: 65
|
|
1 | |
Линковка сторонней библиотеки, как скомплить lib файл, cmake22.12.2019, 02:43. Показов 4280. Ответов 4
Метки нет (Все метки)
У меня сразу несколько вопросов новичка
хочу добавить данную библиотеку в свой мини-проект https://github.com/yourWaifu/sleepy-discord как я понял, мне нужно ее сначала скомпилировать, получив lib файл, юзаю я visual studio 2017 а чтобы это сделать нужно скачать и установить еще 3(4) библиотеки OpenSSL cpr Websocket++ or uWebSockets проблема в том, что я не умею это делать, в скачанных библиотеках нет файла проекта (sln, vcxproj), имеется только CMakeLists.txt, а как собирать через cmake я понятия не имею, гугл тоже не особо помог, но тут я скорее неправильно гуглю. подскажите, пожалуйста хороший мануал как на винде, собирать проекты через CMakeLists.txt (да я полный краб в этом деле, не программист, у меня, можно сказать, единичный случай, так что не надо бить книгами по программированию))) разумеется тему решил создать не только ради этого вопроса 2) правильно ли я понимаю, что если я соберу библиотеку, для компиляции которой понадобятся другие дополнительные либы. то при использовании этой первой либы в моей программе, дополнительные либы мне уже нет необходимости линковать следом? 3) как я понял, эта строчка в описании либы: Requirements: Websocket++ or uWebSockets подразумевает что мне нужно закоментить #include либо для первого либо для второго в исходниках либы? 4) могу ли я вообще обойтись без компиляции lib файла? вместо этого прилинковать вместе .h файлами и .cpp файлы этой библиотеки? и вообще какая разница?
0
|
22.12.2019, 02:43 | |
Ответы с готовыми решениями:
4
Статическая линковка в CMake и VC++ Линковка с кастомной внешней библиотекой в CMAKE Статическая линковка библиотек через cmake Как в VS 2015 устранить ошибку LNK 1104 cannot open file 'fltkd.lib wsock32.lib comct132.lib fltkjpegd.lib'? |
с++
1282 / 523 / 225
Регистрация: 15.07.2015
Сообщений: 2,562
|
|
22.12.2019, 03:18 | 2 |
0
|
0 / 0 / 0
Регистрация: 17.02.2017
Сообщений: 65
|
|
22.12.2019, 16:51 [ТС] | 3 |
Antikl, скачал, установил
cmake gui не может создать проект для данной либы, а в visual studio (именно для первой либы в папке с github имеется уже готовый файлик sln) творится неч-то непонятное, компилятор запрашивает файлы, которых нет (те самые дополнительные библиотеки), а странно именно то, что в папке уже имеются хедеры данных библиотек (как я понял либы нужно скоплить отдельно) но студия не просил либы, а запрашивает исходные файлы этих дополнительных библиотек (cpp), которые должны лежать по другому пути в итоге я просто скачал с гитхаба эти библиотеки и раскидал файлы, согласно тому как просил компилятор. в итоге собралась либа - но она не работала даже в программе example от авторов этой либы...и имела подозрительно малый вес
0
|
с++
1282 / 523 / 225
Регистрация: 15.07.2015
Сообщений: 2,562
|
|
22.12.2019, 18:16 | 4 |
1) Patch системы должен как Visual так и Cmake
2) Cmake запустить от администратора 3) Проект и все связаное должно находиться на других дисках D E G 4) Когда собираешь Cmake в configure -> Specify the generator for this project выбрать свою IDE, дальше поставь галочку на Specify native compilers что бы убедиться в том что он нашeл компилятор 5) после выпадут настройки сборки там выберешь то что надо, обычно не трогаешь их и жмешь generate/ описание настроек находиться обычно в документации 6) в папке будет файл проекта твоей IDE просто запускаешь и компилируешь, h файлы там изначально есть, находишь не достающие файлы lib, a, dll. 6.1) могут потребоваться для компиляции другие lib их или скачиваешь или тоже собираешь потом когда открываешь проект главной lib в самом проекте установи недостающие lib, h
0
|
0 / 0 / 0
Регистрация: 17.02.2017
Сообщений: 65
|
|
23.12.2019, 01:13 [ТС] | 5 |
cmake gui ошибку выдает незасисимо ставлю ли я галочку Specify the generator for this project или нет
в папке скачанной с гитхаба был еще и sln файл, я его открыл но там какая-то чудасия происходит я создал новый проект, по 1 добавлял туда файлы от библиотек и все сначала было просто и понято, добавлял библиотеки требуемые по 1, как все было добавлено компилятор мне жалуется на бусты....(бусты являются зависимостью библиотеки asio, которая требуется для этой либы что я пытаюсь собрать) все выходные потратил и все напрасно, я растроен
0
|
23.12.2019, 01:13 | |
23.12.2019, 01:13 | |
Помогаю со студенческими работами здесь
5
Библиотеки glut.lib и glut32.lib не могу найти C++ Builder 6 библиотеки d3d9.lib и d3dx9d.lib Cmake, как построить и подключать библиотеки OpenGL Как с помощью CMake выполнять автоматическое построение библиотеки? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |