Date: Sun, 27 Nov 2022 00:26:40 +0800 From: Archimedes Gaviola <archimedes.gaviola@gmail.com> To: Xin LI <delphij@gmail.com> Cc: freebsd-database@freebsd.org Subject: Re: Include SQLite3 source upon buildworld Message-ID: <CAJFbk7GSY-eep5Dt5MUmvJ6-A36dFxzM6cdjoDFVWbFECejUJw@mail.gmail.com> In-Reply-To: <CAJFbk7F_6JKerboLPQGXaemSQp7-cCJ-WSeyE2JVs%2BAEgkSmBw@mail.gmail.com> References: <CAJFbk7H4cgZn6Cy4m6uMZhZKe93mMtHb6afbVb8YDrQwJ2FBtA@mail.gmail.com> <CAGMYy3u3ocKJ713m=m2qHXBTQxynMt=LWQiN99yYDo6KQuDTGg@mail.gmail.com> <CAJFbk7FSXshHziwTMkiMWsNE-SG2YUmFpXvOxJ6pd7f_xvDOOw@mail.gmail.com> <CAJFbk7F_6JKerboLPQGXaemSQp7-cCJ-WSeyE2JVs%2BAEgkSmBw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--0000000000000ff9f905ee621a92 Content-Type: text/plain; charset="UTF-8" On Sat, Nov 26, 2022 at 5:24 PM Archimedes Gaviola < archimedes.gaviola@gmail.com> wrote: > > > On Wed, Nov 16, 2022 at 10:06 AM Archimedes Gaviola < > archimedes.gaviola@gmail.com> wrote: > >> >> >> On Wed, Nov 16, 2022 at 1:48 AM Xin LI <delphij@gmail.com> wrote: >> >>> >>> >>> On Tue, Nov 15, 2022 at 5:16 AM Archimedes Gaviola < >>> archimedes.gaviola@gmail.com> wrote: >>> >>>> Hi, >>>> >>>> There's an SQLite3 source located in the /usr/src/contrib/sqlite3. Is >>>> there a way to include this upon buildworld so that I can run the binary >>>> after compiling? >>>> >>> >> Hi Xin Li, >> >> >>> Yes and no. >>> >>> Yes -- you can always compile shell.c source and link against the >>> library; the code is there, just the BSD make build glues are missing. >>> >> >> Okay, nice! I'm so glad that it can be done. My goal is to make SQLite3 >> be part of the base system in a customized FreeBSD build to make it >> embedded. I am checking the version and it's updated 3.93.3 as I'm using >> the 14.0-CURRENT. I need to figure-out this BSD make and glues you've >> mentioned to make this happen. >> >> No -- the omission is intentional: the library is meant to be used by the >>> base system as a "private library", which gives us the flexibility to not >>> give a stable API/ABI promise and to only build with options that the base >>> system needed (to reduce attack surface), so that when we make an update, >>> it will be a "wholesale" update and user applications are not broken, even >>> if sqlite3 update have introduced one. Users who want sqlite3 should >>> really install it from ports (databases/sqlite3) or package. >>> >> >> Oh I see, now I know its purpose. Currently, I have my system installed >> with SQLite3 via package install 'pkg install sqlite3' and it works very >> well but because this time I want something embeddable. It so happened that >> I was checking the source and surprisingly found sqlite3. Anyway, let me >> explore and try. >> >> Thanks and best regards, >> Archimedes >> > > Hi Xin LI, > > I added the new sqlite3 folder in the /usr/src/usr.bin/sqlite3 with the > Makefile file as content and then reference the /usr/src/contrib/sqlite3 > directory as source. > > root@generic:/usr/src/usr.bin/sqlite3 # ls -la > total 16 > drwxr-xr-x 2 root wheel 512 Nov 26 12:46 . > drwxr-xr-x 279 root wheel 5120 Nov 26 12:46 .. > -rw-r--r-- 1 root wheel 295 Nov 26 16:50 Makefile > > root@generic:/usr/src/usr.bin/sqlite3 # cat Makefile > # $FreeBSD$ > > .include <src.opts.mk> > > SQLITE= ${SRCTOP}/contrib/sqlite3 > .PATH: ${SQLITE} > > PROG= sqlite3 > MK_MAN=no > SRCS= sqlite3.c > INCS= shell.c sqlite3.h > > WARNS?= 3 > CFLAGS+= -I${SQLITE} \ > -DSQLITE_THREADSAFE=0 \ > -DSQLITE_OMIT_LOAD_EXTENSION > > .include <bsd.prog.mk> > > and perform the 'make' command. However, I encountered this error -> ld: > error: undefined symbol: main as referenced to the crt1_c.c:72 > (/usr/src/lib/csu/aarch64/crt1_c.c:72) file. > > root@generic:/usr/src/usr.bin/sqlite3 # make > cc -O2 -pipe -fno-common -I/usr/src/contrib/sqlite3 > -DSQLITE_THREADSAFE=1 -DSQLITE_OMIT_LOAD_EXTENSION -fPIE -g -gz=zlib > -MD -MF.depend.sqlite3.o -MTsqlite3.o -std=gnu99 -Wno-format-zero-length > -fstack-protector-strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -W > -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes > -Wpointer-arith -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body > -Wno-string-plus-int -Wno-unused-const-variable > -Wno-error=unused-but-set-variable -Wno-tautological-compare > -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function > -Wno-enum-conversion -Wno-unused-local-typedef > -Wno-address-of-packed-member -Qunused-arguments -c > /usr/src/contrib/sqlite3/sqlite3.c -o sqlite3.o > cc -O2 -pipe -fno-common -I/usr/src/contrib/sqlite3 -DSQLITE_THREADSAFE=1 > -DSQLITE_OMIT_LOAD_EXTENSION -fPIE -g -gz=zlib -std=gnu99 > -Wno-format-zero-length -fstack-protector-strong -Wsystem-headers -Werror > -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized -Wno-pointer-sign > -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable > -Wno-error=unused-but-set-variable -Wno-tautological-compare > -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function > -Wno-enum-conversion -Wno-unused-local-typedef > -Wno-address-of-packed-member -Qunused-arguments -Wl,-zrelro -pie -o > sqlite3.full sqlite3.o -L/usr/obj/usr/src/arm64.aarch64/lib/libthr > -lpthread > ld: error: undefined symbol: main > >>> referenced by crt1_c.c:72 (/usr/src/lib/csu/aarch64/crt1_c.c:72) > >>> /usr/lib/Scrt1.o:(__start) > cc: error: linker command failed with exit code 1 (use -v to see > invocation) > *** Error code 1 > > Stop. > make: stopped in /usr/src/usr.bin/sqlite3 > > Not sure if I missed something or if something goes wrong with my Makefile > content construction. I basically followed from here > https://www.sqlite.org/howtocompile.html and then proved the source to > compile successfully. > > root@generic:/usr/src/contrib/sqlite3 # pwd > /usr/src/contrib/sqlite3 > root@generic:/usr/src/contrib/sqlite3 # ls -lah > total 11364 > drwxr-xr-x 3 root wheel 1.0K Oct 27 08:06 . > drwxr-xr-x 89 root wheel 2.0K Nov 26 13:01 .. > -rw-r--r-- 1 root wheel 15K Oct 27 08:06 INSTALL > -rw-r--r-- 1 root wheel 729B Oct 27 08:06 Makefile.am > -rw-r--r-- 1 root wheel 547B Oct 27 08:06 Makefile.fallback > -rw-r--r-- 1 root wheel 37K Oct 27 08:06 Makefile.in > -rw-r--r-- 1 root wheel 28K Oct 27 08:06 Makefile.msc > -rw-r--r-- 1 root wheel 3.5K Oct 27 08:06 README.txt > -rw-r--r-- 1 root wheel 7.1K Oct 27 08:06 Replace.cs > -rw-r--r-- 1 root wheel 365K Oct 27 08:06 aclocal.m4 > -rwxr-xr-x 1 root wheel 7.2K Oct 27 08:06 compile > -rwxr-xr-x 1 root wheel 48K Oct 27 08:06 config.guess > -rwxr-xr-x 1 root wheel 35K Oct 27 08:06 config.sub > -rwxr-xr-x 1 root wheel 485K Oct 27 08:06 configure > -rw-r--r-- 1 root wheel 8.5K Oct 27 08:06 configure.ac > -rwxr-xr-x 1 root wheel 23K Oct 27 08:06 depcomp > -rwxr-xr-x 1 root wheel 15K Oct 27 08:06 install-sh > -rwxr-xr-x 1 root wheel 320K Oct 27 08:06 ltmain.sh > -rwxr-xr-x 1 root wheel 6.7K Oct 27 08:06 missing > -rw-r--r-- 1 root wheel 717K Oct 27 08:06 shell.c > -rw-r--r-- 1 root wheel 8.7K Oct 27 08:06 sqlite3.1 > -rw-r--r-- 1 root wheel 8.2M Oct 27 08:06 sqlite3.c > -rw-r--r-- 1 root wheel 599K Oct 27 08:06 sqlite3.h > -rw-r--r-- 1 root wheel 267B Oct 27 08:06 sqlite3.pc.in > -rw-r--r-- 1 root wheel 1.9K Oct 27 08:06 sqlite3.rc > -rw-r--r-- 1 root wheel 36K Oct 27 08:06 sqlite3ext.h > -rw-r--r-- 1 root wheel 78B Oct 27 08:06 sqlite3rc.h > drwxr-xr-x 6 root wheel 512B Oct 27 08:06 tea > > root@generic:/usr/src/contrib/sqlite3 # cc -DSQLITE_THREADSAFE=0 > -DSQLITE_OMIT_LOAD_EXTENSION shell.c sqlite3.c -o sqlite3 > > I've manually invoked the first compilation command inside the sqlite3 > source directory and it works just fine as seen below. > > root@generic:/usr/src/contrib/sqlite3 # cc -O2 -pipe -fno-common > -I/usr/src/contrib/sqlite3 -DSQLITE_THREADSAFE=0 > -DSQLITE_OMIT_LOAD_EXTENSION -fPIE -g -gz=zlib -MD -MF.depend.sqlite3.o > -MTsqlite3.o -std=gnu99 -Wno-format-zero-length -fstack-protector-strong > -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter > -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized > -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int > -Wno-unused-const-variable -Wno-error=unused-but-set-variable > -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality > -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef > -Wno-address-of-packed-member -Qunused-arguments -c > /usr/src/contrib/sqlite3/sqlite3.c -o sqlite3.o > > The second compilation command below seems to break even when compiled > manually. > > cc -O2 -pipe -fno-common -I/usr/src/contrib/sqlite3 -DSQLITE_THREADSAFE=1 > -DSQLITE_OMIT_LOAD_EXTENSION -fPIE -g -gz=zlib -std=gnu99 > -Wno-format-zero-length -fstack-protector-strong -Wsystem-headers -Werror > -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized -Wno-pointer-sign > -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable > -Wno-error=unused-but-set-variable -Wno-tautological-compare > -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function > -Wno-enum-conversion -Wno-unused-local-typedef > -Wno-address-of-packed-member -Qunused-arguments -Wl,-zrelro -pie -o > sqlite3.full sqlite3.o -L/usr/obj/usr/src/arm64.aarch64/lib/libthr > -lpthread > ld: error: undefined symbol: main > >>> referenced by crt1_c.c:72 (/usr/src/lib/csu/aarch64/crt1_c.c:72) > >>> /usr/lib/Scrt1.o:(__start) > cc: error: linker command failed with exit code 1 (use -v to see > invocation) > *** Error code 1 > > Stop. > make: stopped in /usr/src/usr.bin/sqlite3 > > Just want to solicit if you have an idea of this particular problem or you > might have encountered this problem before? > > Thanks and best regards, > Archimedes > Hi Xin Li, Kindly ignore my query as it has been resolved as I've posted recently here https://lists.freebsd.org/archives/freebsd-current/2022-November/002905.html . Thanks and best regards, Archimedes > > > > > > > > >> >> > --0000000000000ff9f905ee621a92 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote">= <div dir=3D"ltr" class=3D"gmail_attr">On Sat, Nov 26, 2022 at 5:24 PM Archi= medes Gaviola <<a href=3D"mailto:archimedes.gaviola@gmail.com">archimede= s.gaviola@gmail.com</a>> wrote:<br></div><blockquote class=3D"gmail_quot= e" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204)= ;padding-left:1ex"><div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div cla= ss=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Wed, Nov 16, 20= 22 at 10:06 AM Archimedes Gaviola <<a href=3D"mailto:archimedes.gaviola@= gmail.com" target=3D"_blank">archimedes.gaviola@gmail.com</a>> wrote:<br= ></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;= border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><= div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" c= lass=3D"gmail_attr">On Wed, Nov 16, 2022 at 1:48 AM Xin LI <<a href=3D"m= ailto:delphij@gmail.com" target=3D"_blank">delphij@gmail.com</a>> wrote:= <br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8= ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr= "><div dir=3D"ltr"><div style=3D"font-family:monospace,monospace"><br></div= ></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr"= >On Tue, Nov 15, 2022 at 5:16 AM Archimedes Gaviola <<a href=3D"mailto:a= rchimedes.gaviola@gmail.com" target=3D"_blank">archimedes.gaviola@gmail.com= </a>> wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:= 0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">= <div dir=3D"ltr"><div>Hi,</div><div><br></div><div>There's an SQLite3 s= ource located in the=20 /usr/src/contrib/sqlite3. Is there a way to include this upon buildworld so= that I can run the binary after compiling?</div></div></blockquote></div><= /div></blockquote><div><br></div><div>Hi Xin Li,</div><div></div><div>=C2= =A0<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px = 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"= ltr"><div class=3D"gmail_quote"><div style=3D"font-family:monospace,monospa= ce">Yes and no.</div><div style=3D"font-family:monospace,monospace"><br></d= iv><div style=3D"font-family:monospace,monospace">Yes -- you can always com= pile shell.c source and link against the library; the code is there, just t= he BSD make build glues are missing.</div></div></div></blockquote><div><br= ></div><div>Okay, nice! I'm so glad that it can be done. My goal is to = make SQLite3 be part of the base system in a customized FreeBSD build to ma= ke it embedded. I am checking the version and it's updated 3.93.3 as I&= #39;m using the 14.0-CURRENT. I need to figure-out this BSD make and glues = you've mentioned to make this happen.<br></div><div><br></div><blockquo= te class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px = solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div class=3D"gma= il_quote"><div style=3D"font-family:monospace,monospace">No -- the omission= is intentional: the library is meant to be used by the base system as a &q= uot;private library", which gives us the flexibility to not give a sta= ble API/ABI promise and to only build with options that the base system nee= ded (to reduce attack surface), so that when we make an update, it will be = a "wholesale" update and user applications are not broken, even i= f sqlite3 update have introduced one.=C2=A0 Users who want sqlite3 should r= eally install it from ports (databases/sqlite3) or package.</div></div></di= v></blockquote><div><br></div><div>Oh I see, now I know its purpose. Curren= tly, I have my system installed with SQLite3 via package install 'pkg i= nstall sqlite3' and it works very well but because this time I want som= ething embeddable. It so happened that I was checking the source and surpri= singly found sqlite3. Anyway, let me explore and try.</div><div><br></div><= div>Thanks and best regards,</div><div>Archimedes</div></div></div></blockq= uote><div><br></div><div>Hi Xin LI,</div><div><br></div><div>I added the ne= w sqlite3 folder in the /usr/src/usr.bin/sqlite3 with the Makefile file as content and then reference the /usr/src/contrib/= sqlite3 directory as source.<br></div><div><br></div><div>root@generic:/usr= /src/usr.bin/sqlite3 # ls -la<br>total 16<br>drwxr-xr-x =C2=A0 =C2=A02 root= =C2=A0wheel =C2=A0 512 Nov 26 12:46 .<br>drwxr-xr-x =C2=A0279 root =C2=A0w= heel =C2=A05120 Nov 26 12:46 ..<br>-rw-r--r-- =C2=A0 =C2=A01 root =C2=A0whe= el =C2=A0 295 Nov 26 16:50 Makefile<br><br>root@generic:/usr/src/usr.bin/sq= lite3 # cat Makefile<br># $FreeBSD$<br><br>.include <<a href=3D"http://s= rc.opts.mk" target=3D"_blank">src.opts.mk</a>><br><br>SQLITE=3D ${SRCTOP= }/contrib/sqlite3<br>.PATH: =C2=A0${SQLITE}<br><br>PROG=3D sqlite3<br>MK_MA= N=3Dno<br>SRCS=3D sqlite3.c<br>INCS=3D shell.c sqlite3.h<br><br>WARNS?=3D 3= <br>CFLAGS+=3D =C2=A0 =C2=A0 =C2=A0 =C2=A0-I${SQLITE} \<br>=C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 -DSQLITE_THREADSAFE=3D0 \<br>=C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 -DSQLITE_OMIT_LOAD_EXT= ENSION<br><br>.include <<a href=3D"http://bsd.prog.mk" target=3D"_blank"= >bsd.prog.mk</a>><br></div><div><br></div><div>and perform the 'make= ' command. However, I encountered this=20 error -> ld: error: undefined symbol: main as referenced to the crt1_c.c= :72 (/usr/src/lib/csu/aarch64/crt1_c.c:72) file. <br></div><div><br></div><= div>root@generic:/usr/src/usr.bin/sqlite3 # make<br>cc =C2=A0-O2 -pipe -fno= -common -I/usr/src/contrib/sqlite3 =C2=A0-DSQLITE_THREADSAFE=3D1 =C2=A0-DSQ= LITE_OMIT_LOAD_EXTENSION =C2=A0 -fPIE -g -gz=3Dzlib -MD =C2=A0-MF.depend.sq= lite3.o -MTsqlite3.o -std=3Dgnu99 -Wno-format-zero-length -fstack-protector= -strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-param= eter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-uninitia= lized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused-co= nst-variable -Wno-error=3Dunused-but-set-variable -Wno-tautological-compare= -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-enum= -conversion -Wno-unused-local-typedef -Wno-address-of-packed-member =C2=A0-= Qunused-arguments =C2=A0 =C2=A0-c /usr/src/contrib/sqlite3/sqlite3.c -o sql= ite3.o<br>cc -O2 -pipe -fno-common -I/usr/src/contrib/sqlite3 -DSQLITE_THRE= ADSAFE=3D1 -DSQLITE_OMIT_LOAD_EXTENSION -fPIE -g -gz=3Dzlib -std=3Dgnu99 -W= no-format-zero-length -fstack-protector-strong -Wsystem-headers -Werror -Wa= ll -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-p= rototypes -Wpointer-arith -Wno-uninitialized -Wno-pointer-sign -Wno-empty-b= ody -Wno-string-plus-int -Wno-unused-const-variable -Wno-error=3Dunused-but= -set-variable -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-= equality -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typede= f -Wno-address-of-packed-member -Qunused-arguments =C2=A0-Wl,-zrelro -pie = =C2=A0 -o sqlite3.full sqlite3.o =C2=A0-L/usr/obj/usr/src/arm64.aarch64/lib= /libthr -lpthread<br>ld: error: undefined symbol: main<br>>>> refe= renced by crt1_c.c:72 (/usr/src/lib/csu/aarch64/crt1_c.c:72)<br>>>>= ; =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 /usr/lib/Scrt1.o:(__star= t)<br>cc: error: linker command failed with exit code 1 (use -v to see invo= cation)<br>*** Error code 1<br><br>Stop.<br>make: stopped in /usr/src/usr.b= in/sqlite3</div><div><br></div><div>Not sure if I missed something or if so= mething goes wrong with my Makefile content construction. I basically follo= wed from here <a href=3D"https://www.sqlite.org/howtocompile.html" target= =3D"_blank">https://www.sqlite.org/howtocompile.html</a> and then proved th= e source to compile successfully.</div><div><br></div><div>root@generic:/us= r/src/contrib/sqlite3 # pwd<br>/usr/src/contrib/sqlite3<br>root@generic:/us= r/src/contrib/sqlite3 # ls -lah<br>total 11364<br>drwxr-xr-x =C2=A0 3 root = =C2=A0wheel =C2=A0 1.0K Oct 27 08:06 .<br>drwxr-xr-x =C2=A089 root =C2=A0wh= eel =C2=A0 2.0K Nov 26 13:01 ..<br>-rw-r--r-- =C2=A0 1 root =C2=A0wheel =C2= =A0 =C2=A015K Oct 27 08:06 INSTALL<br>-rw-r--r-- =C2=A0 1 root =C2=A0wheel = =C2=A0 729B Oct 27 08:06 Makefile.am<br>-rw-r--r-- =C2=A0 1 root =C2=A0whee= l =C2=A0 547B Oct 27 08:06 Makefile.fallback<br>-rw-r--r-- =C2=A0 1 root = =C2=A0wheel =C2=A0 =C2=A037K Oct 27 08:06 Makefile.in<br>-rw-r--r-- =C2=A0 = 1 root =C2=A0wheel =C2=A0 =C2=A028K Oct 27 08:06 Makefile.msc<br>-rw-r--r--= =C2=A0 1 root =C2=A0wheel =C2=A0 3.5K Oct 27 08:06 README.txt<br>-rw-r--r-= - =C2=A0 1 root =C2=A0wheel =C2=A0 7.1K Oct 27 08:06 Replace.cs<br>-rw-r--r= -- =C2=A0 1 root =C2=A0wheel =C2=A0 365K Oct 27 08:06 aclocal.m4<br>-rwxr-x= r-x =C2=A0 1 root =C2=A0wheel =C2=A0 7.2K Oct 27 08:06 compile<br>-rwxr-xr-= x =C2=A0 1 root =C2=A0wheel =C2=A0 =C2=A048K Oct 27 08:06 config.guess<br>-= rwxr-xr-x =C2=A0 1 root =C2=A0wheel =C2=A0 =C2=A035K Oct 27 08:06 config.su= b<br>-rwxr-xr-x =C2=A0 1 root =C2=A0wheel =C2=A0 485K Oct 27 08:06 configur= e<br>-rw-r--r-- =C2=A0 1 root =C2=A0wheel =C2=A0 8.5K Oct 27 08:06 <a href= =3D"http://configure.ac" target=3D"_blank">configure.ac</a><br>-rwxr-xr-x = =C2=A0 1 root =C2=A0wheel =C2=A0 =C2=A023K Oct 27 08:06 depcomp<br>-rwxr-xr= -x =C2=A0 1 root =C2=A0wheel =C2=A0 =C2=A015K Oct 27 08:06 install-sh<br>-r= wxr-xr-x =C2=A0 1 root =C2=A0wheel =C2=A0 320K Oct 27 08:06 ltmain.sh<br>-r= wxr-xr-x =C2=A0 1 root =C2=A0wheel =C2=A0 6.7K Oct 27 08:06 missing<br>-rw-= r--r-- =C2=A0 1 root =C2=A0wheel =C2=A0 717K Oct 27 08:06 shell.c<br>-rw-r-= -r-- =C2=A0 1 root =C2=A0wheel =C2=A0 8.7K Oct 27 08:06 sqlite3.1<br>-rw-r-= -r-- =C2=A0 1 root =C2=A0wheel =C2=A0 8.2M Oct 27 08:06 sqlite3.c<br>-rw-r-= -r-- =C2=A0 1 root =C2=A0wheel =C2=A0 599K Oct 27 08:06 sqlite3.h<br>-rw-r-= -r-- =C2=A0 1 root =C2=A0wheel =C2=A0 267B Oct 27 08:06 <a href=3D"http://s= qlite3.pc.in" target=3D"_blank">sqlite3.pc.in</a><br>-rw-r--r-- =C2=A0 1 ro= ot =C2=A0wheel =C2=A0 1.9K Oct 27 08:06 sqlite3.rc<br>-rw-r--r-- =C2=A0 1 r= oot =C2=A0wheel =C2=A0 =C2=A036K Oct 27 08:06 sqlite3ext.h<br>-rw-r--r-- = =C2=A0 1 root =C2=A0wheel =C2=A0 =C2=A078B Oct 27 08:06 sqlite3rc.h<br>drwx= r-xr-x =C2=A0 6 root =C2=A0wheel =C2=A0 512B Oct 27 08:06 tea<br></div><div= ><br></div><div>root@generic:/usr/src/contrib/sqlite3 # cc -DSQLITE_THREADS= AFE=3D0 -DSQLITE_OMIT_LOAD_EXTENSION shell.c sqlite3.c -o sqlite3</div><div= ><br></div><div>I've manually invoked the first compilation command ins= ide the sqlite3 source directory and it works just fine as seen below.<br><= /div><div><br></div><div>root@generic:/usr/src/contrib/sqlite3 # cc =C2=A0-= O2 -pipe -fno-common =C2=A0 -I/usr/src/contrib/sqlite3 =C2=A0-DSQLITE_THREA= DSAFE=3D0 =C2=A0-DSQLITE_OMIT_LOAD_EXTENSION -fPIE -g -gz=3Dzlib -MD =C2=A0= -MF.depend.sqlite3.o -MTsqlite3.o -std=3Dgnu99 -Wno-format-zero-length -fst= ack-protector-strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno= -unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith = -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -= Wno-unused-const-variable -Wno-error=3Dunused-but-set-variable -Wno-tautolo= gical-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-funct= ion -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-m= ember =C2=A0-Qunused-arguments -c /usr/src/contrib/sqlite3/sqlite3.c -o sql= ite3.o</div><div><br></div><div>The second compilation command below seems = to break even when compiled manually.</div><div><br></div><div> cc -O2 -pipe -fno-common -I/usr/src/contrib/sqlite3=20 -DSQLITE_THREADSAFE=3D1 -DSQLITE_OMIT_LOAD_EXTENSION -fPIE -g -gz=3Dzlib=20 -std=3Dgnu99 -Wno-format-zero-length -fstack-protector-strong=20 -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter=20 -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith=20 -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body=20 -Wno-string-plus-int -Wno-unused-const-variable=20 -Wno-error=3Dunused-but-set-variable -Wno-tautological-compare=20 -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function=20 -Wno-enum-conversion -Wno-unused-local-typedef=20 -Wno-address-of-packed-member -Qunused-arguments =C2=A0-Wl,-zrelro -pie =C2= =A0 -o=20 sqlite3.full sqlite3.o =C2=A0-L/usr/obj/usr/src/arm64.aarch64/lib/libthr=20 -lpthread<br>ld: error: undefined symbol: main<br>>>> referenced b= y crt1_c.c:72 (/usr/src/lib/csu/aarch64/crt1_c.c:72)<br>>>> =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 /usr/lib/Scrt1.o:(__start)<br>cc= : error: linker command failed with exit code 1 (use -v to see invocation)<= br>*** Error code 1<br><br>Stop.<br>make: stopped in /usr/src/usr.bin/sqlit= e3 <br></div><div><br></div><div>Just want to solicit if you have an idea o= f this particular problem or you might have encountered this problem before= ?</div><div><br></div><div>Thanks and best regards,</div><div>Archimedes<br= ></div></div></div></blockquote><div><br></div><div>Hi Xin Li,</div><div><b= r></div><div>Kindly ignore my query as it has been resolved as I've pos= ted recently here <a href=3D"https://lists.freebsd.org/archives/freebsd-cur= rent/2022-November/002905.html">https://lists.freebsd.org/archives/freebsd-= current/2022-November/002905.html</a>.<br></div><div><br></div><div>Thanks = and best regards,</div><div>Archimedes<br></div><div>=C2=A0 </div><blockquo= te class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px = solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div class=3D"gma= il_quote"><div></div><div><br></div><div><br></div><div><br></div><div><br>= </div><div><br></div><div><br></div><div>=C2=A0</div><blockquote class=3D"g= mail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204= ,204,204);padding-left:1ex"><div dir=3D"ltr"><div class=3D"gmail_quote"><di= v>=C2=A0 <br></div></div></div> </blockquote></div></div> </blockquote></div></div> --0000000000000ff9f905ee621a92--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJFbk7GSY-eep5Dt5MUmvJ6-A36dFxzM6cdjoDFVWbFECejUJw>