如何在UNIX中創建.so和.a文件。我們有任何標準的工具嗎?在UNIX中創建.so和.a文件
8
A
回答
9
* .A - 一個 rchive可庫 創建它編譯來源:
gcc -c -o foo.o foo.c
gcc -c -o boo.o boo.c
ar -rsc yourlib.a foo.o boo.o
如此 - 位置無關的代碼共享庫
gcc -fPIC -shared -soname,libfoo.so.1 -o libfoo.so.1.0 foo.c boo.c
3
#create shared library
gcc -Os -fPIC -c test.c
gcc -shared test.so test.o
#create static library
gcc -Os -c test.c
ar rcs test.a test.o
0
看看這個Makefile我剛剛寫給C時寫道,它清楚地顯示瞭如何生成並正確鏈接.a
和來自simple demo source的文件。
2
.a也被稱爲靜態庫,而.so也被稱爲動態加載庫。我想要Program Library HOWTO。
這HOWTO爲程序員討論 如何創建和使用程序在Linux上 庫。這包括 靜態庫,共享庫, 和動態加載的庫。
Yo Linux tutorial也是有用的。
本教程討論哲學 庫之後和創建和使用 C/C++庫的「共享 組件」和「插件」。還討論了使用各種技術和方法 並且瞭解其適當的 應用。在本教程的 中,所有庫都是使用GNU Linux編譯器創建的 。
相關問題
- 1. 在ctypes中使用.a和.so文件
- 2. 創建.so文件
- 3. ndk構建和.so文件創建android
- 4. .so和.a文件有什麼區別?
- 5. 用so文件和其他一些.o文件創建一個.so文件
- 6. 如何從C++項目爲Android創建庫(.so或.a文件)?
- 7. 避免使用.a創建.so
- 8. 如何在unix中創建新文件
- 9. 如何從.o和.a文件創建.a文件?
- 10. 如何在linux用戶空間中創建* .a到* .so?
- 11. Unix - 文件創建日期
- 12. NDK-build不會創建.so文件
- 13. 如何使用GCC創建.so文件
- 14. 如何在創建.a文件時添加已創建的.a文件
- 15. 在Android中使用現有的「.so」文件(在Linux上創建)
- 16. ,如何將.a文件製作爲.so?
- 17. unix中的文件創建時間
- 18. C++/ubuntu約.a和.so
- 19. 無法在httpd-2.4.18中創建.so文件
- 20. 如何在Android中創建兩個「.so」文件
- 21. 是否支持構建庫二進制文件(.a/.so)?
- 22. 構建Android的FFMpeg NDK給我.a而不是.so文件
- 23. Unix - 創建文件夾和文件的路徑
- 24. Bazel使用張量流和cuda創建.so文件的錯誤
- 25. 將已包含在.a中的.so打包成apk文件
- 26. 如何將gso調試符號從.so和.a文件移出?
- 27. 在java中創建文本文件並保存爲unix格式
- 28. 用「so」文件創建一個SDK(單個jar文件)
- 29. 在UNIX中創建FIFO
- 30. .so在Python中的文件
任何想法有關.so文件 – 2009-10-30 06:01:30
秒(-fPIC)創建*的.so庫,你的源代碼需要編譯這樣,沒有其他辦法(我不知道其他的方式)。 – bua 2009-10-30 06:12:41