-
VBCC +kick13
Может кто-нибудь настраивал сишный компилятор vbcc под виндой?
1) Скачал «vbcc_bin_win64.zip Windows 64-bit binaries. No installer».
2) Распаковал в «C:\VBCC\»
3) Прописал в переменных средах винды PATH путь до «C:\VBCC\bin\»
4) Создал доп. переменную %VBCC% с путём до «C:\VBCC\»
Создал «hello.c»
Код:
#include <stdio.h>
int main(void) {
puts("Hello World!");
return 0;
}
Скомпилировал:
Код:
vc -v +kick13 -o hello hello.c
Запустил на амиге:
https://i.postimg.cc/Fs9jR1S8/106.png
Всё как бы хорошо, но хотелось бы пописать под GUI.
Скачал «ndk13.lha»
Распаковал в «C:/VBCC»
Добавил для теста в «hello.c»:
Код:
#include <exec/types.h>
А строку сборки include:
Код:
vc +kick13 hello.c -o hello -I"%VBCC%\NDK_1.3\Includes1.3\include.h\"
Файл физически точно есть:
https://i.postimg.cc/G2Zw3Z9h/image.png
https://i.postimg.cc/3R29p6nw/image.png
Но при попытке сборки получаем ошибку:
https://i.postimg.cc/j25wKnwr/image.png
Явно почему-то не используются пути include: или я чего-то не понимаю, или как-по другому нужно эти пути указывать.
p.s. я уже пробовал напрямую указывать:
Код:
#include "c:\vbcc\NDK_1.3\Includes1.3\include.h\exec\types.h"
Да, так оно видит файл, но во первых это как бы неправильно, а во вторых ссылки внутри других include ссылаются опять на путь к файлу в виде </> и естественно ничего не собирается.
-
Вложений: 2
Ну что ж, у нас как обычно «спасение утопающих — дело рук самих утопающих» :rolleyes:
Итак методом научного тыка и с помощью утилиты Procmon64.exe из известного пакета «Sysinternals», удалось таки узнать,
что когда запускается vc.exe оно ломится искать конфигурационный файл по пути %VCCFG%kick13.
Вот это поворот! Нигде ни в одно документации не сказано, что нужно определить ещё одну переменную %VCCFG% и куда она должна смотреть! :eek:
Как ни трудно догадаться единственное место куда оно может смотреть это в «c:\vbcc\config\», но и тут не всё так просто оказалось.
Теперь нужно указывать в параметрах не просто +kick13 (очень странный формат), а нужно указать полный путь, так как в одном случае оно ищет kick13 отпрям в том самом месте где собирается проект,
а потом уже где конфиги, она ошибка пропала, другая осталась.
Меняем строку сборки на:
Код:
vc +"%VCCFG%"\kick13
И вуаля ошибки в «Procmon64.exe» сыпаться перестали, однако сборка так и не происходит, так как опять нихрена не видятся пути к NDK_1.3.
Решил посмотреть что из себя представляет файл kick13. Внутри куча параметров которые передаются компилятору иииии… барабанная дробь! никто понятия не имеет ни про какой NDK_1.3, то есть ОНО РЕАЛЬНО игнорирует то что передавалось в командной строке.
Лаааадно, сохраняю файл как kick13n и внутри дописываю в конец свой инклюд:
Код:
-cc=vbccm68k -quiet %s -o= %s %s -O=%ld -no-cpp-warn -I%%VBCC%%/targets/m68k-kick13/include -I%%VBCC%%/NDK_1.3/Includes1.3/include.h/
после чего строка сборки превращается в:
Код:
vc +"%VCCFG%"\kick13n hello.c -o hello
Без всяких I !!! оно собирается на ура.
Попробовал собрать пример открытия окна, тоже всё собралось и запустилось на реальной амиге.
https://i.postimg.cc/Wp6P1sHf/108.png
Короче, я не знаю каким надо быть вундеркиндером, что бы во всём этом разобраться без поллитры, но блин документация отстой!
ссылка на NDK_1.3
-
Списался я тут с автором проекта VBCC и всё оказалось банально просто. Проблема в бекслешах в пути.
Вот такое собирается без проблем:
Код:
vc +kick13 hello.c -o hello -I"%VBCC%/NDK_1.3/Includes1.3/include.h/"