Re: [Vala] Compiling a shared library with entry point




On Monday, 11 May 2020, 06:02:32 BST, Rasmus René Bronné Lindegaard via vala-list <vala-list gnome org> 
wrote: 
I'm currently working on a project where it would be extremely useful if I could execute the shared library 
I'm compiling.
I know it can be done with C, so it should be doable with Vala.

I can compile the following:

void main () {
    print ("Running...\n");
}

with:

valac --library test -X -pie -X -fPIE demo.vala

and it works for me.

The output from `readelf --file-header demo` is:

ELF Header:
  Magic:   7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF64
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              DYN (Shared object file)
  Machine:                           Advanced Micro Devices X86-64
  Version:                           0x1
  Entry point address:               0x6d0
  Start of program headers:          64 (bytes into file)
  Start of section headers:          6712 (bytes into file)
  Flags:                             0x0
  Size of this header:               64 (bytes)
  Size of program headers:           56 (bytes)
  Number of program headers:         9
  Size of section headers:           64 (bytes)
  Number of section headers:         31
  Section header string table index: 28

Regards,

Al


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]