[OberonRevival-bb-dev] DevElfLinker и Kernel
Status: Alpha
Brought to you by:
dmitrys99
From: Romiras <rom...@gm...> - 2010-03-24 23:01:33
|
У меня есть два варианта модуля TestExport: один из них использует Kernel (благодаря NEW), а другой - нет. При компоновки модуля без Kernel библиотека .so работоспособна и загружается внешними средствами, зато с Kernel - не хочет ни в какую: простой dlopen из C возвращает нулевой хэндл. Беру файлы из bb-nix-0.1; DevElfLinker16 из OpenBUGS, не модифицированы. Способ сборки (всё на Windows) у меня таков: 1. Компилирую LinLibc, LinDl - в подсистему Lin; HostFiles - в подсистему Host, а Kernel (версия линукса) - создаётся в Code и Sym в корневой директориии ББ. 2. !DevElfLinker.LinkDll libexport.so := Kernel+ TestExport# ~ Внутренняя структура создаваемой библиотеки на глаз ни чем не выделяется: видно включение линуксового Kernel, libdl, libc с экспортом функций. Но libexport.so упорно не грузится. Подскажите в чём может быть дело. код: MODULE TestExport; IMPORT SYSTEM, Kernel; TYPE TA = RECORD d, d2: REAL; END; TString = ARRAY [untagged] OF CHAR; Name = ARRAY 40 OF SHORTCHAR; VAR Int-: INTEGER; A-: POINTER TO TA; name*: Name; PROCEDURE Do*; BEGIN NEW(A); A.d := 321.345; A.d2 := A.d*2.0; Int := 3*1024; END Do; END TestExport. |