Опция компилятора: -target
 
Установите целевую платформу для кросс-компиляции

Синтаксис

-target < platform >

Параметры

platform
Целевая платформа. (См. ниже)

Описание

Опция компилятора -target может использоваться, чтобы создать выполняемый файл для платформы, которая отличается от той, на которой исходный код собирается и линкуется. Соответствующие библиотеки и другие инструменты компиляции (ассемблер, линкер) должны быть установлены для кросс-компиляции.

Поведение -target отличается в зависимости от того, какая сборка FB была настроена Normal or Standalone.

    • Для Normal сборки FreeBASIC-linux:
Все, что дается для платформы будет иметь префикс к именам файлов из используемых GCC/Binutils программ. Обычно это будет система триплет, такая как i686-pc-linux-gnu. Например, если задать -target i686-pc-linux-gnu, то это заставит компилятор вызвать i686-pc-linux-gnu-ld вместо родного ld.

Как исключение, если строка данной платформы соответствует целевому названию FB хост-системы, опция -target игнорируется. Это означает, что используя -target linux на Linux и -target win32 для win32 и так далее, не имеет никакого эффекта. Это только затрагивает целевые имена FB по умолчанию, перечисленные для сборки Standalone

Если опция -target не используется, компилятор по умолчанию скомпилирует для родной системы, и это вызовет gcc/binutils без целевого префикса.
    • Для Standalone сборки FreeBASIC-win32:
Платформа может быть одной из имен целевых FB по умолчанию:

        • dos
        • cygwin
        • darwin
        • freebsd
        • linux
        • netbsd
        • openbsd
        • win32
        • xbox
Целевая компиляция и подкаталоги bin/ и lib/ для использования выбираются на основе того, какое целевое имя дано. Например, -target win32 делает компиляцию для Win32 и дает указание использовать инструменты из bin/win32/ , а библиотеки из lib/win32/

См. также