Linux?μ??????????????????
?????pchou ???????[ 2016/9/20 10:28:53 ] ?????????????? ?????
	???????????????????C/C++????????????????????????????Щ?????????????Linux??????Linux?μ??????????????????
	????Linux??????
	????Linux??????????????????:
	????1???????(.a): ???????????ó???????????????????
	????2??????????(.so): ?????????????÷?: a) ??ó???????????????????????????????????????????????????????????????????????????????????????????????????????????; b) ?????????????????ж?????????????????????????????????????????б???????????????????????????????????????????????????????????????????
	???????????
	???????????lib????????????????????????в?????????????????????????????磺
	????gcc src-file.c -lm -lpthread
	????????????У???????libmath.a??libpthread.a
	?????????(.a)
	???????????????????£?
	????· ????object????????磺cc -Wall -c ctest1.c ctest2.c?????????????ctest1.o??ctest2.o(????-Wall???????????????)??
	????· ??????????????磺ar -cvq libctest.a ctest1.o ctest2.o??????????????libctest.a???
	????· ???????ar -t??.a????а?????Щ.o????????????ar????????????????tar
	????· ??????????ranlib libctest.a?????.a????????????Щar??????????????????ranlib?????
	????.a?????windows?μ?.lib?????????
	?????????(.so)
	???????????????????£?
	????????object???????-fPIC???
	????gcc -Wall -fPIC -c *.c
	????????????????????????????????(position independent)???????????????????????????????????????????????????????????????????????????????offset???е???????
	???????-shared????
	????gcc -shared -Wl??-soname??libctest.so.1 -o libctest.so.1.0 *.o
	????-shared??????????????????????????????;-Wl??options??????????ld(??????)???????????????????У???????????????.o??????ld -soname ibctest.so.1
	????????????
	??????????????????????????libctest.so.1.0????????????????????????:
	????mv libctest.so.1.0 /opt/lib
	????ln -sf /opt/lib/libctest.so.1.0 /opt/lib/libctest.so.1
	????ln -sf /opt/lib/libctest.so.1.0 /opt/lib/libctest.so
	????libctest.so???????????????-lctest?????????????????libctest.so.1?????????????????
	????gcc -Wall -I/path/to/include-files -L/path/to/libraries prog.c -lctest -o prog
	??????????
	???????ldd???????????????????????????磺
	????ldd prog
	????libctest.so.1 => /opt/lib/libctest.so.1 (0x00002aaaaaaac000)
	????libc.so.6 => /lib64/tls/libc.so.6 (0x0000003aa4e00000)
	????/lib64/ld-linux-x86-64.so.2 (0x0000003aa4c00000)
	????obj???
	????obj??????????????????????????????????????windows?μ?PE??linux???Щunix?μ?elf??macos??mach-o??aix?μ?xcoff??
	??????obj?????????????????????nm objdump readelf???????
	??????????????????
	?????????????????????????????????????????/etc/ld.so.conf??????ldconfig?????????????????????·????????????/etc/ld.so.cache???????Щ????????????????????(Linux/Solaris: LD_LIBRARY_PATH?? SGI: LD_LIBRARYN32_PATH?? AIX: LIBPATH?? Mac OS X: DYLD_LIBRARY_PATH?? HP-UX: SHLIB_PATH)
	????????????ж????
	?????????ó????????????????????????????????????ж?????????????????????????????????????????????????????????????????????????????????????????????????
	???????dlfcn.h?е?dlopen??dlsym??dlclose???????????????
	????????????dlfcn??????????????????-rdynamic????????????????????з????????????????????????????????????????????????????類static???ε???????????????????????.dynsym?????
	????GNU Libtool
	??????????????????????libtool?????libtool????????????????????????????????????libtool?????????????????.la???????.la????????????????????????.a????????????Щ?汾?????
??????
					
					???·???
App??С????H5?????????????????Щ??
2024/9/11 15:34:34?????????????????????????
2024/9/10 11:13:49P-One ???????????????????????????????????????
2024/9/10 10:14:12???????????????????????????
2024/9/9 18:04:26??????????????????
2023/3/23 14:23:39???д?ò??????????
2023/3/22 16:17:39????????????????????Щ??
2022/6/14 16:14:27??????????????????????????
2021/10/18 15:37:44
					
			
								
								
								
								
								
								
								
								
								
								
				
sales@spasvo.com