<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
To be sure fpc.cfg is found I started the compilation from fpc's bin
directory where the fpc.cfg is located.<br>
<br>
roger@bikupan:~/fpc/fpc_svn/
<div dir="ltr"><wbr>bin$ ./fpc /home/roger/fpc/fptest_<wbr>working/fptest.pas<br>
Free Pascal Compiler version 3.1.1 [2017/08/16] for x86_64<br>
Copyright (c) 1993-2015 by Florian Klaempfl and others<br>
Target OS: Linux for x86-64<br>
Compiling /home/roger/fpc/fptest_<wbr>working/fptest.pas<br>
Fatal: Can't find unit system used by fptest<br>
Fatal: Compilation aborted<br>
Error: /home/roger/fpc/fpc_svn/<wbr>compiler/ppcx64 returned an
error exitcode<br>
<br>
Here is the fpc.cfg<br>
<br>
#<br>
# Config file generated by fpcmkcfg on 16-8-17 - 21:46:51<br>
# Example fpc.cfg for Free Pascal Compiler<br>
#<br>
<br>
# ----------------------<br>
# Defines (preprocessor)<br>
# ----------------------<br>
<br>
#<br>
# nested #IFNDEF, #IFDEF, #ENDIF, #ELSE, #DEFINE, #UNDEF are
allowed<br>
#<br>
# -d is the same as #DEFINE<br>
# -u is the same as #UNDEF<br>
#<br>
<br>
#<br>
# Some examples (for switches see below, and the -? helppages)<br>
#<br>
# Try compiling with the -dRELEASE or -dDEBUG on the commandline<br>
#<br>
<br>
# For a release compile with optimizes and strip debuginfo<br>
#IFDEF RELEASE<br>
-O2<br>
-Xs<br>
#WRITE Compiling Release Version<br>
#ENDIF<br>
<br>
# For a debug version compile with debuginfo and all
codegeneration checks on<br>
#IFDEF DEBUG<br>
-gl<br>
-Crtoi<br>
#WRITE Compiling Debug Version<br>
#ENDIF<br>
<br>
# assembling<br>
#ifdef darwin<br>
# use pipes instead of temporary files for assembling<br>
-ap<br>
# path to Xcode 4.3+ utilities (no problem if it doesn't exist)<br>
-FD/Applications/Xcode.app/
<div dir="ltr"><wbr>Contents/Developer/usr/bin<br>
#endif<br>
<br>
# ----------------<br>
# Parsing switches<br>
# ----------------<br>
<br>
# Pascal language mode<br>
# -Mfpc free pascal dialect (default)<br>
# -Mobjfpc switch some Delphi 2 extensions on<br>
# -Mdelphi tries to be Delphi compatible<br>
# -Mtp tries to be TP/BP 7.0 compatible<br>
# -Mgpc tries to be gpc compatible<br>
# -Mmacpas tries to be compatible to the macintosh pascal
dialects<br>
#<br>
# Turn on Object Pascal extensions by default<br>
#-Mobjfpc<br>
<br>
# Assembler reader mode<br>
# -Rdefault use default assembler<br>
# -Ratt read AT&T style assembler<br>
# -Rintel read Intel style assembler<br>
#<br>
# All assembler blocks are AT&T styled by default<br>
#-Ratt<br>
<br>
# Semantic checking<br>
# -S2 same as -Mobjfpc<br>
# -Sc supports operators like C (*=,+=,/= and -=)<br>
# -Sa include assertion code.<br>
# -Sd same as -Mdelphi<br>
# -Se<x> error options. <x> is a
combination of the following:<br>
# <n> : compiler stops after <n> errors
(default is 1)<br>
# w : compiler stops also after warnings<br>
# n : compiler stops also after notes<br>
# h : compiler stops also after hints<br>
# -Sg allow LABEL and GOTO<br>
# -Sh Use ansistrings<br>
# -Si support C++ styled INLINE<br>
# -Sk load fpcylix unit<br>
# -SI<x> set interface style to <x><br>
# -SIcom COM compatible interface (default)<br>
# -SIcorba CORBA compatible interface<br>
# -Sm support macros like C (global)<br>
# -So same as -Mtp<br>
# -Sp same as -Mgpc<br>
# -Ss constructor name must be init (destructor must
be done)<br>
# -Sx enable exception keywords (default in
Delphi/ObjFPC modes)<br>
#<br>
# Allow goto, inline, C-operators, C-vars<br>
-Sgic<br>
<br>
# ---------------<br>
# Code generation<br>
# ---------------<br>
<br>
# Uncomment the next line if you always want static/dynamic
units by default<br>
# (can be overruled with -CD, -CS at the commandline)<br>
#-CS<br>
#-CD<br>
<br>
# Set the default heapsize to 8Mb<br>
#-Ch8000000<br>
<br>
# Set default codegeneration checks (iocheck, overflow, range,
stack)<br>
#-Ci<br>
#-Co<br>
#-Cr<br>
#-Ct<br>
<br>
# Optimizer switches<br>
# -Os generate smaller code<br>
# -Oa=N set alignment to N<br>
# -O1 level 1 optimizations (quick optimizations,
debuggable)<br>
# -O2 level 2 optimizations (-O1 + optimizations which
make debugging more difficult)<br>
# -O3 level 3 optimizations (-O2 + optimizations which
also may make the program slower rather than faster)<br>
# -Oo<x> switch on optimalization x. See fpc -i for
possible values<br>
# -OoNO<x> switch off optimalization x. See fpc -i for
possible values<br>
# -Op<x> set target cpu for optimizing, see fpc -i for
possible values<br>
<br>
#ifdef darwin<br>
#ifdef cpui386<br>
-Cppentiumm<br>
-Oppentiumm<br>
#endif<br>
#endif<br>
<br>
# -----------------------<br>
# Set Filenames and Paths<br>
# -----------------------<br>
<br>
# Both slashes and backslashes are allowed in paths<br>
<br>
# path to the messagefile, not necessary anymore but can be used
to override<br>
# the default language<br>
#-Fr/home/roger/fpc/fpc_svn/<wbr>msg/errore.msg<br>
#-Fr/home/roger/fpc/fpc_svn/<wbr>msg/errorn.msg<br>
#-Fr/home/roger/fpc/fpc_svn/<wbr>msg/errores.msg<br>
#-Fr/home/roger/fpc/fpc_svn/<wbr>msg/errord.msg<br>
#-Fr/home/roger/fpc/fpc_svn/<wbr>msg/errorr.msg<br>
<br>
# searchpath for units and other system dependent things<br>
-Fu/home/roger/fpc/fpc_svn/<wbr>units/$fpctarget<br>
-Fu/home/roger/fpc/fpc_svn/<wbr>units/$fpctarget/*<br>
-Fu/home/roger/fpc/fpc_svn/<wbr>units/$fpctarget/rtl<br>
-Fu/home/roger/fpc/<wbr>pascalscript/Source<br>
<br>
#IFDEF FPCAPACHE_1_3<br>
-Fu/home/roger/fpc/fpc_svn/<wbr>units/$fpctarget/httpd13/<br>
#ELSE<br>
#IFDEF FPCAPACHE_2_0<br>
-Fu/home/roger/fpc/fpc_svn/<wbr>units/$fpctarget/httpd20<br>
#ELSE<br>
-Fu/home/roger/fpc/fpc_svn/<wbr>units/$fpctarget/httpd22<br>
#ENDIF<br>
#ENDIF<br>
<br>
# searchpath for fppkg user-specific packages<br>
-Fu~/.fppkg/lib/fpc/$<wbr>fpcversion/units/$FPCTARGET/*<br>
<br>
# path to the gcclib<br>
#ifdef cpui386<br>
-Fl/usr/lib/gcc/x86_64-linux-<wbr>gnu/6<br>
#endif<br>
#ifdef cpux86_64<br>
-Fl/usr/lib/gcc/x86_64-linux-<wbr>gnu/6<br>
#endif<br>
<br>
# searchpath for libraries<br>
#-Fl/home/roger/fpc/fpc_svn/<wbr>lib<br>
#-Fl/lib;/usr/lib<br>
-Fl/home/roger/fpc/fpc_svn/<wbr>lib/$FPCTARGET<br>
<br>
# searchpath for tools<br>
-FD/home/roger/fpc/fpc_svn/<wbr>bin/$FPCTARGET<br>
<br>
#IFNDEF CPUI386<br>
#IFNDEF CPUAMD64<br>
#DEFINE NEEDCROSSBINUTILS<br>
#ENDIF<br>
#ENDIF<br>
<br>
#IFNDEF Linux<br>
#DEFINE NEEDCROSSBINUTILS<br>
#ENDIF<br>
<br>
# binutils prefix for cross compiling<br>
#IFDEF FPC_CROSSCOMPILING<br>
#IFDEF NEEDCROSSBINUTILS<br>
-XP$FPCTARGET-<br>
#ENDIF<br>
#ENDIF<br>
<br>
<br>
# -------------<br>
# Linking<br>
# -------------<br>
<br>
# generate always debugging information for GDB (slows down the
compiling<br>
# process)<br>
# -gc generate checks for pointers<br>
# -gd use dbx<br>
# -gg use gsym<br>
# -gh use heap trace unit (for memory leak
debugging)<br>
# -gl use line info unit to show more info for
backtraces<br>
# -gv generates programs tracable with valgrind<br>
# -gw generate dwarf debugging info<br>
#<br>
# Enable debuginfo and use the line info unit by default<br>
#-gl<br>
<br>
# always pass an option to the linker<br>
#-k-s<br>
<br>
# Always strip debuginfo from the executable<br>
-Xs<br>
<br>
<br>
# -------------<br>
# Miscellaneous<br>
# -------------<br>
<br>
# Write always a nice FPC logo ;)<br>
-l<br>
<br>
# Verbosity<br>
# e : Show errors (default) d : Show debug info<br>
# w : Show warnings u : Show unit info<br>
# n : Show notes t : Show tried/used files<br>
# h : Show hints s : Show time stamps<br>
# i : Show general info q : Show message numbers<br>
# l : Show linenumbers c : Show conditionals<br>
# a : Show everything 0 : Show nothing (except
errors)<br>
# b : Write file names messages r : Rhide/GCC
compatibility mode<br>
# with full path x : Executable info
(Win32 only)<br>
# v : write fpcdebug.txt with p : Write tree.log with
parse tree<br>
# lots of debugging info<br>
#<br>
# Display Info, Warnings and Notes<br>
-viwn<br>
# If you don't want so much verbosity use<br>
#-vw</div>
</div>
</body>
</html>