Git Product home page Git Product logo

Comments (11)

gwarf avatar gwarf commented on May 25, 2024 1

The problem is globus-toolkit is no longer maintained

Sorry for commenting on that old message, and you may likely be already aware, but I would like to point to the work from the Grid Community Forum, and the work on the fork of the Globus Toolkit.
See https://gridcf.org/ and https://github.com/gridcf/gct/.

from gfal2.

ShamrockLee avatar ShamrockLee commented on May 25, 2024 1

I would like to point to the work from the Grid Community Forum, and the work on the fork of the Globus Toolkit.\nSee https://gridcf.org/ and https://github.com/gridcf/gct/.

That direction is reasonable IMO.

As Grid Community Toolkit is huge and has a bunch of dependencies awaiting packaging, I just disable related plugins with the corresponding CMake flags -DPLUGIN_<NAME>=FALSE.

from gfal2.

mpatrascoiu avatar mpatrascoiu commented on May 25, 2024

Hello,

I don't think I'll be able to have a look at it very soon.
However, if you're willing to take the task, that sounds great!

Before you start, have a look at this pending issue regarding davix, one of the gfal2 dependencies:
cern-fts/homebrew-dmc#5

It might also affect this issue.

Cheers,
Mihai

from gfal2.

gabrielefronze avatar gabrielefronze commented on May 25, 2024

Hi Mihai,

I think I can get some useful information from the issue you posted, thank you!
Basically I'd like to understand what are the functionalities of globus-toolkit used by gfal2: I need to provide them with a different toolset (read: set of packages).
Any advice is greatly appreciated :)

Cheers,
Gabriele

from gfal2.

mpatrascoiu avatar mpatrascoiu commented on May 25, 2024

Hello Gabriele,

The globus-toolkit provides necessary libraries and headers that Gfal2 uses for the gridFTP and SRM protocols.
With some CMake tinkering, it may be possible to disable those plugins, but you'd lose important protocols.

Perhaps there's a way to get them from the repo directly:
https://github.com/globus/globus-toolkit

I'm not familiar with the package distribution on MacOS.

Cheers,
Mihai

from gfal2.

gabrielefronze avatar gabrielefronze commented on May 25, 2024

Hello Mihai,

I managed to work a bit on this.
Right now I had to disable quite a few protocols via CMakeLists:

#add_subdirectory (dcap)
add_subdirectory (file)
add_subdirectory (gridftp)
#add_subdirectory (http)
#add_subdirectory (lfc)
#add_subdirectory (rfio)
add_subdirectory (sftp)
#add_subdirectory (srm)
add_subdirectory (xrootd)
add_subdirectory (mock)

This is due to lack of many dependencies for such protocols via Home-brew (cap, davix_copy, LFC, RFIO and SRM).
Right now I am facing the errors directly related to the Globus Toolkit:

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
GLOBUS_COMMON_LIBRARIES (ADVANCED)
    linked by target "plugin_gridftp" in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
GLOBUS_FTP_CLIENT_LIBRARIES (ADVANCED)
    linked by target "plugin_gridftp" in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
GLOBUS_FTP_CONTROL_LIBRARIES (ADVANCED)
    linked by target "plugin_gridftp" in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
GLOBUS_GASS_COPY_INCLUDE_DIRS (ADVANCED)
   used as include directory in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
   used as include directory in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
   used as include directory in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
   used as include directory in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
   used as include directory in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
   used as include directory in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
   used as include directory in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
   used as include directory in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
GLOBUS_GASS_COPY_LIBRARIES (ADVANCED)
    linked by target "plugin_gridftp" in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
GLOBUS_GSSAPI_GSI_LIBRARIES (ADVANCED)
    linked by target "plugin_gridftp" in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp
GLOBUS_GSS_ASSIST_LIBRARIES (ADVANCED)
    linked by target "plugin_gridftp" in directory /Users/gabrielegaetanofronze/gitstuff/gfal2/src/plugins/gridftp

Such errors do disappear if I comment out GridFTP as well.
Do you see any option to circumvent this manually adding the necessary dependencies getting rid of the globus-toolkit one?

Cheers,

Gabriele

from gfal2.

mpatrascoiu avatar mpatrascoiu commented on May 25, 2024

Hello Gabriele,

Unfortunately, I'm not very familiar with MacOS packaging.
The globus toolkit dependencies are needed for some very essential protocols, such as GridFTP and SRM.
Gfal2 won't be of much use without those protocols.

The problem is globus-toolkit is no longer maintained, as Globus discontinued support and now offer their cloud product.
However, the globus toolkit repository seems to still be active.
Perhaps there is a way to install/build the package from there?
If those dependencies are met, Gfal2 should also build.

Hope it helps.
Mihai

from gfal2.

ShamrockLee avatar ShamrockLee commented on May 25, 2024

Some news about Mac packaging of gfal2:

I made it to package gfal2, gfal2-python and gfal2-util with Nix and Nixpkgs tooling. It's now on its way to Nixpkgs:

NixOS/nixpkgs#200100

The term Darwin refers to the the kernel of Mac OS, and is basically another way to say "Mac" in Nixpkgs scenario.

from gfal2.

Related Issues (7)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.