2013-08-29 33 views
7

Tôi biết tệp .so là tệp thư viện được chia sẻ tương tự như tệp .dll trong cửa sổ, nhưng tệp .lo thì sao?Sự khác biệt giữa tệp .so và .lo là gì?

+0

Xem này: [gia sư # 1] (http://www.yolinux.com/TUTORIALS/LibraryArchives-StaticAndDynamic.html) và điều này: [gia sư # 2] (http: //www.cprogramming.com/tutorial/shared-libraries-linux-gcc.html) ** và điều này **: [gia sư # 0] (https://www.google.ru/search?q=linux+shared + đối tượng + hướng dẫn) –

Trả lời

13
.o object   (contains compiled code) 
.lo library object (contains information for building a .so with `libtool`) 
.so shared object (indeed compareable to a DLL) 
.ko kernel object (usually kernel modules) 

Xem http://www.delorie.com/gnu/docs/libtool/libtool_8.html

+2

Nó nói một chút mơ hồ. * .lo (và * .la) là các tệp văn bản chứa một số định nghĩa cho libtool. Nếu bạn không sử dụng libtool - bạn không cần điều đó. Nó chỉ là một số gợi ý đi kèm với * .o tương ứng. * .la phục vụ mục đích tương tự cho * .so, đó là thư viện được chia sẻ. – keltar

+0

@keltar Cảm ơn bạn, tôi đã cập nhật câu trả lời của mình. –

+0

@Cobra_fast, cảm ơn câu trả lời của bạn. bạn có ý nghĩa gì khi được xây dựng thành một .so. –