Hi listers,
I have installed FPC 2.4.4 using the following package:
http://mirrors.iwi.me/lazarus/snapshots/fpc-2.4.4-1.i386.deb.tar
Having unpacked it in a folder, I did:
sudo dpkg -i *.deb
The instalation was seemingly successful since I could compile some
sources. However, compiling the attached example, I got an error:
fpc macuco.pas > output
The output file has received the following content:
Free Pascal Compiler version 2.4.4-1 [2011/05/24] for i386
Copyright (c) 1993-2010 by Florian Klaempfl
Target OS: Linux for i386
Compiling macuco.pas
Compiling macbase.pas
Linking macuco
macuco.pas(14,1) Error: Error while linking
macuco.pas(14,1) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/bin/ppc386 returned an error exitcode (normal if you did not
specify a source file to be compiled)
The executable was not generated. In its place, I found "link.res". The
compilation was successful, but for a unknown reason, the linkage was
not completed. I don't understand what the statements in link.res means
indeed.
In spite of the output redirection, a statement was writen in console
in stead of the output file.
Cannot find -lsqlite3
I tried a reinstalation:
sudo apt-get purge fp-compiler
sudo apt-get autoremove
cd /home/luciano/fpc-2.4.4-1.i386/
sudo dpkg -I *deb
After it, the compiler shows the same behaviour and the described error
continues. The compiler seems to be working correctly when I don't use
"uses db, sqlite3ds'.
Does someone know what it is wrong?
I use FPC 2.4.4 without Lazarus and Ubuntu 10.10.
Luciano
SEARCH_DIR(/lib/)
SEARCH_DIR(/usr/lib/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/httpd22/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/rtl/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fpgtk/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/gtk1/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fftw/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/x11/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/utmp/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-js/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/mysql/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/libcurl/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/libgd/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-registry/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/hash/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/gmp/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/ncurses/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/pcap/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/pthreads/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-json/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/gtk2/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/ggi/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/libsee/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/libpng/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/pasjpeg/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-res/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/iconvenc/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/lua/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/ldap/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-db/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/odbc/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-async/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-extra/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/gdbm/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/sqlite/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/a52/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/proj4/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/httpd13/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/openal/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/cairo/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/hermes/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/paszlib/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/unixutil/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/lexyacc/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/svgalib/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/mad/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/opengl/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/symbolic/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/dbus/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/opencl/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/chm/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/dts/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-base/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/modplug/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fv/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/numlib/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/oggvorbis/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/gnome1/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/graph/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fppkg/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/pxlib/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-xml/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-net/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/rsvg/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/ptc/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fastcgi/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/regexpr/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/postgres/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/unzip/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/xforms/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/imlib/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/cdrom/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/aspell/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/tcl/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-fpcunit/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/oracle/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fpmkunit/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/httpd20/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/ibase/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-passrc/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-process/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/gdbint/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/sdl/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/bzip2/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/imagemagick/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/libxml2/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/uuid/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/libc/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/openssl/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/zlib/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-image/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/syslog/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/newt/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/fcl-web/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/bfd/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/users/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/units/i386-linux/)
SEARCH_DIR(/usr/lib/fpc/2.4.4/)
INPUT(
macuco.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/system.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/objpas.o
macbase.o
/usr/lib/fpc/2.4.4/units/i386-linux/fcl-db/db.o
/usr/lib/fpc/2.4.4/units/i386-linux/fcl-db/sqlite3ds.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/sysutils.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/classes.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/variants.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/fmtbcd.o
/usr/lib/fpc/2.4.4/units/i386-linux/fcl-base/maskutils.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/types.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/typinfo.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/rtlconsts.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/unix.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/errors.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/sysconst.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/unixtype.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/baseunix.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/unixutil.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/syscall.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/math.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/varutils.o
/usr/lib/fpc/2.4.4/units/i386-linux/fcl-db/dbconst.o
/usr/lib/fpc/2.4.4/units/i386-linux/fcl-db/customsqliteds.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/strutils.o
/usr/lib/fpc/2.4.4/units/i386-linux/sqlite/sqlite3.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/ctypes.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/dynlibs.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/dl.o
/usr/lib/fpc/2.4.4/units/i386-linux/rtl/si_prc.o
)
INPUT(
-lsqlite3
-ldl
)
ENTRY(_start)
SECTIONS
{
PROVIDE (__executable_start = 0x010000); . = 0x010000 + SIZEOF_HEADERS;
.interp : { *(.interp) }
.hash : { *(.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
.gnu.version : { *(.gnu.version) }
.gnu.version_d : { *(.gnu.version_d) }
.gnu.version_r : { *(.gnu.version_r) }
.rel.dyn :
{
*(.rel.init)
*(.rel.text .rel.text.* .rel.gnu.linkonce.t.*)
*(.rel.fini)
*(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*)
*(.rel.data.rel.ro*)
*(.rel.data .rel.data.* .rel.gnu.linkonce.d.*)
*(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*)
*(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*)
*(.rel.got)
*(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*)
}
.rela.dyn :
{
*(.rela.init)
*(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
*(.rela.fini)
*(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*)
*(.rela.data .rela.data.* .rela.gnu.linkonce.d.*)
*(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*)
*(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*)
*(.rela.got)
*(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*)
}
.rel.plt : { *(.rel.plt) }
.rela.plt : { *(.rela.plt) }
.init :
{
KEEP (*(.init))
} =0x90909090
.plt : { *(.plt) }
.text :
{
*(.text .stub .text.* .gnu.linkonce.t.*)
KEEP (*(.text.*personality*))
*(.gnu.warning)
} =0x90909090
.fini :
{
KEEP (*(.fini))
} =0x90909090
PROVIDE (_etext = .);
.rodata :
{
*(.rodata .rodata.* .gnu.linkonce.r.*)
}
. = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1));
.dynamic : { *(.dynamic) }
.got : { *(.got) }
.got.plt : { *(.got.plt) }
.data :
{
*(.data .data.* .gnu.linkonce.d.*)
KEEP (*(.fpc .fpc.n_version .fpc.n_links))
KEEP (*(.gnu.linkonce.d.*personality*))
}
PROVIDE (_edata = .);
PROVIDE (edata = .);
.threadvar : { *(.threadvar .threadvar.* .gnu.linkonce.tv.*) }
__bss_start = .;
.bss :
{
*(.dynbss)
*(.bss .bss.* .gnu.linkonce.b.*)
*(COMMON)
. = ALIGN(32 / 8);
}
. = ALIGN(32 / 8);
PROVIDE (_end = .);
PROVIDE (end = .);
.stab 0 : { *(.stab) }
.stabstr 0 : { *(.stabstr) }
}
program macuco;
{$mode objfpc}{$h+}
uses
macbase;
var
cathegory: tcathegory;
begin
cathegory := tcathegory.create;
cathegory.add('annotation', 'História');
cathegory.free;
end.
unit macbase;
{$mode objfpc}{$h+}
interface
uses
db, sqlite3ds, sysutils;
type
tcathegory = class
fds: tSqlite3Dataset;
public
constructor create;
destructor free;
procedure add(name, cathegory: string);
end;
implementation
{tcathegory}
constructor tcathegory.create;
begin
fds := tsqlite3dataset.create(nil);
fds.filename := 'macbase.dat';
fds.tablename := 'cathegories';
if not fds.TableExists then
begin
with fds.fielddefs do
begin
add('id', ftAutoinc);
add('name', ftString);
add('cathegory', ftString);
end;
fds.createtable;
end;
end;
destructor tcathegory.free;
begin
fds.free;
end;
procedure tcathegory.add(name, cathegory: string);
begin
fds.append;
fds.fieldbyname('name').asstring := name;
fds.fieldbyname('cathegory').asstring := cathegory;
fds.post;
fds.applyupdates;
end;
begin
end.
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal