OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 28 Март, 2024 21:16

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
СообщениеДобавлено: Четверг, 28 Октябрь, 2010 15:10 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4625
Откуда: Россия, Орёл
Идею где-то здесь выдал тов. Роман М. Очень интересно.

На днях попытался осилить ---- http://www.winehq.org/docs/winelib-guide/bindlls :
1) В качестве простейшего примера приводится написание libx.dll.so --- wine-dll обёртки для (lin) libx.so, которая будет использована виндовым приложением под wine вместо (win) libx.dll
2) Для получения Makefile рекомендуется winemaker, который "do the hard work for us". Более подробных инструкций/примеров мне пока найти не удалось...
Идея состоит в написании wine-dll-обёртки к стандартным линуховым библиотекам, со всеми вытекающими...

Результаты (на x64 Ubuntu 10.04):
1) winemaker сгенерировал не рабочий Makefile. Изначально "оно" собирает x32-код, как, по-идее и должно быть. С какого-то момента, как я понял, про x32 забыли, и стандартные средства пытаются слепить стандартные x64
Код:
...
/usr/bin/ld: Relocatable linking with relocations from format elf32-i386 (test.o) to format elf64-x86-64 (test.iqj6It.o) is not supported
winebuild: /usr/bin/ld -r failed with status 256
winegcc: winebuild failed

2) После пары дней прыгания с бубном около найденной документации в ожидании прозрения :) удалось получить одну строчку, которая таки собирает test.dll.so
Код:
winegcc -m32 -shared  -Wl,-soname,test.dll.so -o test.dll.so test.c

3) Получившаяся dll даже грузится, но извлекание адресов процедур не срабатывает.

Голову ломать надоело... Если кто-то в курсе проблемы или желает перенять эстафету по поиску её решения --- отпишитесь. Тогда оформлю черновики получше и выложу в коллекцию как базу для подсистемы-учебного-примера.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB