2012-02-04 34 views
7

chương trình C của tôi 'sử dụng một số chức năng zlib (như gzopen, gzread). Tôi đã bao gồm các tập tin zlib.h tiêu đề trong chương trình của tôi và thêm tùy chọn -lz khi biên dịch, nhưng tôi vẫn nhận được một lỗi rằng các chức năng gz có tài liệu tham khảo không xác định. Tôi đang sử dụng kubuntu 11.10 và đã cài đặt các gói sau: libgh-zlib-dev, zlib1g-dbg, zlib1g và zlib1g-dev.tài liệu tham khảo không xác định lỗi gzopen`

tôi đã cố gắng thay đổi vị trí của các lệnh liên kết, nhưng không may mắn. Đây là một trong những tôi có vào lúc này:

CFLAGS = Wall -pthread -lm -lz -std = c99 -Wextra

+5

Vui lòng hiển thị lệnh liên kết của bạn. Bạn có thể đã đặt '-lz' ở sai vị trí. –

+0

Bạn chính xác biên soạn như thế nào? CFLAGS được sử dụng bởi các tập lệnh được tạo bằng automake, chứ không phải gcc trực tiếp ... –

+0

@HubertKario - CFLAGS được hiểu (và được sử dụng) bởi 'make'; nó được cung cấp cho trình biên dịch C khi thích hợp. –

Trả lời

9

đặt chúng như một phần của LDFLAGS, nó sẽ giống như thế:

gcc -Wall -pthread src/main.c -lm -lz -std=c99 -Wextra -o main 
Các vấn đề liên quan