Index of /QNX/8.0-DEVELOPER_DESKTOP/RPi4_aarch64/pkgsrc/

NameLast ModifiedSizeType
../ -  Directory
All/2026-Apr-10 08:52:07-  Directory
FIXES/2026-Mar-26 22:01:34-  Directory
PATCHES/2026-Mar-22 10:35:19-  Directory
QNX-PS/2026-Mar-27 09:16:26-  Directory
NOTES.txt2026-Apr-04 18:53:371.4Ktext/plain; charset=utf-8
README.txt2026-Apr-02 18:11:517.8Ktext/plain; charset=utf-8
pkg.tgz2026-Mar-22 12:53:502.8Mapplication/x-gtar-compressed
 _____ _   _ __   __   ___                           _              
|  _  | \ | |\ \ / /  / _ \                         | |             
| | | |  \| | \ V /  / /_\ \_ __  _   ___      _____| |__  _ __ ___ 
| | | | . ` | /   \  |  _  | '_ \| | | \ \ /\ / / _ \ '_ \| '__/ _ \
\ \/' / |\  |/ /^\ \ | | | | | | | |_| |\ V  V /  __/ | | | | |  __/
 \_/\_\_| \_/\/   \/ \_| |_/_| |_|\__, | \_/\_/ \___|_| |_|_|  \___|
                                   __/ |                            
                                  |___/                             

QNX 8.0.3 aarch64 

========================================================================


## Porting pkgsrc-current to QNX8 8.0.0 Raspberry Pi4 Developer Desktop 

1.1) 

## get pkgsrc-current 

[root@qnxpi /data]# curl https://cdn.netbsd.org/pub/pkgsrc/current/pkgsrc.tar.gz -o pkgsrc.tar.gz 
[root@qnxpi /data]# tar -zxvf pkgsrc.tar.gz 
[root@qnxpi /data]# rm pkgsrc.tar.gz 
[root@qnxpi /data]# cd pkgsrc 

## I have created a bootstrap binary tgz archive if you want to test it otherwise build it from source - see secton 1.2) 
## Just download to /data and extract it 
## Make sure you have pkgsrc downloaded and extracted  in /data 

[root@qnxpi /data]# curl https://astr0baby.online/QNX/8.0-DEVELOPER_DESKTOP/RPi4_aarch64/pkgsrc/pkg.tgz -o pkg.tgz
[root@qnxpi /data]# tar -zxvf pkg.tgz
[root@qnxpi /data]# rm -f pkg.tgz 

## Make sure you build/install a regular patch source (see below)  
## Make sure you have a symlink in /data/pkg/bin/curl pointing to real /usr/bin/curl 
## You can now use pkgsrc bmake /data/pkg/bin/bmake on pkgsrc 


1.2) 
 
## If wou wish to compile from sources and bootstrap yourself (takes about 1 hours on RPi4)  
## Create a working directory to hold our custom patches 

[root@qnxpi /data/pkgsrc]# mkdir PATCHES 
[root@qnxpi /data/pkgsrc]# cd PATCHES  
[root@qnxpi /data/pkgsrc/PATCHES]# 


## Download patches 

[root@qnxpi /data/pkgsrc/PATCHES]# curl https://astr0baby.online/QNX/8.0-DEVELOPER_DESKTOP/RPi4_aarch64/pkgsrc/PATCHES/config.guess -o config.guess
[root@qnxpi /data/pkgsrc/PATCHES]# curl https://astr0baby.online/QNX/8.0-DEVELOPER_DESKTOP/RPi4_aarch64/pkgsrc/PATCHES/config.sub -o config.sub 
[root@qnxpi /data/pkgsrc/PATCHES]# curl https://astr0baby.online/QNX/8.0-DEVELOPER_DESKTOP/RPi4_aarch64/pkgsrc/PATCHES/archive_read_disk_entry_from_file.c -o archive_read_disk_entry_from_file.c 
[root@qnxpi /data/pkgsrc/PATCHES]# curl  https://astr0baby.online/QNX/8.0-DEVELOPER_DESKTOP/RPi4_aarch64/pkgsrc/PATCHES/archive_read_disk_posix.c -o archive_read_disk_posix.c
[root@qnxpi /data/pkgsrc/PATCHES]# curl https://astr0baby.online/QNX/8.0-DEVELOPER_DESKTOP/RPi4_aarch64/pkgsrc/PATCHES/archive_write_disk_posix.c -o archive_write_disk_posix.c 
[root@qnxpi /data/pkgsrc/PATCHES]# curl  https://astr0baby.online/QNX/8.0-DEVELOPER_DESKTOP/RPi4_aarch64/pkgsrc/PATCHES/curl-8.19.0.tar -o curl-8.19.0.tar 


## Copy patched config.sub and config.gues to all pkgsrc dirs where config.sub is static 

[root@qnxpi /data/pkgsrc/PATCHES]# cd /data/pkgsrc 
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./archivers/libarchive/files/build/autoconf/
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./archivers/pax/files/
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./mk/gnu-config/
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./net/fetch/files/
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./pkgtools/compat_headers/files/
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./pkgtools/digest/files/
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./pkgtools/libnbcompat/files/
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./pkgtools/mtree/files/
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./pkgtools/pkg_install/files/
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./pkgtools/rcorder/files/
[root@qnxpi /data/pkgsrc]# cp PATCHES/config.* ./textproc/nbsed/files/


## QNX does not have LCHMOD LCHOWN functions in libarchive
## Copy over the patched files 

[root@qnxpi /data/pkgsrc/PATCHES]# cp archive_read_disk_entry_from_file.c /data/pkgsrc/archivers/libarchive/files/libarchive/ 
[root@qnxpi /data/pkgsrc/PATCHES]# cp archive_read_disk_posix.c /data/pkgsrc/archivers/libarchive/files/libarchive/ 
[root@qnxpi /data/pkgsrc/PATCHES]# cp archive_write_disk_posix.c /data/pkgsrc/archivers/libarchive/files/libarchive/


## Finally bootstrap pkgsrc on QNX 8 

[root@qnxpi /data/pkgsrc/PATCHES]# cd /data/pkgsrc/bootstrap 
[root@qnxpi /data/pkgsrc/bootstrap]# ./bootstrap --prefix=/data/pkg  --compiler clang --make-jobs=4 

## QNX8 rpi4 does not have ftp so we need to change the fetch command to native curl 
## there is something broken with setting it up normally so we need to do a little hack 
## create a dummy curl package in /data/pkg/pkgd/curl-8.19.0 

[root@qnxpi /data/pkgsrc/bootstrap]# cd /data/pkgsrc/PATCHES/ 
[root@qnxpi /data/pkgsrc/PATCHES]# mv curl-8.19.0.tar /data/pkg/pkgdb/
[root@qnxpi /data/pkgsrc/PATCHES]# cd /data/pkg/pkgdb 
[root@qnxpi /data/pkg/pkgdb]# tar -xvf  curl-8.19.0.tar  
[root@qnxpi /data/pkg/pkgdb]# rm -f curl-8.19.0.tar   

## next symlink /usr/bin/curl /data/pkg/bin/curl 

[root@qnxpi /data/pkg/pkgdb]# ln -s /usr/bin/curl /data/pkg/bin/curl

## Set following in /data/pkg/etc/mk.conf 

[root@qnxpi /data/pkg/pkgdb]# cd /data/pkg/etc/
[root@qnxpi /data/pkg/etc]# vi mk.conf 

FETCH_USING=            curl
FETCH_CMD.curl=		/usr/bin/curl



## We also need a GNU patch - as the native one gets stuck during 
## pkgsrc patching procedure 

[root@qnxpi /data/LOCAL/patch-2.8]# /usr/bin/patch --version
toybox 0.8.11
[root@qnxpi /data/LOCAL/patch-2.8]# /usr/local/bin/patch --version
GNU patch 2.8
Copyright 1989-2025 Free Software Foundation, Inc.
Copyright 1984-1988 Larry Wall

## Get GNU patch 2.8

[root@qnxpi /data/pkg/etc]# cd /data/pkgsrc/PATCHES 
[root@qnxpi /data/pkgsrc/PATCHES]# curl https://ftp.gnu.org/gnu/patch/patch-2.8.tar.gz -o patch.tar.gz 
[root@qnxpi /data/pkgsrc/PATCHES]# tar -zxvf patch.tar.gz 
[root@qnxpi /data/pkgsrc/PATCHES]# rm patch.tar.gz
[root@qnxpi /data/pkgsrc/PATCHES]# cd patch-2.8 
[root@qnxpi /data/pkgsrc/PATCHES/patch-2.8]# 
[root@qnxpi /data/pkgsrc/PATCHES/patch-2.8]# CFLAGS="-D_FORTIFY_SOURCE=0 -U_FORTIFY_SOURCE" ./configure
[root@qnxpi /data/pkgsrc/PATCHES/patch-2.8]# make
[root@qnxpi /data/pkgsrc/PATCHES/patch-2.8]# make install

## rename /usr/bin/patch to /usr/bin/patch.old 
## symlink /usr/local/bin/patch to /usr/bin/patch

[root@qnxpi /data/pkgsrc/PATCHES/patch-2.8]# mv /usr/bin/patch /usr/bin/patch.old 
[root@qnxpi /data/pkgsrc/PATCHES/patch-2.8]# ln -s /usr/local/bin/patch /usr/bin/patch 

## Then pkgsrc bmake will work using native curl on QNX8 aarch64 !  
## However there are still many things to fix - so don't expect this to work for all pkgsrc sources :) 

#### IMPORTANT #### 

Don't forget to set LD_LIBRARY patch in your $home .profile as follows: 

export LD_LIBRARY_PATH=/data/pkg/lib:/data/home/$user/lib:$LD_LIBRARY_PATH


## Congratulations - you now have bootstrapped pkgsrc-current onto the QNX 8.0 aarch64 

[root@qnxpi /data/pkgsrc/PATCHES]# /data/pkg/sbin/pkg_info 
libnbcompat-20251029 Portable NetBSD compatibility library
bootstrap-mk-files-20250601 *.mk files for the bootstrap bmake utility
install-sh-20100824 Install script compatible with the BSD install program
bmake-20240909      Portable (autoconf) version of NetBSD 'make' utility
nawk-20250726       Brian Kernighan's pattern-directed scanning and processing language
nbsed-20240312nb2   NetBSD-current's sed(1)
pkg_install-20260227 Package management and administration tools for pkgsrc
digest-20220214     Message digest wrapper utility
curl-8.19.0         Package management and administration tools for pkgsrc
pkg_install-info-4.5nb3 Standalone GNU info file installation utility

## With some additional fixes to specific pkgsrc sources I was able to 
## compile security/bcrypt 

## Please note the additional .txt files (these are for pkgsrc specific patches/changes) in the FIXES directory  

Webserver 1.0