如何使用终端在Mac OS X中创建共享库(.so)文件

5
如何使用终端在Mac OS X中创建共享库(.so)文件
感谢您的提问。

创造它的来源是什么?为什么不能使用Xcode? - Scott Hunter
1
我有一个像 .cpp 文件的源文件,我需要通过编译该 .cpp 文件来创建 .o 文件,并基于该 .o 文件创建 .so 文件。如何创建 .o 文件? - Parimala Menta
1
这个共享库是.so文件还是在Mac OSX上的.dylib文件?我应该使用哪一个,能否有人指导一下吗? - Parimala Menta
1
可能是在OSX上创建C++共享库的重复问题。 - Scott Hunter
1个回答

1
这可能有点晚了,但如果有人遇到了这个问题,我知道如何为C ++ / C代码制作so文件。假设您在带有.cpp / .c和.h文件的目录中,在终端中必须键入以下内容:
  1. g++ -c file1.cpp file2.cpp(将要添加到so文件中的所有cpp / c文件)
  2. g++ *.o -dynamiclib -o lib_name.so
然后,如果您使用的是cpp文件,则会运行它:
  1. g++ -c test.cpp -o test.o(编译程序以查看共享库是否有效)
  2. g++ -o test test.o -L. -l_name(创建可执行文件以运行)
  3. ./test(运行测试)
对于C代码so文件,操作相同,但将g ++替换为gcc。

你确认已经在MacOS上测试过这个程序了吗?(我问这个问题是因为原帖明确需要一个MacOS的答案,而不是通用的*nix答案。) - joanis

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接