Size: a a a

2020 June 27

JC

Julian =) Coffee in archlinux_ru
Покажи что ты хочешь
источник

JC

Julian =) Coffee in archlinux_ru
типо load(lib, name, func) в lib::name::func?
источник

JC

Julian =) Coffee in archlinux_ru
или просто вот тупо в ::func?
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝... in archlinux_ru
Julian =) Coffee
Покажи что ты хочешь
Хочу выбирать между dlopen и нормальной линковкой
источник

JC

Julian =) Coffee in archlinux_ru
ну вернее что макрос должен делать
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝... in archlinux_ru
Вот хочу дефайном приассгнить настоящие фугнкции либы в место под dlopen
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝... in archlinux_ru
Т.е. идет вызов к функциям в классе Libs::, которые работают через dlopen,  но по логике если им назначить функции из оригинального хедера (вне класса), то должно слинковать
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝... in archlinux_ru
поэтому и подставляю ::
источник

JC

Julian =) Coffee in archlinux_ru
ну попробуй #define load(lib, name, func) = :: ## func
источник

JC

Julian =) Coffee in archlinux_ru
мне кажется func перед равно там лишнее у тебя
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝... in archlinux_ru
Загрузка через dlopen работает как-то так, так что при дефайне этот load должен заменяться на gtk_init_check = ::gtk_init_check и т.п.
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝... in archlinux_ru
Julian =) Coffee
ну попробуй #define load(lib, name, func) = :: ## func
Похоже на синтаксическую ошибку
источник

JC

Julian =) Coffee in archlinux_ru
я понял что ты хочешь
источник

JC

Julian =) Coffee in archlinux_ru
кажется
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝... in archlinux_ru
В конечном итоге получаются строки типа if (!gtk_init_check = ::gtk_init_check) return false;
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝... in archlinux_ru
А с твоим вариантом будет if (! = ::gtk_init_check) return false;
источник

JC

Julian =) Coffee in archlinux_ru
ты хочешь
<func> = ::<func>?
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝... in archlinux_ru
Julian =) Coffee
ты хочешь
<func> = ::<func>?
+++
источник

JC

Julian =) Coffee in archlinux_ru
а
источник

JC

Julian =) Coffee in archlinux_ru
#define load(lib, name, func) (func = :: ## func)
так не?
источник