Page 2 of 3

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Sun Sep 09, 2018 9:57 pm
by theonlymirage
JohnXenox
Отлично, огромное спасибо!

Всё корректно работает с любой папкой. В моём случае я создал папку share на рабочем столе. Изменения в bat'нике:

Code: Select all

qemu-system-i386.exe -m 512 -boot d -cdrom kolibri.iso -hda fat:rw:C:\Users\TheOnlyMirage\Desktop\share
Сценарий (bat-файл) запускаем исключительно из-под админа (по крайней мере на Windows 7 x64 только так).

Нюансы:
  • Добавленные из Windows в директорию во время работы ВМ файлы не отображаются (необходимо перезапускать ВМ);
  • Функция создания файлов внутри директории из EOLite не работает, но можно создавать файлы с помощью других приложений(например, TINYPAD) или копировать из других дисков/директорий. Папки создаются корректно.
  • При копировании директории со многими вложениями с одного диска на наш share - вылет qemu. Для надёжности лучше копировать файлы по одному.
В остальном всё супер. Если нам удастся побороть первый пункт, то будет идеально. Мы на верном пути, стало значительно проще.

Может Qemu кеширует содержимое папки при старте?

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Sun Sep 09, 2018 10:51 pm
by JohnXenox
theonlymirage wrote:JohnXenox Если нам удастся побороть первый пункт, то будет идеально. Может Qemu кеширует содержимое папки при старте?
Видимо побороть не получится. Эта такая фича Qemu. В документации написано "QEMU может автоматически создавать виртуальный образ диска FAT из дерева каталогов". В общем, если я правильно понял, то Qemu, во время запуска, создает образ с FAT из общей папки, со всем её содержимым, где-то в оперативной памяти. А когда работа Qemu прекращается, то Qemu сбрасывает содержимое образа обратно в папку. Ну, главное работает, а это уже не плохо.

Upd: Хотя, вполне возможно, что разрабы не до конца реализовали функциональность. Потому что, в доке написано что функции чтения и записи, являются тестовыми.

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Mon Sep 10, 2018 1:35 am
by Leency
theonlymirage
> Функция создания файлов внутри директории из Eolite не работает, но можно создавать файлы с помощью других приложений(например, TINYPAD) или копировать из других дисков/директорий.

Какой код ошибки? Можешь предоставить скрин? И можешь свой QEMU вместе с образом запаковать и выложить куда-то? :)
Надо разобраться, это странно, у меня вроде везде работает.

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Mon Sep 07, 2020 10:28 pm
by Leency
Ссылка на тему добралена в http://kolibri-n.org/inf/hll/hll#cmm
Как и на http://board.kolibrios.org/viewtopic.php?t=3540#p68870

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Tue Sep 08, 2020 8:46 pm
by JohnXenox
Leency wrote:Ссылка на тему добралена в http://kolibri-n.org/inf/hll/hll#cmm
Как и на http://board.kolibrios.org/viewtopic.php?t=3540#p68870
Спасибо. :D

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Mon Sep 14, 2020 11:11 am
by maxcodehack
Хочу сообщить про ошибку, при установке

Code: Select all

/usr/local/kos32/bin/../libexec/gcc/mingw32/5.4.0/cc1: error while loading shared libraries: libmpfr.so.4: cannot open shared object file: No such file or directory
То, нужно создать ссылку на более новую версию:

Code: Select all

sudo ln -s /usr/lib/x86_64-linux-gnu/libmpfr.so.6 /usr/lib/x86_64-linux-gnu/libmpfr.so.4

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Wed Oct 28, 2020 9:07 pm
by maxcodehack
Чуть чуть обновил http://wiki.kolibrios.org/wiki/C/C%2B%2 ... .2FG.2B.2B
Я добавил ссылку на эту тему.
Можно, конечно, перенести из этой темы в вики, но она очень массивная, мне кажется просто ссылка и пример программы лучше

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Fri Oct 30, 2020 7:55 pm
by maxcodehack
Чтобы лучше сохранить совместимость, устанавливать нужно в /home/autobuild:

1. Создать каталог /home/USER/autobuild
2. Сделать

Code: Select all

sudo ln -s /home/USER/autobuild /home/autobuild
Создать там каталог tools, и работать в нем
3. Дальше выполнить все как и в оригинале, только:
- не переименовывать win32 в kos32
- sdk с FTP Serg'а нужно распаковать не в /home/autobuild/tools/win32/lib, а в /home/autobuild/tools/win32/mingw32/lib. Потому что так на сервере. upd: ох бред какой. Надо вообще в sdk/lib распаковывать
Теперь, в переменную PATH записать /home/autobuild/tools/win32/bin.

Теперь, например вот этот Makefile работает без правок.
Все таки лучше установить так, как это сделано на сервере автосборки.
-------
Чтобы не возникало путаницы:
SDK с FTP - это не sdk, а скомпилированные статические библиотеки.
а SDK с SVN можно назвать SDK.
Архив с компилятором на FTP, это собственно и есть скомпилированный компилятор.

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Mon Nov 09, 2020 1:16 pm
by maxcodehack

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Sat Jan 09, 2021 9:25 pm
by maxcodehack
Хочу сказать еще про один способ как вешать общие папки (и для qemu и для virtualbox)
В qemu ограничения на размер общей папки. В этом способе ограничения нет.

Code: Select all

mkisofs -U -J -pad -o dump.iso ./
Делаем ISO из текущей папки, цепляем к qemu или virtualbox - вуаля, все работает.

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Sun Jan 10, 2021 11:15 pm
by JohnXenox
Да, сам по себе способ не плох. Я уже пробовал делать .iso из общей папки и загружать в qemu или в virtualbox (правда, я .iso чем-то другим создавал, сейчас уже не помню), но у меня образ жутко медленно грузился, поэтому я отказался от этого способа. А общая папка, работала быстрее (возможно из-за того, что была маленькая, но и программа, которую я писал не была большой, а больше мне и не надо было). В отличие от .img или .iso.

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Mon Jan 11, 2021 7:20 am
by maxcodehack
В qemu может сгодилась и общая папка, но в virtualbox только этим способом получилось вообще наладить связь с окружающим миром из колибри.

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Mon Jan 11, 2021 2:05 pm
by punk_joker
maxcodehack wrote:В qemu может сгодилась и общая папка, но в virtualbox только этим способом получилось вообще наладить связь с окружающим миром из колибри.
Я на хост машине поднял Apache и раздаю им файлы, а в Колибри качаю через WebView

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Mon Jan 11, 2021 6:51 pm
by maxcodehack
То есть получится без перезагрузки просматривать.
Ещё для шелла в колибри скрипт написал качающий файлы и запускающий вообще просто: запустил вм, видишь на хосте, нажимаешь на скрипт, запускается скачанные программа. Надо попробовать

Re: Настройка окружения и инструментов для компиляции программ на C для Kolibri в GNU Linux с исп. toolchain'а от Serge.

Posted: Sat Jan 16, 2021 10:24 pm
by maxcodehack
Попробовал. Отлично. Устанавливал так:

Code: Select all

sudo apt-get update
sudo apt-get install apache2
sudo systemctl start apache2.service
Получаем IP:

Code: Select all

hostname -I | awk '{print $1}'
И по такому IP заходим в браузере.
Все видно, отлично.
Собственно сайт лежит на каком то IP, ну и файлы в /var/www/html/
Туда можно от рута ложить файлы, и в квему через dl ну или webview смотреть/качать.
И перезагружатся не нужно.

Для автоматизации лучше юзать скрипт для шелл:

Code: Select all

#SHS
/sys/network/dl -e http://192.168.100.8/fire
/tmp0/1/Downloads/fire
exit
Например такой.