@ProCxx

Страница 1534 из 2477
fox.cpp
29.11.2017
14:47:10
Cygwin ещё есть, но там пакетный менеджер тухлый и, кажется, MSYS — форк Cygwin.

Alexander
29.11.2017
14:48:01
Ilia
29.11.2017
14:48:10
msys2 это же такой bash под win... Он же нужен чтобы только баш и make запускать... Какие там библиотеки -то?

fox.cpp
29.11.2017
14:48:10
Google
Alexander
29.11.2017
14:48:28
Гм... Точно, WSL.
накатил сразу же убунту и счастлив. но на линухе всё равно сижу

fox.cpp
29.11.2017
14:48:38
Или ручками собирать всё древо зависимостией?

Alexander
29.11.2017
14:49:30
Там арч можно поставить (#holywar).
ну и пусть ? а я убунту поставил)

fox.cpp
29.11.2017
14:49:36
Я тут слышал, что в их убунте пакеты староваты "немного"

CMake 2 этак.

Уже обновили до 3 хоть?

Alexander
29.11.2017
14:50:37
Уже обновили до 3 хоть?
а какая разница?))) самое главное, что есть линух и тулзы к нему. всё остальное не так важно

Kitsu
29.11.2017
14:53:27
А две разные структуры с одинаковым полей в той же последовательности гарантированно будут иметь одинаковый memory layout?

Дед Пегас
29.11.2017
14:54:27
И давльно давно.

Alexander
29.11.2017
14:55:34
да, помню о нём. но так и не добрались руки попробовать

Google
Kitsu
29.11.2017
15:03:24
нет
Можно пример? Ну или это стандарт, а на практике редкость?

Alexander
29.11.2017
15:04:12
Можно пример? Ну или это стандарт, а на практике редкость?
Стандартом не гарантируется. Значит гарантии нет

а пример - ну можешь поиграться здоровой структурой здоровой на разных компиляторах ?

Можно пример? Ну или это стандарт, а на практике редкость?
а если такое рискнёшь провернуть на проде, то у тебя может внезапно бомбануть что-то где-то. Так что лучше не рискуй и следуй букве Стандарта ?

Kitsu
29.11.2017
15:06:51
Ога, спасибо

Павел
29.11.2017
17:38:42
всем здрасти, хотел бы задать вопросы по CMake, что такое package и чем он отличается от library? Вопрос возник из-за того что в дефолтном цмейке у меня работает find_package(CURL REQUIRED), а вот find_package(SQLITE3 REQUIRED) не работает. Я пока выкрутился через find_library(SQLITE3 REQUIRED) но мне кажется что это как-то не совсем правильно. Не эстетично выглядит да и я своими кривыми ручками дописывал там вручную - set(SQLITE3_LIBRARY "-lsqlite3"), а вот CURL без такой писанины подключился и нормально линкуется.

Bogdan
29.11.2017
17:43:09
find_package ищет в CMAKE_MODULE_PATH Find*.cmake, где * это название библиотеки. можно прописать свою папку, туда пилить свои зависимости. в симейке еще есть готовые cmake файлы для поиска популярных либ, например OpenSSL. например find_package(OpenSSL) найдёт переменные OPENSSL_FOUND - system has the OpenSSL library OPENSSL_INCLUDE_DIR - the OpenSSL include directory OPENSSL_LIBRARIES - The libraries needed to use OpenSSL OPENSSL_VERSION - This is set to $major.$minor.$revision$path (eg. 0.9.8s) которые уже можно использовать в add_library find_package(OpenSSL REQUIRED) add_library(sha2_openssl sha512.c ) target_link_libraries(sha2_openssl ${OPENSSL_CRYPTO_LIBRARY} ) target_include_directories(sha2_openssl PUBLIC ${OPENSSL_INCLUDE_DIR} )

лучше читать доки, у симейка они очень хорошие

find_package внутри делает find_library (для .so, .dll, .dylib) find_program (для бинарей) find_path (для хедеров)

Павел
29.11.2017
17:44:56
дада, я вроде об этом прочитал и очень удивился. Потому что библиотека SQLITE3 очень популярна, но по умолчанию она не ищется цмейком, как например ищется CURL. Если что у меня ОС - убунту, библиотеки ставил через apt, возможно это важно. Но я через apt ставил нужные мне зависимости.

по умолчанию SQLITE3 не ищется через find_package

Bogdan
29.11.2017
17:45:44
ну значит в симейк не написали для него FindSQLITE3.cmake

точнее kitware

или кто там его разрабатывает

Павел
29.11.2017
17:46:43
в гуглах валяются всякие FindSQLITE3.cmake, но я бы хотел делиться своим проектом и что б у всех всё работало. Для CURL всё готово и получается что работает, а вот для SQLITE3 на удивление не работает.

Bogdan
29.11.2017
17:46:49
https://github.com/Kitware/CMake/tree/master/Modules

Google
Bogdan
29.11.2017
17:46:52
вот всё что есть

всё что начинается с Find ищется через find_package

Павел
29.11.2017
17:48:06
ага, спасибо большое. Выходит дефолтные конфиги cmake не дадут мне разгуляться ....

Bogdan
29.11.2017
17:48:12
можешь написать свой Findsqlite3.cmake и сделать пулл реквест :)

Павел
29.11.2017
17:48:35
зачем же писать - в гитхабе есть готовые, чужие

странно что для таких распространённых вещей этого ещё не было в cmake

jsoncpp, sqlite3, gumbo

удивительно что для curl сделали :D

Bogdan
29.11.2017
17:51:05
>find_library(SQLITE3 REQUIRED) но мне кажется что это как-то не совсем правильно скрипты внутри Find*.cmake именно так и делают

просто для юзера оборачивают в переменные

Viacheslav
29.11.2017
18:29:16
Это раньше они так делали. Сейчас вроде как поддерживает pkgconfig.

Что, по моему мнению, гораздо чище получается.

Viacheslav
29.11.2017
18:30:16
К сожалению, документации по CMake кот наплакал.

https://www.reddit.com/r/cpp/comments/6fv0bh/cnow_2017_daniel_pfeifer_effective_cmake_pdf_in/

Вот тут было выступление про modern CMake.

Павел
29.11.2017
18:31:09
а что за pkgconfig? оно поможет мне подхватить SQLITE3 ?

Viacheslav
29.11.2017
18:33:30
https://packages.debian.org/stretch/amd64/libsqlite3-dev/filelist

Вот тот pc file описывает, как библиотеку использовать.

Я сам не пробовал эту фичу, но современный CMake точно умеет библиотеки подключать на основе этого файла.

Alex Фэils?︙
29.11.2017
18:40:10
@matwey_kornilov а это ты присылал фикс в C++17 по поводу функций Лежандра?

Google
Matwey
29.11.2017
18:41:04
@matwey_kornilov а это ты присылал фикс в C++17 по поводу функций Лежандра?
А что? Хочешь подискутировать? Я еще один фикс Антону должен для 20, но забил и мне стыдно.

Alex Фэils?︙
29.11.2017
18:41:34
не, го лучше пелить фикс тогда

Matwey
29.11.2017
18:45:42
Ну вернее сначала я защищал дисер, а потом мне стало лень... Нужно проверить актуальность и переработать текст предложения в удобоваримый вид.

Berkus
29.11.2017
18:47:40
по умолчанию SQLITE3 не ищется через find_package
смотри какие модули стоят в /usr/share/cmake/Modules или как-то так

Павел
29.11.2017
18:48:47
да то понятно, спасибо за помощь ещё раз. Если я к себе закину туда доп модулей то передав проект кому-то другому - он тоже обнаружит что у него модулей то тютю, не хватает

и ему прийдётся их тоже к себе руками втягивать

в общем буду разбираться. Большое спасибо за помощь всем

Admin
ERROR: S client not available

Павел
29.11.2017
18:49:28
дада я так и сделал

Alexander
29.11.2017
21:03:36
кто-нибудь писал плагины по Intelij IDEA платформу?

Anatoly
29.11.2017
21:08:49
кто-нибудь писал плагины по Intelij IDEA платформу?
нет, но там вроде все дотошно расписано https://www.jetbrains.com/help/idea/plugin-development-guidelines.html https://www.jetbrains.org/intellij/sdk/docs/basics/getting_started.html

Alexander
29.11.2017
21:09:05
просто чуваки с jetbrains не хотят пилить поддержку Conan

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

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

Anatoly
29.11.2017
21:12:38
Я могу поговорить с Анастасией Казаковой, она, если не ошибаюсь, product manager CLion. очно ее увижу 14 декабря в JB.

Alexander
29.11.2017
21:13:54
Я могу поговорить с Анастасией Казаковой, она, если не ошибаюсь, product manager CLion. очно ее увижу 14 декабря в JB.
ну ты как бы поговори, что хотим и все дела. Моя инфа (которая 5-ти минутной свежести) говорит о том, что они заинтересованы, но делать не будут это пока что. Заинтересованы в плагине, хоть в каком-нибудь. И его уже саппортить помогут. Инфа от Phil Nash

Alexander
29.11.2017
21:22:33
@jbaruch ?
ему явно есть что делать

Google
Alexander
29.11.2017
21:22:42
с другой стороны, хороший кандидат)

Alex Фэils?︙
29.11.2017
21:22:55
(Он тут в чате есть)

Baruch
29.11.2017
21:23:04
Есть, да

Alex Фэils?︙
29.11.2017
21:23:23
Привет) извини, что поздно так пинганул)

Evgeniy
29.11.2017
21:23:30
уверен что jetbrains пилить не будут

Baruch
29.11.2017
21:23:41
Conan plugin для IntelliJ?

Alex Фэils?︙
29.11.2017
21:24:42
да, было б неплохо

Надо вместе пилить, кмк. можно ща репу на гх создаьь

Egor
29.11.2017
21:25:05
Почему тут такое токсичное комьюнити?

Baruch
29.11.2017
21:25:06
Ok, займемся

Alex Фэils?︙
29.11.2017
21:25:14
Baruch
29.11.2017
21:25:22
Я поговорю с jetbrains

Alexander
29.11.2017
21:28:04
Я поговорю с jetbrains
во-во, давай)

будем бомбить со всех сторон)

https://blog.jupyter.org/interactive-workflows-for-c-with-jupyter-fe9b54227d92

Старое, но всё же http://btorpey.github.io/blog/2016/04/07/mo-static/

https://blogs.msdn.microsoft.com/vcblog/2017/11/15/msvc-conformance-improvements-in-visual-studio-2017-version-15-5/

https://www.viva64.com/en/b/0539/

Страница 1534 из 2477