added nip 17

This commit is contained in:
Laan Tungir 2025-10-04 18:32:28 -04:00
parent 499accf440
commit c0784fc890
4 changed files with 16 additions and 8 deletions

View File

@ -531,16 +531,24 @@ The library uses automatic semantic versioning based on Git tags. Each build inc
**Build fails with secp256k1 errors:** **Build fails with secp256k1 errors:**
```bash ```bash
# Install secp256k1 with Schnorr support
sudo apt install libsecp256k1-dev # Ubuntu/Debian
# or
sudo yum install libsecp256k1-devel # CentOS/RHEL
# or
brew install secp256k1 # macOS
# If still failing, build from source with Schnorr support:
git clone https://github.com/bitcoin-core/secp256k1.git
cd secp256k1 cd secp256k1
./autogen.sh ./autogen.sh
./configure --enable-module-schnorrsig --enable-module-ecdh ./configure --enable-module-schnorrsig --enable-module-ecdh
make make
cd .. sudo make install
./build.sh lib
``` ```
**Library too large:** **Library size:**
The x64 library is intentionally large (~15MB) because it includes all secp256k1 cryptographic functions and OpenSSL for complete self-containment. The ARM64 library is smaller (~2.4MB) as it links against system OpenSSL. The library is small (~500KB) as it links against system libraries (secp256k1, OpenSSL, curl) rather than including them statically. This keeps the binary size manageable while maintaining full functionality.
**Linking errors:** **Linking errors:**
Make sure to include the math library: Make sure to include the math library:

View File

@ -1 +1 @@
0.4.5 0.4.6

View File

@ -176,7 +176,7 @@ if [ "$CURRENT_DIR" != "nostr_core_lib" ]; then
echo " cd nostr_core_lib" echo " cd nostr_core_lib"
echo " ./build.sh" echo " ./build.sh"
echo " cd .." echo " cd .."
echo " gcc your_app.c nostr_core_lib/libnostr_core_x64.a -lz -ldl -lpthread -lm -lssl -lcrypto -lcurl -o your_app" echo " gcc your_app.c nostr_core_lib/libnostr_core_x64.a -lz -ldl -lpthread -lm -lssl -lcrypto -lcurl -lsecp256k1 -o your_app"
echo "" echo ""
exit 1 exit 1
fi fi

View File

@ -2,10 +2,10 @@
#define NOSTR_CORE_H #define NOSTR_CORE_H
// Version information (auto-updated by increment_and_push.sh) // Version information (auto-updated by increment_and_push.sh)
#define VERSION "v0.4.5" #define VERSION "v0.4.6"
#define VERSION_MAJOR 0 #define VERSION_MAJOR 0
#define VERSION_MINOR 4 #define VERSION_MINOR 4
#define VERSION_PATCH 5 #define VERSION_PATCH 6
/* /*
* NOSTR Core Library - Complete API Reference * NOSTR Core Library - Complete API Reference