Giter Club home page Giter Club logo

Comments (8)

sonicaj avatar sonicaj commented on August 17, 2024

You changed the compiler flags for the autoconf script, did you do the same for py-libzfs setup.py ?

from py-libzfs.

igalic avatar igalic commented on August 17, 2024

not enough, i'm afraid.
perhaps we should generate setup.py from configure…

from py-libzfs.

sonicaj avatar sonicaj commented on August 17, 2024

That is something we can think about. I think it is safe to close this issue then as we have concluded the issue is different to what outlined in the description. Please if you have other suggestions, feel free to comment or open up a new issue. Ty

from py-libzfs.

igalic avatar igalic commented on August 17, 2024

@sonicaj i'm confused.
the problem is not the last error from gcc, but the myriad of Cython errors before that.
all relating to bookmark and send feature, which have been correctly recognized by configure:

DEF HAVE_RECVFLAGS_T_RESUMABLE = 1
DEF HAVE_LZC_BOOKMARK = 0
DEF HAVE_ZFS_MAX_DATASET_NAME_LEN = 1
DEF HAVE_POOL_SCRUB_CMD_T = 1
DEF HAVE_LZC_SEND_SPACE = 0
DEF HAVE_ZPOOL_SCAN = 2
DEF HAVE_ZFS_SEND_ONE = 4
DEF HAVE_ZFS_RECEIVE = 6
DEF HAVE_ZFS_MAXNAMELEN = 0
DEF HAVE_ZPOOL_MAXNAMELEN = 0
DEF HAVE_EZFS_SCRUB_PAUSED = 1
DEF HAVE_ZFS_SEND_RESUME = 0
DEF HAVE_ZFS_SEND_RESUME_TOKEN_TO_NVLIST = 0
DEF HAVE_SENDFLAGS_T_COMPRESS = 1
DEF HAVE_LZC_SEND_FLAG_EMBED_DATA = 1
DEF HAVE_SENDFLAGS_T_TYPEDEF = 1
DEF HAVE_POOL_SCAN_STAT_T_PAUSE = 1

but are not respected by the source code.

from py-libzfs.

sonicaj avatar sonicaj commented on August 17, 2024

I think I can help with that. The way cython currently searches for packages is that it is configured to do so thinking of freebsd only and sets the appropriate compiler flags. Now when we try to build it, of course the cython compiler is unable to find the necessary libzfs.package because the place it is looking at most probably doesn't exist. You'll need to make sure that when cython searches for the header files, it is looking in the correct place

from py-libzfs.

sonicaj avatar sonicaj commented on August 17, 2024

Now configure and cython are two different things. Configure runs it's own flow with it's own compiler flags which is configured to look in specific places. If it is able to find those files, that doesn't mean that the cython project will do so as well. Cython project's compiler also needs to be configured to look in the right place. The only relation between them right now is the assumption that they have the same flags set and thus if configure says something is there, it is safe to believe in cython that it is. But in this case, we violate this relation as they don't have the same flags set. Hope this clears a few things

from py-libzfs.

akkornel avatar akkornel commented on August 17, 2024

Hello! For what it's worth, I was able to make a little more progress on this. All of those Cython errors stem from the configure script thinking that some of the libzfs_core.h stuff is missing (the "NOT FOUND" message in the configure output). That was happening because -lgeom is in LDFLAGS, and Linux does not do GEOM. Removing -lgeom and re-running autoconf allows you to make progress.

I was able to get a build to the point where I was able to identify differences between libzfs on FreeBSD and libzfs on Linux. Unfortunately, I'm not able to continue my work right now, but I left all my nodes in #21. I hope it helps!

from py-libzfs.

william-gr avatar william-gr commented on August 17, 2024

You might be interested in #44

from py-libzfs.

Related Issues (20)

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.