URL: https://www.overclockers.at/linux/lib_statisch_in_eigene_library_linken_wie_163647/page_1 - zur Vollversion wechseln!
Habe folgendes Problem: Habe einige wenige Funktionen der Glib in einigen Funktionen verwendet, die ich zu einer Library zusammenfassen möchte. Das funktioniert soweit ganz gut, allerdings möchte ich diese meine Bibliothek auch auf Systemen verwenden, auf denen keine Glib installiert ist.
Gibts also eine Möglichkeit, jene Funktionen der Glib, die ich in den Funktionen meiner Bibliothek verwende, in diese Bibliothek statisch reinzulinken? Wenn ja, wie tu ich das?
Momentan mach ich im Code nur ein #include <glib.h>. Mein Makefile sieht etwa so aus (irrelevante Teile weggelassen):
Code:CC = gcc DEBUG = -g CFLAGS = `pkg-config --cflags --libs glib-2.0` $(DEBUG) library: part_1.o part_2.o ar rc libmylib.a part_1.o part_2.o part_1.o: part_1.c $(CC) $(CFLAGS) -c part_1.c part_2.o: part_2.c $(CC) $(CFLAGS) -c part_2.c
Wenn du gcc "-static" beim Bauen deiner Lib als Linker-Flag mitgibst, tut sich auch nicht das, was du dir wuenscht?
Zitat von COLOSSUSWenn du gcc "-static" beim Bauen deiner Lib als Linker-Flag mitgibst, tut sich auch nicht das, was du dir wuenscht?
Code:typedef struct foo { GList* foobar ... } bar;
Code:foo.h:12: error: ISO C++ forbids declaration of ‘GList’ with no type
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025