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]

Reply via email to