[fpc-pascal] Error compile library on Linux.
Fabio Luis Girardi
fluisgirardi at gmail.com
Wed Mar 26 18:42:21 CET 2014
No problem... what's your fpc version? I'll compare with the right version
of FPC here.
2014-03-26 14:17 GMT-03:00 fredvs <fiens at hotmail.com>:
> @ Fabio Luis Girardi :
>
> Here my working *fpc.cfg*
> _________________________________________________________
> #
> # Config file generated by fpcmkcfg on 5-3-14 - 21:58:27
> # Example fpc.cfg for Free Pascal Compiler
> #
>
> # ----------------------
> # Defines (preprocessor)
> # ----------------------
>
> #
> # nested #IFNDEF, #IFDEF, #ENDIF, #ELSE, #DEFINE, #UNDEF are allowed
> #
> # -d is the same as #DEFINE
> # -u is the same as #UNDEF
> #
>
> #
> # Some examples (for switches see below, and the -? helppages)
> #
> # Try compiling with the -dRELEASE or -dDEBUG on the commandline
> #
>
> # For a release compile with optimizes and strip debuginfo
> #IFDEF RELEASE
> -O2
> -Xs
> #WRITE Compiling Release Version
> #ENDIF
>
> # For a debug version compile with debuginfo and all codegeneration checks
> on
> #IFDEF DEBUG
> -gl
> -Crtoi
> #WRITE Compiling Debug Version
> #ENDIF
>
> # assembling
> #ifdef darwin
> # use pipes instead of temporary files for assembling
> -ap
> # path to Xcode 4.3+ utilities (no problem if it doesn't exist)
> -FD/Applications/Xcode.app/Contents/Developer/usr/bin
> #endif
>
> # ----------------
> # Parsing switches
> # ----------------
>
> # Pascal language mode
> # -Mfpc free pascal dialect (default)
> # -Mobjfpc switch some Delphi 2 extensions on
> # -Mdelphi tries to be Delphi compatible
> # -Mtp tries to be TP/BP 7.0 compatible
> # -Mgpc tries to be gpc compatible
> # -Mmacpas tries to be compatible to the macintosh pascal dialects
> #
> # Turn on Object Pascal extensions by default
> #-Mobjfpc
>
> # Assembler reader mode
> # -Rdefault use default assembler
> # -Ratt read AT&T style assembler
> # -Rintel read Intel style assembler
> #
> # All assembler blocks are AT&T styled by default
> #-Ratt
>
> # Semantic checking
> # -S2 same as -Mobjfpc
> # -Sc supports operators like C (*=,+=,/= and -=)
> # -Sa include assertion code.
> # -Sd same as -Mdelphi
> # -Se<x> error options. <x> is a combination of the following:
> # <n> : compiler stops after <n> errors (default is 1)
> # w : compiler stops also after warnings
> # n : compiler stops also after notes
> # h : compiler stops also after hints
> # -Sg allow LABEL and GOTO
> # -Sh Use ansistrings
> # -Si support C++ styled INLINE
> # -Sk load fpcylix unit
> # -SI<x> set interface style to <x>
> # -SIcom COM compatible interface (default)
> # -SIcorba CORBA compatible interface
> # -Sm support macros like C (global)
> # -So same as -Mtp
> # -Sp same as -Mgpc
> # -Ss constructor name must be init (destructor must be done)
> # -Sx enable exception keywords (default in Delphi/ObjFPC
> modes)
> #
> # Allow goto, inline, C-operators, C-vars
> -Sgic
>
> # ---------------
> # Code generation
> # ---------------
>
> # Uncomment the next line if you always want static/dynamic units by
> default
> # (can be overruled with -CD, -CS at the commandline)
> #-CS
> #-CD
>
> # Set the default heapsize to 8Mb
> #-Ch8000000
>
> # Set default codegeneration checks (iocheck, overflow, range, stack)
> #-Ci
> #-Co
> #-Cr
> #-Ct
>
> # Optimizer switches
> # -Os generate smaller code
> # -Oa=N set alignment to N
> # -O1 level 1 optimizations (quick optimizations, debuggable)
> # -O2 level 2 optimizations (-O1 + optimizations which make
> debugging
> more difficult)
> # -O3 level 3 optimizations (-O2 + optimizations which also may make
> the program slower rather than faster)
> # -Oo<x> switch on optimalization x. See fpc -i for possible values
> # -OoNO<x> switch off optimalization x. See fpc -i for possible values
> # -Op<x> set target cpu for optimizing, see fpc -i for possible values
>
> #ifdef darwin
> #ifdef cpui386
> -Cppentiumm
> -Oppentiumm
> #endif
> #endif
>
> # -----------------------
> # Set Filenames and Paths
> # -----------------------
>
> # Both slashes and backslashes are allowed in paths
>
> # path to the messagefile, not necessary anymore but can be used to
> override
> # the default language
> #-Fr/usr/lib/fpc/$fpcversion/msg/errore.msg
> #-Fr/usr/lib/fpc/$fpcversion/msg/errorn.msg
> #-Fr/usr/lib/fpc/$fpcversion/msg/errores.msg
> #-Fr/usr/lib/fpc/$fpcversion/msg/errord.msg
> #-Fr/usr/lib/fpc/$fpcversion/msg/errorr.msg
>
> # searchpath for units and other system dependent things
> -Fu/usr/lib/fpc/$fpcversion/units/$fpctarget
> -Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/*
> -Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/rtl
>
> #IFDEF FPCAPACHE_1_3
> -Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/httpd13/
> #ELSE
> #IFDEF FPCAPACHE_2_0
> -Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/httpd20
> #ELSE
> -Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/httpd22
> #ENDIF
> #ENDIF
>
> # searchpath for fppkg user-specific packages
> -Fu~/.fppkg/lib/fpc/$fpcversion/units/$FPCTARGET/*
>
> # path to the gcclib
> #ifdef cpui386
> -Fl/usr/lib/gcc/x86_64-linux-gnu/4.8
> #endif
> #ifdef cpux86_64
> -Fl/usr/lib/gcc/x86_64-linux-gnu/4.8
> #endif
>
> # searchpath for libraries
> #-Fl/usr/lib/fpc/$fpcversion/lib
> #-Fl/lib;/usr/lib
> -Fl/usr/lib/fpc/$fpcversion/lib/$FPCTARGET
>
> # searchpath for tools
> -FD/usr/lib/fpc/$fpcversion/bin/$FPCTARGET
>
> #IFNDEF CPUI386
> #IFNDEF CPUAMD64
> #DEFINE NEEDCROSSBINUTILS
> #ENDIF
> #ENDIF
>
> #IFNDEF Linux
> #DEFINE NEEDCROSSBINUTILS
> #ENDIF
>
> # binutils prefix for cross compiling
> #IFDEF FPC_CROSSCOMPILING
> #IFDEF NEEDCROSSBINUTILS
> -XP$FPCTARGET-
> #ENDIF
> #ENDIF
>
>
> # -------------
> # Linking
> # -------------
>
> # generate always debugging information for GDB (slows down the compiling
> # process)
> # -gc generate checks for pointers
> # -gd use dbx
> # -gg use gsym
> # -gh use heap trace unit (for memory leak debugging)
> # -gl use line info unit to show more info for backtraces
> # -gv generates programs tracable with valgrind
> # -gw generate dwarf debugging info
> #
> # Enable debuginfo and use the line info unit by default
> #-gl
>
> # always pass an option to the linker
> #-k-s
>
> # Always strip debuginfo from the executable
> -Xs
>
>
> # -------------
> # Miscellaneous
> # -------------
>
> # Write always a nice FPC logo ;)
> # -l
>
> # Verbosity
> # e : Show errors (default) d : Show debug info
> # w : Show warnings u : Show unit info
> # n : Show notes t : Show tried/used files
> # h : Show hints s : Show time stamps
> # i : Show general info q : Show message numbers
> # l : Show linenumbers c : Show conditionals
> # a : Show everything 0 : Show nothing (except errors)
> # b : Write file names messages r : Rhide/GCC compatibility mode
> # with full path x : Executable info (Win32 only)
> # v : write fpcdebug.txt with p : Write tree.log with parse tree
> # lots of debugging info
> #
> # Display Info, Warnings and Notes
> -viwn
> # If you don't want so much verbosity use
> #-vw
> #include /etc/fpc-fpg.cfg
> _______________________________________________________
>
> *Here my fpc-fpg.cfg ( see end of fpc.cfg, i added it for fpGUI ) :*
>
> # Begin fpGUI-block
> # search-path for fpGUI units and includes
> -Fu/home/fred/fpGUI-develop/src
> -Fi/home/fred/fpGUI-develop/src
> -Fu/home/fred/fpGUI-develop/src/corelib
> -Fu/home/fred/fpGUI-develop/src/corelib/x11
> -Fi/home/fred/fpGUI-develop/src/corelib/x11
> -Fu/home/fred/fpGUI-develop/src/corelib/render/software
> -Fu/home/fred/fpGUI-develop/src/gui
> -Fu/home/fred/fpGUI-develop/src/gui/db
> -Fu/home/fred/fpGUI-develop/src/reportengine
> # object pascal dialect and compil options
> -MObjFPC
> -Schi
> -vewnhi
> -Xs
> -XX
> -fPIC
> # End fpGUI-blockg :
>
> # Begin fpGUI-block
> # search-path for fpGUI units and includes
> -Fu/home/fred/fpGUI-develop/src
> -Fi/home/fred/fpGUI-develop/src
> -Fu/home/fred/fpGUI-develop/src/corelib
> -Fu/home/fred/fpGUI-develop/src/corelib/x11
> -Fi/home/fred/fpGUI-develop/src/corelib/x11
> -Fu/home/fred/fpGUI-develop/src/corelib/render/software
> -Fu/home/fred/fpGUI-develop/src/gui
> -Fu/home/fred/fpGUI-develop/src/gui/db
> -Fu/home/fred/fpGUI-develop/src/reportengine
> # object pascal dialect and compil options
> -MObjFPC
> -Schi
> -vewnhi
> -Xs
> -XX
> -fPIC
> # End fpGUI-block
> _________________________________________________
>
> *And here the compiler parameters used :* (for fpGUI library)
>
> -MObjFPC -Scghi -CX -Xs -XX -vewnhi -Fi/home/fred/fpGUIlib/src/units
> -Fu/home/fred/fpGUI-develop/lib/x86_64-linux
> -Fu/usr/share/lazarus/1.2.0/packager/units/x86_64-linux
> -Fu/home/fred/fpGUIlib/src/ -FU/home/fred/fpGUIlib/src/units/ -olibfpgui.so
>
> _________________________________________________
>
>
>
>
>
>
>
>
> -----
> Many thanks ;-)
> --
> View this message in context:
> http://free-pascal-general.1045716.n5.nabble.com/Error-compile-library-on-Linux-tp5718562p5718765.html
> Sent from the Free Pascal - General mailing list archive at Nabble.com.
> _______________________________________________
> fpc-pascal maillist - fpc-pascal at lists.freepascal.org
> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
>
--
The best regards,
Fabio Luis Girardi
PascalSCADA Project
http://sourceforge.net/projects/pascalscada
http://www.pascalscada.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20140326/a085f670/attachment.html>
More information about the fpc-pascal
mailing list