1 |
On 16/07/2015 22:53, walt wrote: |
2 |
> I don't understand 'introspection' enough to know why we need it, but |
3 |
> apparently we do, so don't use the -introspection useflag like I did. |
4 |
> |
5 |
> The trouble I introduced a few weeks ago when I disabled introspection |
6 |
> was subtle enough that I didn't realize until yesterday that I even had |
7 |
> a problem. |
8 |
> |
9 |
> Portage had been doing mildly insane things that other people were not |
10 |
> seeing, so as a test I removed the -introspection useflag and spent the |
11 |
> entire day rebuilding packages. My portage problem appears to be |
12 |
> fixed. I hope. |
13 |
> |
14 |
> If anyone can splain what introspection does I'd be grateful. |
15 |
|
16 |
It's a tricky concept if you haven't worked with Object Oriented |
17 |
Programming, so lt's look at the USE description: |
18 |
|
19 |
introspection - Add support for GObject based introspection |
20 |
|
21 |
Doesn't say much, right? |
22 |
|
23 |
Object Oriented languages tend to compile to byte-code, just like Java |
24 |
does, and so does Python. It's so the run-time interpreter can look up |
25 |
at run-time which function exactly needs to be run (this can't be |
26 |
determined statically). A really neat trick is to "look inside" objects |
27 |
not just to see what it has, but also how the innards work, what |
28 |
properties an object has, and other neat stuff. That's what introspect |
29 |
means - to "look inside". This magic is what makes dynamic IDEs |
30 |
possible, where they prompt you for all manner of stuff while typing |
31 |
code, and even generate boiler-plate code that it hasn't been hard-coded |
32 |
to deal with. |
33 |
|
34 |
All sounds very fancy and theoretical. I know what introspection does, |
35 |
but I can't know if I need this type of it or not. Apparently (because |
36 |
stuff breaks horribly when it's off), packages that use GObject seem to |
37 |
rely on this feature. |
38 |
|
39 |
Therefore, switch it on and let portage get on with it. |
40 |
That's the best answer I can come up with. |
41 |
|
42 |
|
43 |
-- |
44 |
Alan McKinnon |
45 |
alan.mckinnon@×××××.com |