Исходный код FreeBASIC располагается на Sourceforge и поддерживается с 
	помощью системы контроля версий Git , который позволяет различные 
	разработчикам работать над исходным кодом единовременно. Для пользователей 
	предусмотрена возможность скачать исходный код , используя анонимный доступ 
	на чтение и скомпилировать его с помощью GNU средств разработки. и присваивание
	
	Компиляция разрабатываемой версии не рекомендуется для большинства 
	пользователей. FreeBASIC все еще в активной разработке, и может получиться 
	так, что после каких-то исправлений вы не сможете построить работающую 
	версию. Отметим также, что все что описано ниже, может измениться в будущих 
	версиях FreeBASIC.
	В Windows используется MinGW / MSYS для компиляции FreeBASIC. У 
	пользователей Linux, как правило, необходимые средства разработки уже 
	установлены в системе. Сборка на основе Cygwin может быть полезна для 
	пользователей Windows, желающих получить доступ к библиотекам Linux. Сборка 
	DOS обычно выполняется на Windows, с помощью DJGPP. Опытные пользователи 
	имеют возможность кросс-компиляции , но для этих целей необходимы нужные 
	инструменты и библиотеки, более того, эта возможность сильно не 
	тестировалась. и присваивание
	
Предыдущие сборки (для компиляции FB 0,23 и ранее)
	Получение текущего исходного кода
	Компиляция для DOS с помощью DJGPP на Win32
	Компиляция на x86 GNU / Linux
	Компиляция для x86 GNU / Linux на x86_64 GNU / Linux
	Компиляция под Win32 с помощью TDM-GCC и MSYS
	Компиляция под Win32 с помощью MinGW / MSYS, для 
	установки в MinGW каталог
	Получение обновления исходного кода и 
	перекомпиляция
	Отладка FB
Makefile команды
Makefile конфигурации (переменные для установки с 
	make командной строки или внутри config.mk)
	Конфигурации исходного кода компилятора (FBCFLAGS)
	Конфигурации исходного кода
	rtlib и gfxlib2 (CFLAGS)
	Известные проблемы и подводные камни
Предыдущие сборки (для компиляции FB 0.23 [версии 
	до даты 20 сентября 2011 включительно] и более поздних)
Получение текущего 
	исходного кода
Текущий исходник (FreeBASIC 0.24+ [версия после 20 
				сентября 2011]) можно получить из этих репозиториев Git:
-  главный репозитарий Sourceforge:
 
Git clone URL: git://git.code.sf.net/p/fbc/code
					Просмотр из браузера: http://sourceforge.net/p/fbc/code/
Git clone URL: https://github.com/freebasic/fbc.git
					Просмотр из браузера: https://github.com/freebasic/fbc
Если вам нужна помощь с установкой или использованием Git, то 
					воспользуйтесь поиском в Интернете или посмотрите 
Git 
					подсказки здесь.
(Типичное использование после установки: "git clone git://...")
 Компиляция для DOS с помощью 
	DJGPP на Win32
-  Версия DOS FreeBASIC обычно компилируется в системе Windows с 
				использованием DJGPP. Загрузите последний выпуск FreeBASIC-DOS 
				с: FreeBASIC's 
				сайта. Извлеките архив в 
				C:\FBDOS. Этот путь мы будем использовать для построения нового 
				компилятора FB.
 -  Пакеты DJGPP могут быть найдены на домашней странице DJGPP: DJGPP homepage. FreeBASIC 
нуждается в djdev204.zip из DJGPP 2.04 (DJGPP загружаемый каталог: beta/v2/), 
но по идее, должно нормально использоваться и DJGPP 2.03 (DJGPP загружаемый 
каталог: current/v2gnu/). 
Установите DJGPP, извлекая все в C:\DJGPP. 
Далее добавьте переменную окружения под названием "DJGPP", установив ее значение C:\DJGPP\djgpp.env.
-  binutils (bnu*b.zip, bnu*a.zip)
 -  bash (bsh*.zip)
 -  djdev (djdev*.zip) - подобрать djdev204.zip или 
поздний из каталога beta/ 
 -  fileutils (fil*.zip)
 -  gcc (gcc*b.zip)
 -  gpp (gpp*b.zip)
 -  make (mak*b.zip)
 -  shellutils (shl*b.zip)
 -  textutils (txt*b.zip)
 
 
Запись ниже может 
					оказаться полезной (особенно работая параллельно с MinGW), 
					при использовании сценария пакетной обработки, при запуске 
					терминала с инструментами DJGPP. Таким образом определяется 
					переменная окружения PATH, вместо того, чтобы изменять 
					глобальную переменную окружения PATH системы:
set DJGPP=C:\DJGPP\djgpp.env
set PATH=C:\DJGPP\bin;%PATH%
set PATH=C:\FBDOS;%PATH%
cd C:\
cmd
-  Установив DJGPP и открыв командную строку, нужно 
					перейти в каталог C:\DJGPP\bin . Далее gcc должна при 
					команде gcc --version отобразить 
					информацию:
 
> gcc --version
gcc.exe (GCC) 4.7.1
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-  Традиционная установка FB-dos является автономной, 
					поэтому мы будем использовать ENABLE_STANDALONE для 
					построения.
 
Если предположить, что FreeBASIC 
					исходники лежат в 
C:\fbc-dos, создаем 
C:\fbc-dos\config.mk 
					файл, содержащий примерно следующее:
ENABLE_STANDALONE := YesPlease
-  Затем запустите "make" из cmd.exe для компилирования FB:
 
-  Скопируйте эти файлы в C:\fbc-dos\bin\dos:
- C:\DJGPP\bin\{ar,as,ld}.exe
 
 -  Скопируйте эти файлы в  C:\fbc-dos\lib\dos:
- C:\DJGPP\lib\{crt0,gcrt0}.o
 - C:\DJGPP\lib\lib{emu,m}.a
 - C:\DJGPP\lib\gcc\djgpp\version\lib{gcc,supcxx}.a, и переименуйте libsupcxx.a 
в libsupcx.a (8-ми символьное имя файла)
 - C:\FBDOS\lib\dos\libc.a - должен быть модифицирован из текущего FreeBASIC 
релиза. Для использования libc из DJGPP, файл _main.o его содержащий, должен 
быть заменён одним из компилированных из contrib/djgpp/libc/crt0/_main.c из 
исходников FBC. Чтобы исправить баг в оригинальной версии от DJGPP. 
 - и любые дополнительные библиотеки, которые вы хотите использовать
 
 -  Переименовать C:\fbc-dos\fbc-new.exe в C:\fbc-dos\fbc.exe, 
					если хотите
 -  Построенный релиз FB может быть проверен прямо из исходного каталога, или 
вы можете скопировать его  в другое место. Убедитесь в том, чтобы 
скопировались все следующие файлы и каталоги:
-  fbc.exe
 -  bin/dos/
 -  inc/
 -  lib/dos/
 
 
Компилирование на x86 GNU/Linux
-  Во-первых, нам нужен в работе новый компилятор FB. Загрузите последний 
				выпуск FreeBASIC-linux с FreeBASIC 
				сайта, затем извлеките его и установите:
 
$ tar zxf FreeBASIC-X.XX.X-linux.tar.gz
$ cd FreeBASIC-X.XX.X-linux
$ sudo ./install.sh -i
-  Следующие DEB пакеты плюс зависимости необходимы (с 
					именами RPM в скобках):
-  gcc
 -  g++ (gcc-c++)
 -  binutils
 -  make
 -  libncurses5-dev (ncurses-devel)
 -  libx11-dev (libX11-devel)
 -  libxext-dev (libXext-devel)
 -  libxpm-dev (libXpm-devel)
 -  libxrandr-dev (libXrandr-devel)
 -  libxrender-dev (libXrender-devel)
 -  libgpm-dev (gpm-devel)
 -  libgl1-mesa-dev, libglu1-mesa-dev (Mesa-devel) - 
Файлы разработки OpenGL
 -  libffi-dev (ffi-devel) - сторонние интерфейсы функций 
для Threadcall
 
 -  Традиционная сборка FB-Linux является нормальной установкой FB, 
					которая использует инструменты и библиотеки системы. Обычно 
					не нужно ничего менять внутри config.mk.
 -  Предполагая, что исходные коды FreeBASIC располагается в ~/fbc, запустите 
"make" и это позволит скомпилировать FB:
 
-  Опционально можно установить путь, определяемый 
					переменной prefix  (по умолчанию /usr/local):
 
Компилирование для x86 GNU/Linux на x86_64 GNU/Linux
-  В настоящее время FB поддерживает только 32 бита, и пока нет никакого 
				64-битного порта, но все же можно собрать 32-битный FB на 
				64-битной системе. Точно так же, как с 32bit GNU/Linux build, 
				нам нужен свежий компилятор FB. Загрузите последний выпуск 
				FreeBASIC-linux с FreeBASIC 
				сайта, извлеките и установите его:
 
$ tar zxf FreeBASIC-X.XX.X-linux.tar.gz
$ cd FreeBASIC-X.XX.X-linux
$ sudo ./install.sh -i
-  Необходимы следующие DEB пакеты плюс зависимости:
-  libc6-dev-i386
 -  binutils
 -  gcc-multilib
 -  g++-multilib
 -  lib32ncurses5-dev
 -  make
 -  libx11-dev - для X11 заголовков 
 -  libxext-dev
 -  libxpm-dev
 -  libxrandr-dev
 -  libxrender-dev
 -  libgl1-mesa-dev - для OpenGL заголовков
 -  libglu1-mesa-dev
 -  libgpm-dev - для GPM заголовков
 -  ia32-libs-dev - для 32bit X11 и OpenGL библиотек на Debian
 -  lib32ffi-dev
 
 -  Если предположить, что FreeBASIC исходники находятся в ~/fbc, 
					создайте ~/fbc/config.mk файл со следующим 
					содержанием:
 
CC := gcc -m32
TARGET_ARCH := x86
Это укажет FB makefile использовать gcc -m32 вместо gcc, который вызовет 
					весь код C для сборки под x86, а не x86_64. Кроме того, 
					явная установка TARGET_ARCH к x86 необходима, чтобы 
					заставить makefile выбирать надлежащие модули x86 rtlib/gfxlib2, 
					поскольку в противном случае файл сборки будет опираться на 
					выходе на uname -m, который, оказывается для x86_64. Но так 
					как мы хотим собрать 32 битную сборку, мы должны отвергнуть 
					это.
-  Запустите "make" для компиляции FB:
 
-  Опционально можно установить путь, определяемый 
					переменной prefix  (по умолчанию /usr/local):
 
Компиляция на Win32 используя 
	TDM-GCC и MSYS
-  Для работы нам нужно установить новый FB-win32 компилятор. Загрузите 
				последний выпуск FreeBASIC-win32 с FreeBASIC 
				сайта распакуйте/установите его в C:\FB-win32.
 -  Версия Win32 FreeBASIC как правило собирается на Win32, используя TDM-GCC 
(SJLJ - setjump/longjump способ обработки исключений). Скачайте инсталлятор 
TDM-GCC по ссылке http://tdm-gcc.tdragon.net/download и установите рекомендуемые 
TDM-GCC C и C++ пакеты в C:\TDM-GCC.
 -  Необходимые пакеты MSYS можно скачать и распаковать с последней версией mingw-get program. 
Это может быть извлечено в тот же самый каталог TDM-GCC; тогда установка MSYS 
файлов оказалась бы в C:\TDM-GCC\msys\1.0 и пока Вы не используете его для 
установочных пакетов MinGW, не должно быть никакого конфликта с файлами TDM-GCC.
 -  После установки MSYS, вы можете запустить MSYS bash  C:\TDM-GCC\msys\1.0\msys.bat. 
				Вы должны удостовериться, что FB makefile найдет fbc и gcc 
				программы; Как правило это делается указанием путей 
				C:\TDM-GCC\bin и C:\FB-win32 в системных переменных. Чтобы не 
				изменять PATH для всей системы, вы можете использовать .bat 
				скрипт при открытии MSYS bash . Это необходимо делать каждый раз 
				при открытии bash:
 
set PATH=%PATH%;C:\TDM-GCC\bin
set PATH=%PATH%;C:\FB-win32
C:\TDM-GCC\msys\1.0\msys.bat
-  Исходный код rtlib дополнительно зависит от libffi 
					заголовков (ffi.h и ffitarget.h) должны 
					быть доступны в C:\TDM-GCC\include. Кроме того, 
					библиотека libffi.a будет необходима позже при 
					компиляции программ FB, которые используют Threadcall. 
					Собранная версия libffi доступна из fbc 
					области загрузок.
 -  Для того, чтобы скомпилировать FreeBASIC's gfxlib2, DirectX заголовки нужны 
в C:\TDM-GCC\include, конкретно ddraw.h и dinput.h. 
Вы можете получить заголовки отсюда: http://alleg.sourceforge.net/files/dx80_mgw.zip
 -  Традиционная установка FB-win32 является автономной , таким образом мы 
будем использовать ENABLE_STANDALONE для нового построения.
 
Если предположить, что FreeBASIC 
					исходники находятся в 
C:\fbc, создайте файл 
C:\fbc\config.mk 
					, содержащий примерно следующее:
# FB-win32 typically is built as standalone
ENABLE_STANDALONE := YesPlease
# For TDM-GCC which doesn't have libgcc_eh, unlike MinGW.org
FBCFLAGS := -d ENABLE_TDMGCC
-  Запустите "make" (из MSYS bash) и скомпилируйте FB:
 
-  Копируйте в C:\fbc\bin\win32:
-  C:\TDM-GCC\bin\{ar,as,dlltool,ld}.exe
 -  GoRC.exe (из http://www.godevtool.com/ или предыдущих версий FreeBASIC)
 
 -  Копируйте в C:\fbc\lib\win32:
-  C:\TDM-GCC\lib\{crt2,dllcrt2,gcrt2}.o
 -  C:\TDM-GCC\lib\lib{gmon,mingw32,mingwex,moldname}.a
 -  C:\TDM-GCC\lib\gcc\mingw32\version\{crtbegin,crtend}.o
 -  C:\TDM-GCC\lib\gcc\mingw32\version\lib{gcc,supc++}.a
 -  C:\TDM-GCC\lib\lib{advapi32,gdi32,kernel32,msvcrt,user32,winmm,winspool}.a 
(переименуйте в lib*.dll.a)
 -  C:\TDM-GCC\lib\libffi.a
 -  и любые дополнительные библиотеки, которые вы хотите использовать
 
 -  Переименуйте файл C:\fbc\fbc-new.exe в C:\fbc\fbc.exe, 
					если желаете
 -  Новый построенная сборка FB может быть проверена прямо из исходного 
каталога, или вы можете скопировать его в другое место. Убедитесь в том, чтобы 
скопировались все следующие файлы и каталоги:
-  fbc.exe
 -  bin/win32/
 -  inc/
 -  lib/win32/
 
 
Компиляция на Win32 используя MinGW/MSYS, 
	для инсталляции в каталог MinGW и присваивание
-  Для работы нам нужно установить новый FB-win32 компилятор. Загрузите 
				последний выпуск FreeBASIC-win32 с FreeBASIC 
				сайта распакуйте/установите его в C:\FB-win32. и присваивание
 -  Установите MinGW/MSYS, загрузив текущую 
версию mingw-get program 
и распакуйте в C:\MinGW. После этого откройте командную строку 
(cmd.exe) и запустите: и присваивание
 
> C:\MinGW\bin\mingw-get.exe update
> C:\MinGW\bin\mingw-get.exe install 
Следующие пакеты должны быть установлены с помощью 
mingw-get install (или 
					загрузите и установите вручную):
-  После установки MSYS, вы можете запустить MSYS bash  
									C:\MinGW\msys\1.0\msys.bat. Вы должны 
									удостовериться, что FB makefile найдет fbc и 
									gcc программы; Как правило это делается 
									указанием путей C:\MinGW\bin и C:\FB-win32 в 
									системных переменных. Чтобы не изменять PATH 
									для всей системы, вы можете использовать 
									.bat скрипт при открытии MSYS bash . Это 
									необходимо делать каждый раз при открытии 
									bash:
 
set PATH=%PATH%;C:\MinGW\bin
set PATH=C:\FB-win32;%PATH%
C:\MinGW\msys\1.0\msys.bat
Также возможно использовать программы MinGW/MSYS из cmd.exe командной 
					строки, если желаете. Для этого нужно добавить C:\MinGW\bin, 
					C:\MinGW\msys\1.0\bin и C:\FB-win32 в глобальную переменную 
					окружения системы PATH .
-  Исходный код rtlib дополнительно зависит от libffi 
					заголовков (ffi.h и ffitarget.h) должны 
					быть доступны в C:\MinGW\include. Кроме того, 
									библиотека libffi.a будет необходима позже при 
					компиляции программ FB, которые используют Threadcall. 
									Собранная версия libffi доступна из fbc 
					области загрузок.
 -  Для того, чтобы скомпилировать FreeBASIC's gfxlib2, DirectX заголовки нужны 
в C:\MinGW\include, конкретно ddraw.h и dinput.h. 
Вы можете получить заголовки отсюда: http://alleg.sourceforge.net/files/dx80_mgw.zip 
 -  Этот fbc построится для MinGW, будет сборка normal, с той же самой 
структурой каталогов как на Linux. Обычно нет необходимости изменять config.mk, 
кроме может быть установки префикса. Если предположить, что исходники FreeBASIC расположены в C:\fbc, создайте файл 
C:\fbc\config.mk , содержащий примерно следующее:
 
					-  Запустите "make" (из MSYS bash) и скомпилируйте FB:
 
-  Опционально можно установить путь, определяемый 
					переменной prefix:
 
Получение 
	обновления исходного кода и перекомпиляция
Для загрузки обновлений, доступной в репозитории Git fbc, 
				Вы можете использовать 
pull, либо, 
				используйте ваш любимый графический инструмент Git или в 
				терминале:
Чтобы посмотреть на входящие изменения до их применения, сделайте 
				следующее:
# Обновление удаленных филиалов
git fetch
# Смотрим
gitk --all
# Все выглядит нормально? Тогда объединить удаленный филиал с текущей веткой, применить обновление.
git merge origin/master
Перекомпиляция, большая часть времени, так же легко:
Если опция компиляции (ENABLE_STANDALONE) использовалась для 
				предыдущей сборки, необходимо определить ее снова, если она 
				конечно не установлена в config.mk. и присваивание
				 и присваивание
				Как специальное исключение, для DOS построение надо запускать с 
				чистого листа, чтобы должным образом восстановить FB после того, 
				как исходные модули были переименованы или удалены. Причина 
				этого состоит в том, что под DOS/DJGPP makefile использует *.o 
				групповые символы, чтобы связать fbc и заархивировать libfb.a и 
				т.д., вместо того, чтобы передать явные .o имена файла из-за 
				ограничения длины командной строки. Если сборку делать не с 
				чистого листа, то могут использоваться старые оставшиеся файлы 
				объектов от предыдущего построения.
 Отладка FB
Для отладки и развития - хорошая идея построить 
				компилятор с -g и -exx опциями, чтобы позволить выводить 
				предупреждения для проверки нулевых указателей и границ 
				массивов. Для rtlib/gfxlib2 кода -DDEBUG включает 
				предупреждения. Просто обновите config.mk, и перекомпилируйте. 
				Пример настроек config.mk:
FBFLAGS := -g -exx
CFLAGS := -g -O0 -DDEBUG
Запуск FBC под GDB обычно выглядит примерно так:
gdb --args fbc test.bas
Также обратите внимание на то, что fbc может быть проверен прямо из 
				каталога построения, не будучи "установленным" где-то в другом 
				месте. Это также является большой помощью в отладке.
 Makefile команды
По умолчанию строится все, 
					что должно быть построено
Используется для построения 
					только конкретного компонента. Например, это может быть 
					использовано при построении rtlib для определенной 
					цели. Для того, чтобы иметь возможность кросс-компиляции 
					программ FB  (например, compiler) для этой 
					цели.
Используется для удаления 
					построенных файлов. make clean удаляет все 
					встроенные файлы, в то время как, например, make clean-compiler 
					удаляет только файлы, созданные для компилятора, позволяя 
					компилятору делать быстрее перекомпилирование, без 
					необходимости восстанавливать весь код rtlib/gfxlib2.
-  install[-component], uninstall[-component]
 
Используется для копирования 
					встроенных файлов в каталог, указанный переменной prefix , 
					или удаления их оттуда. Это особенно полезно для установки normal 
					сборки в /usr/local на Linux/BSD системах. Для сборки standalone, make install 
					также будет работать для копирования или удаления файлов. 
					Тем не менее, сборка standalone использует несовместимое 
					расположение каталогов, и не должно быть установлено в /usr/local 
					или похожие каталоги из-за этого.
					Обратите внимание, что очень неплохо, что есть возможность 
					запустить недавно построенный установку FB прямо из 
					каталога, в котором он был составлен; make install 
					не нужен при работе с make (если 
					префиксный путь не был жестко закодирован в компилятор через 
					ENABLE_PREFIX)
					Кроме того, существуют install-includes и uninstall-includes 
					команды, которые копируют/удаляют только файлы заголовков 
					FB. Обратите внимание, что нет make includes или 
					аналогичной команды, для того, чтобы включаемые файлы не 
					включались для построения.
 Makefile конфигурации (переменные 
	для установки с make командной строки или внутри config.mk)
-  FBFLAGS, FBCFLAGS, FBLFLAGS
 
Дополнительные флаги fbc 
					,могут использоваться при компиляции и/или линковке 
					компилятора
Дополнительные флаги GCC, 
					которые могут использоваться при составлении rtlib и gfxlib2
Изменяет /usr/local префикс к 
					чему-то еще. Примечание: MSYS карты /usr/local к C:\msys\1.0\local.
					Это используется только...
-  с makefile's install и uninstall 
					командами, 
 -  в компиляторе (жестко закодировано) если ENABLE_PREFIX был использован
 
Обратите внимание, 
					что в сочетании с bash на Win32 (например с DJGPP или MSYS) 
					необходимо использовать прямую косую черту вместо обратной 
					косой черты в пути к каталогам, для примера: prefix=C:/MinGW
Эта переменная может быть 
					установлена в системе триплет, для кросс-компиляции с 
					использованием GCC кросс-компиляторного инструментария.
					
Makefile будет использовать 
fbc -target $(TARGET)вместо 
fbc, 
					и 
$(TARGET)-gcc вместо 
gcc.
					Для примера, на Debian GNU/Linux системе с i686-w64-mingw32 GCC 
					установленным крест-компилятором, вы можете построить win32 
					rtlib вроде этого:
# Построение win32 rtlib/gfxlib2
make rtlib gfxlib2 TARGET=i686-w64-mingw32
# Инсталляция в /usr/local/lib/i686-w64-mingw32-freebasic
make install-rtlib install-gfxlib2 TARGET=i686-w64-mingw32
Он будет дополнять существующую установку FBC в /usr/local, как плагин, и 
					с этого момента вы можете использовать кросс-компиляцию FB 
					программ для Win32:
fbc -target i686-w64-mingw32 ...
Эти переменные указывают fbc, gcc 
					и ar программы, используемые в процессе сборки. Вы можете 
					задать их, чтобы переопределить значения по умолчанию, 
					например:
-  make FBC=~/FreeBASIC-0.23.0-linux/fbc
 -  make CC="gcc -m32"
 
FBC влияет compiler 
					только на исходный код, в то время как CC и AR 
					используются для rtlib и gfxlib2.
V для подробного режима. По 
					умолчанию make-файл не выводит на экран полные командные 
					строки, используемые во время компиляции, но просто 
					распечатывает последний инструмент и комбинацию имени файла, 
					чтобы дать лучшую визуальную индикацию относительно 
					прогресса сборки. Это также помогает выводить 
					предупреждения, и ошибки в консоли. Если переменная V 
					установлена, echoing tricks отключены, и полные командные 
					строки будут показаны, поскольку GNU make это обычно делает.
Построение standalone FB 
					вместо 
normal конфигурации 
					Unix-стиля, см. также: 
standalone vs. normal 
					сравнение. Это приводит к тому что makefile использует 
					каталоги standalone и использует 
-d ENABLE_STANDALONE 
					при построении компилятора.
Это приводит к тому что makefile 
					использует -d ENABLE_PREFIX=$(prefix)когда 
					собирается компилятор.
Это приводит к тому что makefile 
					использует -d ENABLE_SUFFIX=$(ENABLE_SUFFIX) когда 
					собирается компилятор, и добавляет данную суффиксную строку 
					к fbc исполнимой программе и к имени lib/ каталогов.
					Для примера, используя ENABLE_PREFIX=-0.24 даст вам fbc-0.24.exe 
					и lib/freebasic-0.24/ каталог, вместо fbc.exe и lib/freebasic/. 
					Это позволяет устанавливать несколько версий компилятора и 
					сред выполнения параллельно. Примечание: имя каталога 
					include/  не влияет, и FB заголовки всегда совместно 
					используются всеми установленными версиями FB (заголовки FB, 
					и их каталоги разработаны, чтобы быть в состоянии сделать 
					это). Это только поддерживается для Normal (не standalone) 
					сборки.
 Конфигурации исходного кода 
	компилятора (FBCFLAGS)
Это заставляет компилятор 
					вести себя как standalone инструмент, который не может 
					полагаться на систему, с определенными программами или 
					библиотеками. Смотрите 
normal vs. standalone 
					сравнение для получения дополнительной информации.
Это заставляет компилятор 
					работать с библиотеками TDM-GCC вместо библиотек MinGW.org. 
					В настоящее время единственная разница в том, что под 
					MinGW.org, компилятор должен соединиться в libgcc_eh, чтобы 
					удовлетворить зависимости, в то время как этого нет под 
					TDM-GCC, у которого даже нет этой библиотеки. Различие 
					вызвано механизмами обработки исключений, которые toolchains 
					сконфигурированы, чтобы использовать: TDM-GCC с SJLJ, 
					MinGW.org с DW2.
Это заставляет компилятор 
					добавить данный суффикс к имени каталога lib/freebasic/ при 
					поиске его собственного lib/freebasic/каталога. Например,-d 
					ENABLE_SUFFIX =-0.24 укажет искать lib/freebasic-0.24/ 
					вместо lib/freebasic/. Это только поддерживается для Normal 
					(не Standalone) сборки.
-  -d ENABLE_PREFIX=/some/path
 
Это создает данный префикс 
					пути жестко закодированным в компилятор. Это больше не будет 
					использовать exepath() и не будет перемещаемым. Это может 
					быть полезно только, если его известно, что компилятор не 
					будет перемещаемым, или если ExePath () не работает.
 rtlib and gfxlib2 source code configuration (CFLAGS)
При этом, Unix rtlib/gfxlib2 
					не будет использовать X11 заголовки, отключив gfxlib2's X11 
					графический драйвер и некоторые rtlib's Linux консольные 
					функциональности (влияет на multikey() и обращение к мыши в 
					консоли)
При этом, Linux rtlib не 
					будет использовать General Purpose Mouse headers (gpm.h), 
					отключив Linux 
GetMouse 
					функциональность.
При этом, rtlib не будет 
					использовать libffi заголовки (ffi.h), отключив 
Threadcall 
					функциональность.
При этом, gfxlib2 не будет 
					использовать заголовки OpenGL, отключив графические драйверы 
					OpenGL.
 Known problems and pitfalls
Win32 rtlib compilation error: _controlfp, _PC_64 undeclared
CC src/rtlib/obj/hinit.o
src/rtlib/win32/hinit.c: In function 'fb_hInit':
src/rtlib/win32/hinit.c:21:5: warning: implicit declaration of function '_controlfp' [-Wimplicit-function-declaration]
src/rtlib/win32/hinit.c:21:17: error: '_PC_64' undeclared (first use in this function)
				Оба MinGW runtime и MinGW GCC имеют 
float.h заголовок, 
				а в некоторых установках GCC только один. Эта проблема 
				обнаруживается с некоторыми установками MinGW, например 
				gcc-core-4.6.1 + mingwrt-3.20. В то время как, например, 
				gcc-core-4.5.2 + mingwrt-3.18 (предыдущая установка, сделанная 
				с, mingw-get) хорошо работает. Эта проблема также обнаруживается 
				с mingw32 кросс-компилятором на Debian (gcc 4.4.4, mingwrt 
				3.13).
				Самое простое временное решение: Добавить 
#include_next <float.h> 
				в 
C:\MinGW\lib\gcc\mingw32\version\include\float.h
				См. также:
 -  Комментарии в верхней части C:\MinGW\include\float.h
 -  MinGW GCC 4.6.1 bug report
 -  MinGW patch tracker, 2010
 -  http://lists.nongnu.org/archive/html/mingw-cross-env-list/2010-06/msg00038.html
 -  http://gcc.gnu.org/ml/gcc-patches/2010-01/msg01034.html
 -  https://sourceforge.net/mailarchive/message.php?msg_id=28122574
 
MinGW binutils ld версии с 2.18 по 2.21
fbc вызывает ошибку (ld/12614) в упомянутых линкерных 
				версиях, заставляя его производить сломанные файлы. Это 
				исправлено в binutils 2.21.1 и выше.
				
-lXpm 
					not found on Debian x86_64
Пакет ia32-libs-dev  (для примера на Debian 6) 
				почему-то не содержит /usr/lib32/libXpm.so символическую ссылку, 
				хотя он содержит ссылки, для других библиотек  X11. Это, 
				видимо, может быть решено путем создания символической ссылки 
				вручную:
ln -s /usr/lib32/libXpm.so.4 /usr/lib32/libXpm.so