Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 在OSX上使用gcc构建Paraview时出错_Objective C_Macos_Gcc_Vtk_Paraview - Fatal编程技术网

Objective c 在OSX上使用gcc构建Paraview时出错

Objective c 在OSX上使用gcc构建Paraview时出错,objective-c,macos,gcc,vtk,paraview,Objective C,Macos,Gcc,Vtk,Paraview,我正试图在OSX 10.10.5和gcc 5.3.0上构建Paraview 构建Vtk时,我得到: [24%]正在构建CXX对象 VTK/Rendering/OpenGL/CMakeFiles/vtkRenderingOpenGL.dir/vtkcocordenderwindowinteractitor.mm.o 在/usr/include/os/object.h:75:0中包含的文件中, 从/usr/include/dispatch/dispatch.h:48, from/System/Lib

我正试图在OSX 10.10.5和gcc 5.3.0上构建Paraview

构建Vtk时,我得到:

[24%]正在构建CXX对象 VTK/Rendering/OpenGL/CMakeFiles/vtkRenderingOpenGL.dir/vtkcocordenderwindowinteractitor.mm.o 在/usr/include/os/object.h:75:0中包含的文件中, 从/usr/include/dispatch/dispatch.h:48, from/System/Library/Frameworks/CoreFoundation.framework/Headers/CFStream.h:15, from/System/Library/Frameworks/CoreFoundation.framework/Headers/CFPropertyList.h:13, from/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:55, from/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6, from/System/Library/Frameworks/Cocoa.framework/Headers/Cocoa.h:12, 来自/Users/Leo/projects/ParaView/VTK/Rendering/OpenGL/vtkcocordenderwindowinteractitor.mm:16: /usr/include/objc/NSObject.h:22:4:错误:“instancetype”未命名 a型 -(instancetype)self; ^/usr/include/objc/NSObject.h:36:4:错误:“instancetype”未命名类型 -(instancetype)保留OBJC_弧_不可用; ^/usr/include/objc/NSObject.h:38:4:错误:“instancetype”未命名类型 -(instancetype)自动释放对象不可用; ^/usr/include/objc/NSObject.h:60:4:错误:“instancetype”未命名类型 -(instancetype)初始化; ^/usr/include/objc/NSObject.h:62:4:错误:“instancetype”未命名类型+(instancetype)new; ^/usr/include/objc/NSObject.h:63:4:错误:“instancetype”未命名类型+(instancetype)allocWithZone:(struct \NSZone*)区域; ^/usr/include/objc/NSObject.h:64:4:错误:“instancetype”未命名类型+(instancetype)alloc; ^在/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:10:0中包含的文件中, from/System/Library/Frameworks/Cocoa.framework/Headers/Cocoa.h:12, 来自/Users/Leo/projects/ParaView/VTK/Rendering/OpenGL/vtkcocordenderwindowinteractitor.mm:16: /System/Library/Frameworks/Foundation.framework/Headers/NSArray.h:59:42: 错误:在“(”标记之前应为“)” -(void)enumerateObjectsUsingBlock:(void(^)(id obj,整数idx,BOOL*stop))块NS\u可用(10\u 6,4\u 0); ^/System/Library/Frameworks/Foundation.framework/Headers/NSArray.h:59:42: 错误:在“(”标记之前应该有标识符 /System/Library/Frameworks/Foundation.framework/Headers/NSArray.h:59:42: 错误:在“(”标记之前应为“;” /System/Library/Frameworks/Foundation.framework/Headers/NSArray.h:60:81: 错误:在“(”标记之前应为“)” -(void)enumerateObjectsWithOptions:(NSEnumerationOptions)选择使用block:(void(^)(id obj,nsu整数idx,BOOL*stop))block NS_可用(10_6,4_0)

所有错误都来自OSX标题
/System/Library/Frameworks/Foundation.framework/headers/NS….h

我知道GCC不识别Objective-C块(
^
),我发现GCC不理解
instancetype


有没有办法在OSX上用gcc构建Paraview,我应该停用Vtk吗?

你不能用gcc构建任何使用更高级别(objective-c)的东西系统头。您需要使用llvm或禁用系统头上的任何依赖项。谢谢@bbum,我应该如何禁用系统头依赖项?好问题;如果开源项目不支持这样做,那么您就不走运了。您需要将其移植到llvm或通过其他方式打破依赖项。如果代码较旧,移植比较困难。您可以尝试更新VTK的版本。看起来他们最近进行了兼容性工作。