Opened 7 years ago

Closed 7 years ago

#53021 closed defect (fixed)

octave @4.2.0_1 +gcc6 +openblas: build failure

Reported by: mf2k (Frank Schima) Owned by: MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: tehcog (tehcog)
Port: octave

Description

I am seeing a different build error than #53016 for octave on El Capitan.

:info:build In file included from /System/Library/Frameworks/CoreGraphics.framework/Headers/CGContext.h:18:0,
:info:build                  from /System/Library/Frameworks/CoreGraphics.framework/Headers/CGBitmapContext.h:9,
:info:build                  from /System/Library/Frameworks/CoreGraphics.framework/Headers/CoreGraphics.h:11,
:info:build                  from /System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:35,
:info:build                  from /System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:24,
:info:build                  from libinterp/corefcn/cdisplay.c:32:
:info:build /System/Library/Frameworks/CoreGraphics.framework/Headers/CGFont.h:53:40: error: initializer element is not constant
:info:build  static const CGFontIndex kCGGlyphMax = kCGFontIndexMax;
:info:build                                         ^~~~~~~~~~~~~~~
:info:build libinterp/corefcn/cdisplay.c: In function 'octave_get_display_info':
:info:build libinterp/corefcn/cdisplay.c:96:7: warning: 'CGDisplayModeCopyPixelEncoding' is deprecated [-Wdeprecated-declarations]
:info:build        CFStringRef pixelEncoding = CGDisplayModeCopyPixelEncoding (mode);
:info:build        ^~~~~~~~~~~
:info:build In file included from /System/Library/Frameworks/CoreGraphics.framework/Headers/CoreGraphics.h:39:0,
:info:build                  from /System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:35,
:info:build                  from /System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:24,
:info:build                  from libinterp/corefcn/cdisplay.c:32:
:info:build /System/Library/Frameworks/CoreGraphics.framework/Headers/CGDirectDisplay.h:174:34: note: declared here
:info:build  CG_EXTERN CFStringRef __nullable CGDisplayModeCopyPixelEncoding(
:info:build                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:info:build make[2]: *** [libinterp/corefcn/libinterp_corefcn_libcorefcn_la-cdisplay.lo] Error 1

Attachments (1)

main.log (434.6 KB) - added by mf2k (Frank Schima) 7 years ago.

Download all attachments as: .zip

Change History (13)

Changed 7 years ago by mf2k (Frank Schima)

Attachment: main.log added

comment:1 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

That looks like you are running a version of Xcode and/or the command line tools that is too old for El Capitan. I see clang 800 mentioned in the log, so I guess you have Xcode 8. On El Capitan, there is no command line tools for Xcode 8, so ensure you have installed the command line tools for Xcode 7.3.

comment:2 Changed 7 years ago by mf2k (Frank Schima)

I have the latest CLT installed for El Capitan and Xcode 8.

Last edited 7 years ago by mf2k (Frank Schima) (previous) (diff)

comment:3 Changed 7 years ago by mf2k (Frank Schima)

$ xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates

$ softwareupdate -l
Software Update Tool
Copyright 2002-2015 Apple Inc.

Finding available software
No new software available.

$ xcodebuild -version
Xcode 8.1
Build version 8B62
Last edited 7 years ago by mf2k (Frank Schima) (previous) (diff)

comment:4 Changed 7 years ago by tehcog (tehcog)

I have the same problem.

Software  OS X 10.9.5 (13F1911)

----

NerdCenter { ~ }-> port version
Version: 2.3.5
NerdCenter { ~ }-> xcodebuild -version
Xcode 6.2
Build version 6C131e

comment:5 Changed 7 years ago by tehcog (tehcog)

Cc: tehcog added

comment:6 Changed 7 years ago by mf2k (Frank Schima)

Summary: octave @4.2.0_1: Another build failureoctave @4.2.0_1 +gcc6 +openblas: build failure

I am using the non-default variants +gcc6 +openblas in my variants.conf file to build it.

comment:7 Changed 7 years ago by mf2k (Frank Schima)

It is still happening with the new version of Xcode 8.2.

$ xcodebuild -version
Xcode 8.2
Build version 8C38

comment:8 Changed 7 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

In 7519f9ae/macports-ports:

octave: allow GCC to compile Carbon API

See #53021

comment:9 Changed 7 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

There seems to be two problems here.
Apparently, clang and gcc treat constants differently.
Further, newer versions of Xcode use __attribute__ in a way GCC does not understand.
7519f9ae/macports-ports is certainly not pretty, but does it solve the problem?

comment:10 Changed 7 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

In 17e79f16/macports-ports:

octave: allow GCC to compile Carbon API

See #53021

comment:11 Changed 7 years ago by mf2k (Frank Schima)

Yes, it builds for me now. Thank you!

$ port installed octave
The following ports are currently installed:
  octave @4.2.0_1+app+docs+fltk+gcc6+openblas+qt4+sound (active)

comment:12 Changed 7 years ago by mf2k (Frank Schima)

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.