Opened 3 years ago

Last modified 21 months ago

#62766 assigned defect

caffe @20170817_15+python27: builds fail, as port py27-h5py doesn't exist

Reported by: mascguy (Christopher Nielsen) Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: caffe

Description

Attempting to install caffe:

$ sudo port -N install caffe
Password:
--->  Computing dependencies for caffe
Error: Dependency 'py27-h5py' not found.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port caffe failed

Change History (8)

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

Summary: caffe 20170817_15: builds fail, as port py27-h5py doesn't existcaffe @20170817_15+python27: builds fail, as port py27-h5py doesn't exist

See #62499 and #62398 for why it is not easy to bring py27-h5py back.

caffe only uses py27-h5py in its python27 variant, which is on by default. If you don't need caffe's python functionality you could install caffe without the python27 variant:

sudo port clean caffe
sudo port install caffe -python27

Someone should improve the caffe port to use a newer version of python 3, if that's possible.

comment:2 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

In 3cc9f50bcbd4b23d6a5d1d3e49bdcaa4b92d627e/macports-ports (master):

caffe: Don't enable +python27 by default

It depends on py27-h5py which no longer exists.

See: #62766
See: #62398

comment:3 Changed 3 years ago by mascguy (Christopher Nielsen)

Thanks Ryan, that fixes the dependency issue.

Unfortunately, builds are still failing across-the-board, due to C++ compilation issues. It looks like it's a matter of updating the port to use a newer C++ standard, and ensuring the various flags are properly passed down.

However, the portfile could also use some additional work: There are two compilation passes, and the second one runs during the destroot phase. Instead, we should use a custom build phase, and run both passes during that.

So, the question is: Given the various other deep-learning tools available - most notably, PyTorch - is this port still needed/relevant? It hasn't been building since at least 2019, and no users have reported the build failures... suggesting nobody is using it.

And I'd prefer not to see anyone waste time on getting this port to build, if it'll never be utilized.

Thoughts?

comment:4 Changed 3 years ago by mascguy (Christopher Nielsen)

Owner: set to macports-tickets@…
Status: newassigned

comment:5 Changed 3 years ago by sectroyer

Port fails due to missing -std=c++11 directive:

error: "Protobuf requires at least C++11."

etc.

comment:6 Changed 2 years ago by mascguy (Christopher Nielsen)

Owner: changed from macports-tickets@… to mascguy

comment:7 Changed 21 months ago by mascguy (Christopher Nielsen)

Cc: mascguy added
Owner: changed from mascguy to macports-tickets@…

Too much on my plate already

comment:8 Changed 21 months ago by mascguy (Christopher Nielsen)

Cc: mascguy removed
Note: See TracTickets for help on using tickets.