在Mac OS X Lion上构建OsiriX

时间:2012-06-19 12:42:38

标签: build compilation osx-lion dicom

  

Ld build / Development /解压缩普通i386      cd / Users / icthealth / Desktop / dcmtk / osirix / osirix      setenv MACOSX_DEPLOYMENT_TARGET 10.7

     
    

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs /MacOSX10.7.sdk -L / Users / icthealth / Desktop / dcmtk / osirix / osirix / build / Development -LBinaries / LibTiff -L / Users / icthealth / Desktop / dcmtk / osirix / osirix / Binaries -L / Users / icthealth / Desktop / dcmtk / osirix / osirix / Binaries / Ming" -L / Users / icthealth / Desktop / dcmtk / osirix / osirix / Binaries / KDU SDK" -L / Users / icthealth / Desktop / dcmtk / osirix / osirix / Binaries / CharLS -L / Users / icthealth / Desktop / dcmtk / osirix / osirix / Binaries / VTKLibs -F / Users / icthealth / Desktop / dcmtk / osirix / osirix / build / Development -F / Users / icthealth / Desktop / dcmtk / osirix / osirix -filelist /Users/icthealth/Desktop/dcmtk/osirix/osirix/build/OsiriX_Lion.build/Development/Decompress.build/Objects-normal/i386 /Decompress.LinkFileList -mmacosx-version-min = 10.7 -framework Foundation -framework AppKit -framework Foundation -framework Cocoa -framework QuickTime -framework IOKit -lz" -lDCM StaticLibrary" -framework加速-framework QTKit -framework WebKit -lPapyrusToolkit -lfreetypeOsiriX -lgifOsiriX -lmingOsiriX -lpng12OsiriX -lkdu_v64R -framework Quartz -lCharLS -lvtkzlib -o / Users / icthealth / Desktop / dcmtk / osirix / osirix / build / Development / Decompress

  
     

架构i386的未定义符号:     " .objc_class_name_DCMPix",引自:         Decompress.o中指向literal-objc-class-name的指针        (也许你的意思是:.objc_class_name_DCMPixelDataAttribute)     " _PapyrusLockFunction",引自:         libPapyrusToolkit.a中的_ExtractJPEG2000(PapyRead3.o)         libPapyrusToolkit.a中的_ExtractJPEGLS(PapyRead3.o)         libPapyrusToolkit.a中的_ExtractJPEGlossy16(PapyJpeg16.o)         libPapyrusToolkit.a中的_ExtractJPEGlossy12(PapyJpeg12.o)         libPapyrusToolkit.a中的_ExtractJPEGlossy8(PapyJpeg8.o)   ld:找不到架构i386的符号   clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

在为Mac OS X Lion 10.7创建开发方案后构建时,会生成上述构建错误。如何在Mac OS X Lion 10.7上编译OsiriX的任何线索?

1 个答案:

答案 0 :(得分:1)

虽然这个答案似乎没有结论,但我想提一下哪些有效,哪些无效。在此之前,我使用的是Xcode版本4.3.2和Mac OS X Lion 10.7.4。我下载了OsiriX的源代码zip文件。

  1. 首先选择“Unzip Binaries”和My Mac 32-bit作为目标方案,然后构建并运行。 (这个总是成功的。)

  2. 选择“Osirix”和My Mac 32位作为下一个目标方案,在此版本的Xcode中显示“验证项目设置”,因为似乎有必要将编译器从llvmgcc42更新到Apple LLVM,并将Base SDK从当前的10.6版本更改为最新的Mac OS X(10.7)。

  3. 当执行此更改时,它会抛出各种构建错误,例如我原始问题上的错误,以及Apple Mach-O链接器错误,CLang错误,退出代码1.依此类推。

    在我看来,Osirix的成功编译取决于保留旧的编译器而不是更新到最新的项目设置。