Re: [Vala] Creating executables without glib/gobject



static glib with dietlibc? ...I've been down that path.

With dietlibc I got errors that I couldn't solve, so I tried uClibc
and that worked.
I ended up with libglib.a, libgmodule.a, libgobject.a, libgthread.a. I
also had to compile libiconv statically in the uClibc build
environment.

I was then able to create a totally static valac, and I was able to
compile static executables. Just looking back in my notes, I have
written that they are "too big"
-- I didn't record actual sizes but I recall that "hello world" was
enormous and so
it seemed to be a pointless exercise, as my interest is to be able to create
tiny static executables that will run in the initial ramdisk.

Regards,
Barry Kauler


On 3/11/09, Matías De la Puente <mfpuente ar gmail com> wrote:
Hi Barry:

2009/3/11 Barry Kauler <bkauler gmail com>

Matías De la Puente,
I am very interested in what you have done, with your "Multiboot"
code. I'm wondering how far this can be pushed. Is it feasible to code
in a subset of Vala/Genie such that Glib/Gobject is not required, only
the C library, so the executable could be compiled statically with
dietlibc?


It's possible to build glib with dietlib? just wondering...



I'm wondering though, would I quickly run into trouble if I started to
write anything more than the most elementary Vala/Genie program?


Well, yes. :(
Just because there's a lot of function and other things to implement.
Just try to see the generated c code of this vala code:

public class MyObject {
}

If you implement all the function and constants in the generated c code you
can use this kind of object.
See this other code:

public class MyObject: GLib.Object {
}

Again if you implement all the stuff you need you can make it work.
Or see this:

[Compact]
public class MyObject {
}

This is more easy to implement, but you don't have inheritance
http://bugzilla.gnome.org/show_bug.cgi?id=557390 , big trouble... :)

But there's another way that isn't implemented but is planned. A plugin
that
can generate the object you want (with posix function :-D).

Matias




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