LINUX.ORG.RU
ФорумTalks

На Linux портированы Windows Dynamic Link Libraries. Го линковать DLL'ки!

 , ,


0

0

This repository contains a library that allows native Linux programs to load and call functions from a Windows DLL.

https://github.com/taviso/loadlibrary

Трэд

https://mobile.twitter.com/taviso/status/867134496935563264?p=v

★★★★★

Последнее исправление: atsym (всего исправлений: 4)

Ответ на: комментарий от Quasar

у меня отваливается kopete через пару часов работы например (т.е не работоспособен)

mittorn ★★★★★
()
Ответ на: комментарий от EXL

простая KDE-программа для каталогизации рецептов

вот хз честно, я пользуюсь dolphin, kate, konsole и прочим, вроде ничего не требует. kmail и аконадей нет
Единственное - amarok раньше требовал базу данных, но теперь я им не пользуюсь, ещё до перехода на kde5, ибо не нужно, какой-то он громоздкий. А у кого действительно огромная коллекция музыки, ещё и с правильными тегами, альбомами и т.д., чтобы всё это каталогизировать, возможно, там БД будет уместна

Вообще, критиковать КДЕ - это правильно, и баги в нём есть, которые не фиксят годами, но пока это единственное ДЕ, которым можно пользоваться. Раньше еще был гном2 - теперь всё.
Может lxqt взлетит, посмотрим

TheAnonymous ★★★★★
()
Ответ на: комментарий от Promusik

В гнуме есть реестр же, по крайней мере во втором. Причем, на фоне этой мешанины из XMLок, виндовые бинарные кусты - верх адекватности.

svr4
()
Ответ на: комментарий от EXL

Наглое 4.2

Apple mail жрет память как не в себя и после 7..10 тысяч писем тормозит как невесть что. Птица тормозит вообще всегда, на получении тыщи писем за раз ставит на колени любой комп.

Быстрый почтовик - это зильфид, например. Кмыло на маленьких объемах переписки на уровне птицы, после десятка тысяч работает с той же скоростью, что и на пустых ящиках. Вот адресная книга в кедах - это боль, да.

leave ★★★★★
()
Ответ на: комментарий от dexpl

1. В .so прописано к какой платформе оно принадлежит и если там прописана другая платформа, dlopen выдаёт ошибку
2. К символам приписаны версии и символы с несовпадающей версией не ресолвятся. Конечно, можно сделать специальный .so (и я даже делал такой), который не будет привязан к системе. Функции fopen, fread, fcntl, сокеты и прочее обычно переносимы и если кроме них ничего из системы не используется, то библиотека может работать на всех системах где используется ELF и совпадает архетиктура процессора. Но glibc'шные библиотеки работают только в пределах одной платформы и одной мажорной версии libc.

mittorn ★★★★★
()
Последнее исправление: mittorn (всего исправлений: 1)
Ответ на: комментарий от mittorn

1. В .so прописано к какой платформе оно принадлежит и если там прописана другая платформа, dlopen выдаёт ошибку

В .dll то же самое.

2. К символам приписаны версии и символы с несовпадающей версией не ресолвятся.

В .dll такого нет, вследствие чего есть dll hell.

dexpl ★★★★★
()
Ответ на: комментарий от SR_team

Она существует настолько же насколько сферический конь в вакууме (см. выше)
В linux всё привязано к glibc и это не проблема .so, а проблема glibc.
В windows dll вообще может быть не прилинкована к msvcrt и работать нормально, мало того, такие dll есть. В linux их нету (если не считать моего эксперимента).

mittorn ★★★★★
()
Ответ на: комментарий от dexpl

Но dll хотя бы патчить не надо чтобы запустить в другой системе. В .so это же привело к полной искуственной потере совместимости (даже в тех случаях когда api/abi в пределах данной библиотеки не изменилось).

mittorn ★★★★★
()
Ответ на: комментарий от mittorn

Но dll хотя бы патчить не надо чтобы запустить в другой системе.

.so тоже:

► rpm -q --provides glibc
config(glibc) = 2.25-4.fc26
glibc = 2.25-4.fc26
glibc(x86-64) = 2.25-4.fc26
ld-linux-x86-64.so.2()(64bit)
ld-linux-x86-64.so.2(GLIBC_2.2.5)(64bit)
ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)
ld-linux-x86-64.so.2(GLIBC_2.4)(64bit)
ldconfig
libBrokenLocale.so.1()(64bit)
libBrokenLocale.so.1(GLIBC_2.2.5)(64bit)
libCNS.so()(64bit)
libGB.so()(64bit)
libISOIR165.so()(64bit)
libJIS.so()(64bit)
libJISX0213.so()(64bit)
libKSC.so()(64bit)
libSegFault.so()(64bit)
libanl.so.1()(64bit)
libanl.so.1(GLIBC_2.2.5)(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.10)(64bit)
libc.so.6(GLIBC_2.11)(64bit)
libc.so.6(GLIBC_2.12)(64bit)
libc.so.6(GLIBC_2.13)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.15)(64bit)
libc.so.6(GLIBC_2.16)(64bit)
libc.so.6(GLIBC_2.17)(64bit)
libc.so.6(GLIBC_2.18)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.2.6)(64bit)
libc.so.6(GLIBC_2.22)(64bit)
libc.so.6(GLIBC_2.23)(64bit)
libc.so.6(GLIBC_2.24)(64bit)
libc.so.6(GLIBC_2.25)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.2)(64bit)
libc.so.6(GLIBC_2.3.3)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libc.so.6(GLIBC_2.5)(64bit)
libc.so.6(GLIBC_2.6)(64bit)
libc.so.6(GLIBC_2.7)(64bit)
libc.so.6(GLIBC_2.8)(64bit)
libc.so.6(GLIBC_2.9)(64bit)
libcidn.so.1()(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libdl.so.2(GLIBC_2.3.3)(64bit)
libdl.so.2(GLIBC_2.3.4)(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.15)(64bit)
libm.so.6(GLIBC_2.18)(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libm.so.6(GLIBC_2.23)(64bit)
libm.so.6(GLIBC_2.24)(64bit)
libm.so.6(GLIBC_2.25)(64bit)
libm.so.6(GLIBC_2.4)(64bit)
libmemusage.so()(64bit)
libmvec.so.1()(64bit)
libmvec.so.1(GLIBC_2.22)(64bit)
libnsl.so.1()(64bit)
libnsl.so.1(GLIBC_2.2.5)(64bit)
libnss_dns.so.2()(64bit)
libnss_files.so.2()(64bit)
libpcprofile.so()(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.11)(64bit)
libpthread.so.0(GLIBC_2.12)(64bit)
libpthread.so.0(GLIBC_2.18)(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.2.6)(64bit)
libpthread.so.0(GLIBC_2.3.2)(64bit)
libpthread.so.0(GLIBC_2.3.3)(64bit)
libpthread.so.0(GLIBC_2.3.4)(64bit)
libpthread.so.0(GLIBC_2.4)(64bit)
libresolv.so.2()(64bit)
libresolv.so.2(GLIBC_2.2.5)(64bit)
libresolv.so.2(GLIBC_2.3.2)(64bit)
libresolv.so.2(GLIBC_2.9)(64bit)
librt.so.1()(64bit)
librt.so.1(GLIBC_2.2.5)(64bit)
librt.so.1(GLIBC_2.3.3)(64bit)
librt.so.1(GLIBC_2.3.4)(64bit)
librt.so.1(GLIBC_2.4)(64bit)
librt.so.1(GLIBC_2.7)(64bit)
libthread_db.so.1()(64bit)
libthread_db.so.1(GLIBC_2.2.5)(64bit)
libthread_db.so.1(GLIBC_2.3)(64bit)
libthread_db.so.1(GLIBC_2.3.3)(64bit)
libutil.so.1()(64bit)
libutil.so.1(GLIBC_2.2.5)(64bit)
rtld(GNU_HASH)
config(glibc) = 2.25-4.fc26
glibc = 2.25-4.fc26
glibc(x86-32) = 2.25-4.fc26
ld-linux.so.2
ld-linux.so.2(GLIBC_2.0)
ld-linux.so.2(GLIBC_2.1)
ld-linux.so.2(GLIBC_2.3)
ld-linux.so.2(GLIBC_2.4)
ldconfig
libBrokenLocale.so.1
libBrokenLocale.so.1(GLIBC_2.0)
libCNS.so
libGB.so
libISOIR165.so
libJIS.so
libJISX0213.so
libKSC.so
libSegFault.so
libanl.so.1
libanl.so.1(GLIBC_2.2.3)
libc.so.6
libc.so.6(GCC_3.0)
libc.so.6(GLIBC_2.0)
libc.so.6(GLIBC_2.1)
libc.so.6(GLIBC_2.1.1)
libc.so.6(GLIBC_2.1.2)
libc.so.6(GLIBC_2.1.3)
libc.so.6(GLIBC_2.10)
libc.so.6(GLIBC_2.11)
libc.so.6(GLIBC_2.12)
libc.so.6(GLIBC_2.13)
libc.so.6(GLIBC_2.14)
libc.so.6(GLIBC_2.15)
libc.so.6(GLIBC_2.16)
libc.so.6(GLIBC_2.17)
libc.so.6(GLIBC_2.18)
libc.so.6(GLIBC_2.2)
libc.so.6(GLIBC_2.2.1)
libc.so.6(GLIBC_2.2.2)
libc.so.6(GLIBC_2.2.3)
libc.so.6(GLIBC_2.2.4)
libc.so.6(GLIBC_2.2.6)
libc.so.6(GLIBC_2.22)
libc.so.6(GLIBC_2.23)
libc.so.6(GLIBC_2.24)
libc.so.6(GLIBC_2.25)
libc.so.6(GLIBC_2.3)
libc.so.6(GLIBC_2.3.2)
libc.so.6(GLIBC_2.3.3)
libc.so.6(GLIBC_2.3.4)
libc.so.6(GLIBC_2.4)
libc.so.6(GLIBC_2.5)
libc.so.6(GLIBC_2.6)
libc.so.6(GLIBC_2.7)
libc.so.6(GLIBC_2.8)
libc.so.6(GLIBC_2.9)
libcidn.so.1
libdl.so.2
libdl.so.2(GLIBC_2.0)
libdl.so.2(GLIBC_2.1)
libdl.so.2(GLIBC_2.3.3)
libdl.so.2(GLIBC_2.3.4)
libm.so.6
libm.so.6(GLIBC_2.0)
libm.so.6(GLIBC_2.1)
libm.so.6(GLIBC_2.15)
libm.so.6(GLIBC_2.18)
libm.so.6(GLIBC_2.2)
libm.so.6(GLIBC_2.23)
libm.so.6(GLIBC_2.24)
libm.so.6(GLIBC_2.25)
libm.so.6(GLIBC_2.4)
libmemusage.so
libnsl.so.1
libnsl.so.1(GLIBC_2.0)
libnsl.so.1(GLIBC_2.1)
libnsl.so.1(GLIBC_2.2)
libnss_dns.so.2
libnss_files.so.2
libpcprofile.so
libpthread.so.0
libpthread.so.0(GLIBC_2.0)
libpthread.so.0(GLIBC_2.1)
libpthread.so.0(GLIBC_2.1.1)
libpthread.so.0(GLIBC_2.1.2)
libpthread.so.0(GLIBC_2.11)
libpthread.so.0(GLIBC_2.12)
libpthread.so.0(GLIBC_2.18)
libpthread.so.0(GLIBC_2.2)
libpthread.so.0(GLIBC_2.2.3)
libpthread.so.0(GLIBC_2.2.6)
libpthread.so.0(GLIBC_2.3.2)
libpthread.so.0(GLIBC_2.3.3)
libpthread.so.0(GLIBC_2.3.4)
libpthread.so.0(GLIBC_2.4)
libresolv.so.2
libresolv.so.2(GLIBC_2.0)
libresolv.so.2(GLIBC_2.2)
libresolv.so.2(GLIBC_2.3.2)
libresolv.so.2(GLIBC_2.9)
librt.so.1
librt.so.1(GLIBC_2.1)
librt.so.1(GLIBC_2.2)
librt.so.1(GLIBC_2.3.4)
librt.so.1(GLIBC_2.4)
librt.so.1(GLIBC_2.7)
libthread_db.so.1
libthread_db.so.1(GLIBC_2.1.3)
libthread_db.so.1(GLIBC_2.2.3)
libthread_db.so.1(GLIBC_2.3)
libthread_db.so.1(GLIBC_2.3.3)
libutil.so.1
libutil.so.1(GLIBC_2.0)
rtld(GNU_HASH)

Сейчас хохмы для поставил и запустил xmms из десятой Федоры. Работает, ogg'шки играет.

dexpl ★★★★★
()
Ответ на: комментарий от Promusik

Вы мне еще реестр притащите.

так вроде в Гноме он был/есть ?

Sith ★★★★★
()
Ответ на: комментарий от Black_Shadow

С чего? Десктоп чем-то отличается от сервера?

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

Поэтому, одна и таже БД может в целом тормозить на банальных селектах на сервере и работать быстро на десктопе. И наоборот.

База с почтовым ящиком - не достаточно большой объём?

У меня, например, очень маленький: это ровно 0 байт

next_time ★★★★★
()
Ответ на: комментарий от next_time

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

Поэтому, одна и таже БД может в целом тормозить на банальных селектах на сервере и работать быстро на десктопе. И наоборот.

В кратце - большего бреда я не слышал.

У меня, например, очень маленький: это ровно 0 байт

Держи нас в курсе.

Black_Shadow ★★★★★
()
Ответ на: комментарий от Black_Shadow

В кратце - большего бреда я не слышал.
В кратце

ясно

База с почтовым ящиком - не достаточно большой объём?
Держи нас в курсе.

сам же спросил, теперь на что-то обижается, лол

next_time ★★★★★
()
Ответ на: комментарий от next_time

сам же спросил, теперь на что-то обижается, лол

Где ты увидел обиду?

Black_Shadow ★★★★★
()
27 февраля 2019 г.

Это можно использовать, если библиотека работает через COM?

question4 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.