Wow, gleich zwei Fragen in einem:
Vorgeschichte:
Ich arbeite ja an meinem schönes Disassembler. Ich habe jetzt aber keine Lust, C++ Symbole selber zu demangle, da das ein heiden Aufwand ist, und gcc vielleicht wieder mal die ABI umstellt, und ich alles nochmal machen muss.
Die "scheinbare" Lösung ist einfach: gdb enthält die "libiberty", welche C++ Symbole demanglen kann. Jetzt kommen wir zu meinem
Problem:
gdb ist GPL. Die enthaltene libiberty ist (wie sinnvoll...OpenSource Schwachköpfe) auch GPL und nicht LGPL. Selbst bei LGPL gibt es schon mit statischem Linken ein Lizenzproblem, also fällt das von vornherein aus.
Somit habe ich erstmal aus dem gdb/libiberty Quelltext eine dylib Kompiliert. Wunderbar. Kann ich auch gegen linken und mein Traum wird war, endlich C++ Symbole demanglen.
Aber halt, nicht so schnell:
1) Verletze ich die GPL, wenn ich gegen libiberty linke?
1.1) Wenn nein, verletzte ich die GPL wenn ich libiberty mitliefere? (Mit Link zu den gdb sources, meinetwegen)
2) Warum findet er die Library nur, wenn sie in /usr/lib liegt, nicht aber an anderen, schlüssigen Plätzen, wie das .app oder .app/Content/MacOS?
Vorgeschichte:
Ich arbeite ja an meinem schönes Disassembler. Ich habe jetzt aber keine Lust, C++ Symbole selber zu demangle, da das ein heiden Aufwand ist, und gcc vielleicht wieder mal die ABI umstellt, und ich alles nochmal machen muss.
Die "scheinbare" Lösung ist einfach: gdb enthält die "libiberty", welche C++ Symbole demanglen kann. Jetzt kommen wir zu meinem
Problem:
gdb ist GPL. Die enthaltene libiberty ist (wie sinnvoll...OpenSource Schwachköpfe) auch GPL und nicht LGPL. Selbst bei LGPL gibt es schon mit statischem Linken ein Lizenzproblem, also fällt das von vornherein aus.
Somit habe ich erstmal aus dem gdb/libiberty Quelltext eine dylib Kompiliert. Wunderbar. Kann ich auch gegen linken und mein Traum wird war, endlich C++ Symbole demanglen.
Aber halt, nicht so schnell:
1) Verletze ich die GPL, wenn ich gegen libiberty linke?
1.1) Wenn nein, verletzte ich die GPL wenn ich libiberty mitliefere? (Mit Link zu den gdb sources, meinetwegen)
2) Warum findet er die Library nur, wenn sie in /usr/lib liegt, nicht aber an anderen, schlüssigen Plätzen, wie das .app oder .app/Content/MacOS?
♥C++