Clang:输出32位和64位组合.dylib

Nam*_*nge 4 macos cpu-architecture clang dylib

我在执行file命令时看到了32位和64位的dylib .我如何在Clang建造一座?

-m32标志创建32位dylib,-m64创建64位,但使用它们都不起作用.

编辑:例如,这是file我正在尝试构建的dylib类型的输出

file /Library/Frameworks/SDL.framework/Versions/A/SDL 
/Library/Frameworks/SDL.framework/Versions/A/SDL: Mach-O universal binary with 2 architectures
/Library/Frameworks/SDL.framework/Versions/A/SDL (for architecture x86_64): Mach-O 64-bit dynamically linked shared library x86_64
/Library/Frameworks/SDL.framework/Versions/A/SDL (for architecture i386):   Mach-O dynamically linked shared library i386
Run Code Online (Sandbox Code Playgroud)

dus*_*uff 6

您可以-arch为所需的每个体系结构多次使用该参数,例如

cc -arch i386 -arch x86_64 ...
Run Code Online (Sandbox Code Playgroud)

或创建多个二进制文件,然后将它们粘合在一起lipo:

lipo -create -arch i386 my32bitbinary -arch x86_64 my64bitbinary -output myfatbinary
Run Code Online (Sandbox Code Playgroud)