Tôi đã tạo một thư viện với các tệp pila.h
và pila.c
. Tôi biên soạn tập tin pila.c
với gcc pila.c -c
và thư viện này hoạt động tốt. Tôi đã thử nghiệm nó.Làm cách nào để biên dịch thư viện trên C bằng GCC?
Sau đó, tôi đã tạo một thư viện khác. Thư viện này có các tệp pila_funciones_extra.h
và pila_funciones_extra.c
. Trong thư viện này tôi cần bao gồm thư viện đầu tiên. Trong tập tin pila_funciones_extra.h
tôi đặt dòng tiếp theo bao gồm nó:
#include "pila.h"
và trong file pila_funciones_extra.c
tôi đặt dòng tiếp theo:
#include "pila_funciones_extra.h"
vì nó có được.
Nhưng khi tôi cố gắng biên dịch tệp pila_funciones_extra.c
trình biên dịch không nhận ra sự bao gồm của thư viện pila
. Nó nói rằng các hàm, cấu trúc, hằng số và các macro được định nghĩa trong thư viện pila
chưa được xác định.
Tôi đã cố gắng biên dịch với gcc pila_funciones_extra.c -c
và gcc pila_funciones_extra.c -c pila.o
nhưng nó không hoạt động.
Tôi đảm bảo rằng tất cả các tệp đều nằm trong cùng một thư mục.
Tôi đang làm việc trên Ubuntu.
Bất kỳ ai có thể cho tôi biết đúng cách để biên dịch không?
Vui lòng đăng lỗi trình biên dịch _exact_ bạn nhận được (biên dịch dòng + 5-10 dòng đầu ra đầu tiên). – Mat
Bạn đã sử dụng cờ '-l pila.o' khi bạn đang biên dịch' pila_funciones_extra.c'? –
Bạn có đang sử dụng bất kỳ nhân viên bảo vệ nào không? '# ifndef's'? Ví dụ: nếu bạn sử dụng giống nhau trong cả hai tiêu đề thì chỉ có '_extra.h' sẽ bị xóa. –