Size: a a a

2020 July 02

A

ARCHANGEL in pro.cxx
zeroid
Dll может же экспортировать функции
и?
источник

z

zeroid in pro.cxx
В этом случае .lib не нужен выходит
источник

A

ARCHANGEL in pro.cxx
так и в таблицу импорта нечего будет записать
источник

A

ARCHANGEL in pro.cxx
длл может экспортировать, и либ не нужен, если LoadLibrary/GetProcAddress связка используется
источник

AN

Alexander N in pro.cxx
LoadLibrary - runtime связка, .lib load-time. В последнем случае если dll нет или символа нет какого-то выпадет ошибка
источник

z

zeroid in pro.cxx
ARCHANGEL
так и в таблицу импорта нечего будет записать
А ну да, но студия вроде как под капотом сама все что нужно генерит, заголовок длл содержит метаданные о экспортированных символах
источник

AN

Alexander N in pro.cxx
Я LoadLibrary юзал из Autohotkey скрипта кстати, когда написал прокси либу для работы с OpenCV )
источник

A

ARCHANGEL in pro.cxx
zeroid
А ну да, но студия вроде как под капотом сама все что нужно генерит, заголовок длл содержит метаданные о экспортированных символах
есть таблица экспорта, это не метаданные. Заголовок содержит DIRECTORY_ENTRY на таблицу экспорта, студия под капотом генерит либ
источник

A

ARCHANGEL in pro.cxx
чтоб потом слинковаться с длл можно было
источник

AN

Alexander N in pro.cxx
Кстати не стоит забывать, что у студии прямо противоположная gcc политика - всё, что не экспортируется явно невидимо по-умолчанию. У gcc наоборот, если по-умолчанию настройка(не указан -fvisibility=hidden) экспортится всё подряд
источник

z

zeroid in pro.cxx
ARCHANGEL
есть таблица экспорта, это не метаданные. Заголовок содержит DIRECTORY_ENTRY на таблицу экспорта, студия под капотом генерит либ
А какие дополнительные данные в этом .lib, которых нет в заголовках? Что вообще нужно для успешной линковки?
источник

A

ARCHANGEL in pro.cxx
указание, в какой библиотеке реализация
источник

A

ARCHANGEL in pro.cxx
это как с вызовом апи. Вот нужно какую-то апи вызвать из, например, kernel32.dll. Для этого нужно подключить хедер с описанием прототипа, но и ещё .lib, в котором будет инфа, что в такой-то dll реализована нужная нам функция
источник

z

zeroid in pro.cxx
ARCHANGEL
это как с вызовом апи. Вот нужно какую-то апи вызвать из, например, kernel32.dll. Для этого нужно подключить хедер с описанием прототипа, но и ещё .lib, в котором будет инфа, что в такой-то dll реализована нужная нам функция
Понял, спасибо. Уже кто-то спрашивал об этом) https://stackoverflow.com/questions/32548951/are-there-different-types-of-lib-files
источник

IZ

Ilia Zviagin in pro.cxx
Переведи...
источник

AN

Alexander N in pro.cxx
Никто не сталкивался с internal error segmentation fault в gcc(8)? Компилил tensorflow и шо-то пошло не так, а cuda юзает его почему-то
источник

OS

Oleksandr Senkovych in pro.cxx
Alexander N
Никто не сталкивался с internal error segmentation fault в gcc(8)? Компилил tensorflow и шо-то пошло не так, а cuda юзает его почему-то
libastral пока еще в пре-альфа версии. я бы тебе посоветовал запустить компилятор под gdb и поискать в интернете по именам функций в стектрейсе.
источник

AN

Alexander N in pro.cxx
Причём на protobuf
ERROR: /home/morfin/projects/DeepFaceLab/deps/tensorflow/tensorflow/core/BUILD:2866:1: C++ compilation of rule '//tensorflow/core:framework_internal_impl' failed (Exit 1)
In file included from ./tensorflow/core/platform/protobuf.h:40,
                from ./tensorflow/core/platform/tensor_coding.h:24,
                from ./tensorflow/core/framework/resource_handle.h:21,
                from ./tensorflow/core/framework/types.h:31,
                from ./tensorflow/core/framework/tensor.h:25,
                from ./tensorflow/core/framework/attr_value_util.h:24,
                from ./tensorflow/core/framework/node_def_util.h:22,
                from tensorflow/core/util/mirror_pad_mode.cc:19:
external/com_google_protobuf/src/google/protobuf/io/zero_copy_stream_impl_lite.h:387:1: internal compiler error: Segmentation fault

Знать бы как мне загнать сборку под gdb ещё
источник

OS

Oleksandr Senkovych in pro.cxx
а какая система сборки там? cmake?
источник

AN

Alexander N in pro.cxx
bazel какой-то. Просто я про такую ошибку компилера слышал, но если это не из-за  того, что ресурсы не ограничил, то фиг знает
источник