paleolimbot commented on issue #851: URL: https://github.com/apache/arrow-nanoarrow/issues/851#issuecomment-3937972559
Today I learned we have a Homebrew formula! > What is the suggested way of storing/building original library? Most users of nanoarrow create a single-file include (nanoarrow.c/nanoarrow.h) as described in the README. A real live example of mine is here ( https://github.com/geoarrow/geoarrow-r/blob/main/vendor-nanoarrow.sh ). Recently we do have reasonable package manager support (Homebrew, vcpkg, conan, wrapdb/meson) but we don't have a Linux package and likely won't for some time. Note that it's usually a good idea to use a namespace (i.e., `-DNANOARROW_NAMESPACE=MyPkgName`) if you are building a library that may coexist in the same process with another shared library (e.g., a Python or R package). > I've checked the installed .a and .dylib files with the command I believe ` ArrowArrayAppendInt/ArrowArrayAppendUInt` are `static inline`, which mean they are defined in the header files and not as symbols in the shared library. > For example, it is putting nanoarrow.h to 2 folders I believe these are symlinks and I think this is common for Homebrew. It is intended to be built with `-I/opt/homebrew/include` (or similar), which is how the headers find each other. > Because I want to build the library that could be used by other users with different configurations and OSes. Probably you want to just vendor nanoarrow into your project 🙂 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
