Opened 7 years ago

Closed 7 years ago

#53384 closed defect (invalid)

Jasper 2.0.10 fails to build on macOS Sierra

Reported by: wojtekcz (Wojciech Czarnowski) Owned by: jmroot (Joshua Root)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: jasper

Description (last modified by mf2k (Frank Schima))

Jasper 2.0.10 fails to build for me on macOS Sierra 10.12.2 with Xcode 8.2 on fresh install of macports 2.3.5. I have attached the log file. This is particularly significant because many other ports depend on jasper. The message in the log is:

Could NOT find OpenGL (missing: OPENGL_INCLUDE_DIR)

Attachments (1)

main.log (43.1 KB) - added by wojtekcz (Wojciech Czarnowski) 7 years ago.

Download all attachments as: .zip

Change History (14)

Changed 7 years ago by wojtekcz (Wojciech Czarnowski)

Attachment: main.log added

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

Owner: set to jmroot
Status: newassigned

In the future, please use WikiFormatting and Cc the port maintainers (port info --maintainers jasper), if any.

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

Description: modified (diff)

comment:3 Changed 7 years ago by jmroot (Joshua Root)

Can't reproduce. My configure output is the same as yours until this point:

JAS_HAVE_JPEGLIB_H: 1
JAS_HAVE_LIBJPEG: 1
-- Found OpenGL: //System/Library/Frameworks/OpenGL.framework  
JAS_ENABLE_OPENGL: ON
OpenGL library found: TRUE
OpenGL include directory: //System/Library/Frameworks/OpenGL.framework
OpenGL libraries: //System/Library/Frameworks/OpenGL.framework

FindOpenGL.cmake uses a very simple check for OPENGL_INCLUDE_DIR:

find_path(OPENGL_INCLUDE_DIR OpenGL/gl.h DOC "Include for OpenGL on OS X")

Do you in fact have this header?

comment:4 in reply to:  3 Changed 7 years ago by wojtekcz (Wojciech Czarnowski)

OpenGL include directory: System/Library/Frameworks/OpenGL.framework FindOpenGL.cmake uses a very simple check for OPENGL_INCLUDE_DIR:

find_path(OPENGL_INCLUDE_DIR OpenGL/gl.h DOC "Include for OpenGL on OS X")

Do you in fact have this header?

I have gl.h, but not in /System/Library... It's inside Xcode's MacOS SDK:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl.h

For probably relevant discussion no OpenGL header location look here: http://stackoverflow.com/questions/26745284/cmake-not-finding-gl-h-on-os-x

comment:5 Changed 7 years ago by jmroot (Joshua Root)

You should have /System/Library/Frameworks/OpenGL.framework/Headers/gl.h. pkgutil --file-info says:

volume: /
path: /System/Library/Frameworks/OpenGL.framework/Versions/A/Headers/gl.h

pkgid: com.apple.pkg.DevSDK
pkg-version: 10.12.2.1.1.1480484267
install-time: 1480522158
uid: 0
gid: 0
mode: 644

pkgid: com.apple.pkg.DevSDK_OSX1012
pkg-version: 8.2.0.0.1.1480973914
install-time: 1481658020
uid: 0
gid: 0
mode: 644

comment:6 in reply to:  5 Changed 7 years ago by wojtekcz (Wojciech Czarnowski)

$ pkgutil --file-info /System/Library/Frameworks/OpenGL.framework
volume: /
path: /System/Library/Frameworks/OpenGL.framework

pkgid: com.apple.pkg.Essentials
pkg-version: 10.12.0.1.1.1472780771
install-time: 1473314285
uid: 0
gid: 0
mode: 755

pkgid: com.apple.pkg.update.os.10.12.1.16B2555
pkg-version: 1.0.0.0.1.1476867034
install-time: 1477355869
uid: 0
gid: 0
mode: 755

pkgid: com.apple.pkg.update.os.10.12.2Patch.16C67
pkg-version: 1.0.0.0.1.1481357964
install-time: 1481665021
uid: 0
gid: 0
mode: 755


$ pkgutil --file-info /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/OpenGL.framework
volume: /
path: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/OpenGL.framework

pkgid: com.apple.pkg.Xcode
pkg-version: 8.2.0.0.1.1481066040
install-time: 1481672205
uid: 0
gid: 0
mode: 755
Last edited 7 years ago by wojtekcz (Wojciech Czarnowski) (previous) (diff)

comment:7 Changed 7 years ago by jmroot (Joshua Root)

Yes, the headers come from a different package. Probably the command line tools.

comment:8 in reply to:  7 Changed 7 years ago by wojtekcz (Wojciech Czarnowski)

Replying to jmroot:

Yes, the headers come from a different package. Probably the command line tools.

I can update Xcode from 8.2 to 8.2.1. Are you suggesting that I should get "Command Line Tools (macOS 10.12) for Xcode 8.2, Dec 12, 2016" also? http://adcdownload.apple.com/Developer_Tools/Command_Line_Tools_macOS_10.12_for_Xcode_8.2/Command_Line_Tools_macOS_10.12_for_Xcode_8.2.dmg

I was under impression that Xcode installs command line tools on first launch after each update?

comment:9 Changed 7 years ago by jmroot (Joshua Root)

Yes, MacPorts requires the command line tools, and no, they are not installed automatically. You can install them by running this in the Terminal:

xcode-select --install

comment:10 in reply to:  9 Changed 7 years ago by wojtekcz (Wojciech Czarnowski)

Replying to jmroot:

Yes, MacPorts requires the command line tools, and no, they are not installed automatically. You can install them by running this in the Terminal:

xcode-select --install

As it turns out I've had it already on my system:

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

comment:11 Changed 7 years ago by jmroot (Joshua Root)

Then you should have the headers. You can check the contents with pkgutil --files com.apple.pkg.DevSDK_OSX1012 (probably redirect the output to a file or pipe into an editor, it's a long list). If some of the files have been deleted somehow, you'll have to restore them.

comment:12 in reply to:  11 Changed 7 years ago by wojtekcz (Wojciech Czarnowski)

Replying to jmroot:

Then you should have the headers. You can check the contents with pkgutil --files com.apple.pkg.DevSDK_OSX1012 (probably redirect the output to a file or pipe into an editor, it's a long list). If some of the files have been deleted somehow, you'll have to restore them.

The list was empty. I've installed "Command Line Tools (macOS 10.12) for Xcode 8.2, Dec 12, 2016". The long list appeared.

Now I have the headers and jasper builds. Thanks a lot.

comment:13 Changed 7 years ago by jmroot (Joshua Root)

Resolution: invalid
Status: assignedclosed

OK, glad you got it fixed. Closing as invalid since the problem is not with MacPorts.

Note: See TracTickets for help on using tickets.