your email formatting is very difficult to decipher (either here or at https://marc.info/?l=openbsd-misc&m=176400768821493&w=2) but guessing you probably forgot to run ldconfig for the libraries inside the chroot.
however, it's debatable whether there's any point bothering with a chroot jail if you're going to copy in a shell, libc, perl and a bunch of CPAN, etc. On 2025-11-24, Masayoshi Fujimoto <[email protected]> wrote: > ------=_Part_626261_193540646.1764003591766 > Content-Type: text/plain; charset=UTF-8 > Content-Transfer-Encoding: quoted-printable > > Hi. I would like to solve this error on OpenBSD 7.8. My sqlite.pl does not = > work. Out of /var/www, I used ldd command. =C2=A0 # ldd /usr/local/libdata/= > perl5/site_perl/amd64-openbsd/auto/DBD/SQLite/SQLite.so /usr/local/libdata/= > perl5/site_perl/amd64-openbsd/auto/DBD/SQLite/SQLite.so: =C2=A0 =C2=A0 =C2= >=A0 =C2=A0 Start=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 End=C2=A0 =C2=A0 = >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Type=C2=A0 Open Ref GrpRef Name =C2=A0 = >=C2=A0 =C2=A0 =C2=A0 00000efff7ac4000 00000efff7af9000 dlib=C2=A0 2=C2=A0 = >=C2=A0 0=C2=A0 =C2=A00=C2=A0 =C2=A0 =C2=A0 /usr/local/libdata/perl5/site_pe= > rl/amd64-openbsd/auto/DBD/SQLite/SQLite.so =C2=A0 =C2=A0 =C2=A0 =C2=A0 0000= > 0f00ba75c000 00000f00ba92a000 rlib=C2=A0 0=C2=A0 =C2=A0 1=C2=A0 =C2=A00=C2= >=A0 =C2=A0 =C2=A0 /usr/local/lib/libsqlite3.so.37.34 =C2=A0 =C2=A0 =C2=A0 = >=C2=A0 00000f0066013000 00000f0066020000 rlib=C2=A0 0=C2=A0 =C2=A0 1=C2=A0 = >=C2=A00=C2=A0 =C2=A0 =C2=A0 /usr/lib/libpthread.so.28.0 =C2=A0 =C2=A0 =C2= >=A0 =C2=A0 00000f00c23f7000 00000f00c2428000 rlib=C2=A0 0=C2=A0 =C2=A0 1=C2= >=A0 =C2=A00=C2=A0 =C2=A0 =C2=A0 /usr/lib/libm.so.10.1 =C2=A0 =C2=A0 =C2=A0 = >=C2=A0 00000f008c799000 00000f008c7b7000 rlib=C2=A0 0=C2=A0 =C2=A0 1=C2=A0 = >=C2=A00=C2=A0 =C2=A0 =C2=A0 /usr/lib/libz.so.7.1 I copied some files in /va= > r/www. =C2=A0 # cp /usr/bin/env /var/www/usr/bin/ # cp /usr/bin/perl /var/w= > ww/usr/bin/ # cp /usr/libexec/ld.so /var/www/usr/libexec/ # cp /usr/lib/lib= > m.so.10.1 /var/www/usr/lib/ # cp /usr/lib/libc.so.102.0 /var/www/usr/lib/ #= > cp /usr/lib/libperl.so.26.0 /var/www/usr/lib/ # cp -r /usr/libdata/perl5/*= > /var/www/usr/libdata/perl5/ # cp /usr/lib/libz.so.7.1 /var/www/usr/lib/=C2= >=A0 # cp /usr/local/lib/libsqlite3.so.37.34 /var/www/usr/local/lib/=C2=A0 #= > cp /usr/lib/libpthread.so.28.0 /var/www/usr/lib/=C2=A0 # cp /usr/local/lib= > data/perl5/site_perl/amd64-openbsd/auto/DBD/SQLite/SQLite.so /var/www/usr/l= > ocal/libdata/perl5/site_perl/amd64-openbsd/auto/DBD/SQLite/ # cp -r /usr/lo= > cal/libdata/perl5/site_perl/* /var/www/usr/local/libdata/perl5/site_perl/ = >=C2=A0 Then I moved in /var/www. =C2=A0 # chroot /var/www/ /bin/sh=C2=A0 # = > ldd /usr/local/libdata/perl5/site_perl/amd64-openbsd/auto/DBD/SQLite/SQLite= > .so=C2=A0 /usr/local/libdata/perl5/site_perl/amd64-openbsd/auto/DBD/SQLite/= > SQLite.so: Cannot load specified object /usr/local/libdata/perl5/site_perl/= > amd64-openbsd/auto/DBD/SQLite/SQLite.so: exit status 1 # ls -l /usr/local/l= > ib/libsqlite3.so.37.34 -rw-r--r--=C2=A0 1 0=C2=A0 1=C2=A0 2055936 Nov 23 14= >:50 /usr/local/lib/libsqlite3.so.37.34 # ls -l /usr/lib/libpthread.so.28.0 = > -r--r--r--=C2=A0 1 0=C2=A0 1=C2=A0 129304 Nov 23 14:51 /usr/lib/libpthread.= > so.28.0 # ls -l=C2=A0 /usr/lib/libm.so.10.1 -r--r--r--=C2=A0 1 0=C2=A0 1=C2= >=A0 595096 Nov 23 12:19 /usr/lib/libm.so.10.1 # ls -l=C2=A0 /usr/lib/libz.s= > o.7.1 -r--r--r--=C2=A0 1 0=C2=A0 1=C2=A0 297856 Nov 23 14:37 /usr/lib/libz.= > so.7.1 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= >=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=C2=A0 # perl -cw sq= > lite.pl=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= >=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 sqlite.pl syntax OK # perl sqlite.pl=C2= >=A0 =C2=A0 =C2=A0=C2=A0 install_driver(SQLite) failed: Can't load '/usr/loc= > al/libdata/perl5/site_perl/amd64-openbsd/auto/DBD/SQLite/SQLite.so' for mod= > ule DBD::SQLite: Cannot load specified object at /usr/libdata/perl5/XSLoade= > r.pm line 94. =C2=A0at /usr/local/libdata/perl5/site_perl/amd64-openbsd/DBD= > /SQLite.pm line 16. Compilation failed in require at (eval 5) line 3. Perha= > ps a required shared library or dll isn't installed where expected =C2=A0at= > sqlite.pl line 12. =C2=A0 Here is my sqlite.pl =C2=A0 #!/usr/bin/perl =C2= >=A0 use strict; use warnings; use DBI; =C2=A0 # Connection details (DSN: Da= > ta Source Name) # 'sqlite:dbname=3D:memory:' is the standard DSN for an in-= > memory SQLite database. my $dsn =3D "dbi:SQLite:dbname=3D:memory:"; =C2=A0 = > # Connect to the database my $dbh =3D DBI->connect($dsn, "", "", { =C2=A0 = >=C2=A0 RaiseError =3D> 1, # Throw an exception if connection fails =C2=A0 = >=C2=A0 AutoCommit =3D> 1, }) or die $DBI::errstr; =C2=A0 # Disconnect from = > the database (immediate disconnection) $dbh->disconnect; =C2=A0 print "Cont= > ent-type: text/html\n\nHello, World!\n"; exit; > ------=_Part_626261_193540646.1764003591766 > Content-Type: text/html; charset=UTF-8 > Content-Transfer-Encoding: quoted-printable > ><html> > <head></head> > <body>=20 > <p>Hi.</p>=20 > <p>I would like to solve this error on OpenBSD 7.8.<br> My sqlite.pl does= > not work.</p>=20 > <p><br> Out of /var/www, I used ldd command.</p>=20 > <p> </p>=20 > <p># ldd /usr/local/libdata/perl5/site_perl/amd64-openbsd/auto/DBD/SQLite= > /SQLite.so<br> /usr/local/libdata/perl5/site_perl/amd64-openbsd/auto/DBD/SQ= > Lite/SQLite.so:<br> Start &= > nbsp; End Typ= > e Open Ref GrpRef Name<br> 00000efff7ac40= > 00 00000efff7af9000 dlib 2 0 0 = > /usr/local/libdata/perl5/site_perl/amd64-openbsd/auto/DBD/SQLite/SQL= > ite.so<br> 00000f00ba75c000 00000f00ba92a000 rl= > ib 0 1 0 /usr/local/lib/= > libsqlite3.so.37.34<br> 00000f0066013000 00000f= > 0066020000 rlib 0 1 0 /u= > sr/lib/libpthread.so.28.0<br> 00000f00c23f7000 = > 00000f00c2428000 rlib 0 1 0 &nb= > sp; /usr/lib/libm.so.10.1<br> 00000f008c799000 = > 00000f008c7b7000 rlib 0 1 0 &nb= > sp; /usr/lib/libz.so.7.1</p>=20 > <p><br> I copied some files in /var/<a href=3D"http://www." target=3D"_bl= > ank" rel=3D"noopener noreferrer">www.</a></p>=20 > <p> </p>=20 > <p># cp /usr/bin/env /var/www/usr/bin/<br> # cp /usr/bin/perl /var/www/us= > r/bin/<br> # cp /usr/libexec/ld.so /var/www/usr/libexec/<br> # cp /usr/lib/= > libm.so.10.1 /var/www/usr/lib/<br> # cp /usr/lib/libc.so.102.0 /var/www/usr= > /lib/<br> # cp /usr/lib/libperl.so.26.0 /var/www/usr/lib/<br> # cp -r /usr/= > libdata/perl5/* /var/www/usr/libdata/perl5/<br> # cp /usr/lib/libz.so.7.1 /= > var/www/usr/lib/ <br> # cp /usr/local/lib/libsqlite3.so.37.34 /var/www= > /usr/local/lib/ <br> # cp /usr/lib/libpthread.so.28.0 /var/www/usr/lib= > / <br> # cp /usr/local/libdata/perl5/site_perl/amd64-openbsd/auto/DBD/= > SQLite/SQLite.so /var/www/usr/local/libdata/perl5/site_perl/amd64-openbsd/a= > uto/DBD/SQLite/<br> # cp -r /usr/local/libdata/perl5/site_perl/* /var/www/u= > sr/local/libdata/perl5/site_perl/</p>=20 > <p> </p>=20 > <p>Then I moved in /var/<a href=3D"http://www." target=3D"_blank" rel=3D"= > noopener noreferrer">www.</a></p>=20 > <p> </p>=20 > <p># chroot /var/www/ /bin/sh </p>=20 > <p># ldd /usr/local/libdata/perl5/site_perl/amd64-openbsd/auto/DBD/SQLite= > /SQLite.so <br> /usr/local/libdata/perl5/site_perl/amd64-openbsd/auto/= > DBD/SQLite/SQLite.so:<br> Cannot load specified object<br> /usr/local/libda= > ta/perl5/site_perl/amd64-openbsd/auto/DBD/SQLite/SQLite.so: exit status 1</= > p>=20 > <p># ls -l /usr/local/lib/libsqlite3.so.37.34<br> -rw-r--r-- 1 0&nb= > sp; 1 2055936 Nov 23 14:50 /usr/local/lib/libsqlite3.so.37.34<br> # l= > s -l /usr/lib/libpthread.so.28.0<br> -r--r--r-- 1 0 1 129= > 304 Nov 23 14:51 /usr/lib/libpthread.so.28.0<br> # ls -l /usr/lib/lib= > m.so.10.1<br> -r--r--r-- 1 0 1 595096 Nov 23 12:19 /usr/l= > ib/libm.so.10.1<br> # ls -l /usr/lib/libz.so.7.1<br> -r--r--r-- = > 1 0 1 297856 Nov 23 14:37 /usr/lib/libz.so.7.1<br> &nbs= > p; &n= > bsp; = > <br> # perl -cw sqlite.pl &nb= > sp; &= > nbsp; = > <br> sqlite.pl syntax OK</p>=20 > <p><br> # perl sqlite.pl <br> install_driver(SQL= > ite) failed: Can't load '/usr/local/libdata/perl5/site_perl/amd64-openbsd/a= > uto/DBD/SQLite/SQLite.so' for module DBD::SQLite: Cannot load specified obj= > ect at /usr/libdata/perl5/XSLoader.pm line 94.<br> at /usr/local/libd= > ata/perl5/site_perl/amd64-openbsd/DBD/SQLite.pm line 16.<br> Compilation fa= > iled in require at (eval 5) line 3.<br> Perhaps a required shared library o= > r dll isn't installed where expected<br> at sqlite.pl line 12.</p>=20 > <p> </p>=20 > <p>Here is my sqlite.pl</p>=20 > <p> </p>=20 > <p>#!/usr/bin/perl</p>=20 > <p> </p>=20 > <p>use strict;<br> use warnings;<br> use DBI;</p>=20 > <p> </p>=20 > <p># Connection details (DSN: Data Source Name)<br> # 'sqlite:dbname=3D:m= > emory:' is the standard DSN for an in-memory SQLite database.<br> my $dsn = >=3D "dbi:SQLite:dbname=3D:memory:";</p>=20 > <p> </p>=20 > <p># Connect to the database<br> my $dbh =3D DBI->connect($dsn, "", ""= > , { > <!-- --><br> RaiseError =3D> 1, # Throw an exception if= > connection fails<br> AutoCommit =3D> 1,<br> }) or die $DB= > I::errstr;</p>=20 > <p> </p>=20 > <p># Disconnect from the database (immediate disconnection)<br> $dbh->= > disconnect;</p>=20 > <p> </p>=20 > <p>print "Content-type: text/html\n\nHello, World!\n";<br> exit;</p>=20 > </body> ></html> > ------=_Part_626261_193540646.1764003591766-- > > -- Please keep replies on the mailing list.

