This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

DLL creating problem


Hello All,

I have a problem when trying to create a DLL.

For Ex:

i have two source files: file_asm.asm , file_c.c

------file_asm.asm-------
global _function_asm
extern _printf
section .text
_function_asm:
  push dword str
  call _printf
  add esp,0x04
  mov ecx,0x1000
  mov edi,bss_data
  rep stosd
  ret
section .data
  str db "String2print",0
section .bss
  bss_data resd 0x1000
------file_c.c------
void function_c(void){
}
--------------------

I need to create a DLL(no-cygwin)

compile:
  nasm -f format -o file_asm.o   {format = elf | win32 | coff }
  gcc -c file_c.c -o file_c.o

link:
  i use:
     gcc -shared ...
     ld -shared ...
     gcc -mdll ...
     ld -dll ...
     dllwrap ...
  but i can't create a true dll

  some switches creates not a dll.

  other creates a "wrong" dll. It has a section size problem and not
  working under the windowsXP or 2k. ( format == elf )
  or create a "incorrect" dll. It have a
     mov edi,bss_data+something   instead of   mov edi,bss_data
  (format == win32 or coff)

  please, give me a hint. How can i create a DLL.

-- 
Best regards,
 RomikB                          mailto:romikb@mail.ru


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]