Здравствуйте!
Я сейчас занимаюсь изучением C++ (пока знаю только основы), хочется попробовать свои силы в программировании под Kolibri (может что-нибудь стоящее смогу сделать )
У меня стоит Windows XP, VMWare Workstation с Kolibri N9.
Из компиляторов есть Visual C++ 2010 Express, MinGW (похоже не настроенный), Dev-C++, проблема в том, что я не очень хорошо разбираюсь в консольных командах.
Есть какой-нибудь простой способ, чтобы просто скомпилировать программу под Windows, через флешку перенести в вируальную машину и запустить?
Разработка из под Windows
-
Чудеса случаются! Это вам любой программист скажет!
Ты пока не пиши ничего свое, а лучше пробуй скомпилировать примеры из SDK колибри. Получиться или неполучится, в любом случае отпиши сюда снова о результатах.
См. тему viewtopic.php?f=24&t=1587
SDK тут http://builds.kolibrios.org/eng/data/contrib/sdk/ и тут http://websvn.kolibrios.org/listing.php ... sources%2F&
Статья о настройке компиляторов тут http://kolibri-n.org/inf/hll/hll.php
См. тему viewtopic.php?f=24&t=1587
SDK тут http://builds.kolibrios.org/eng/data/contrib/sdk/ и тут http://websvn.kolibrios.org/listing.php ... sources%2F&
Статья о настройке компиляторов тут http://kolibri-n.org/inf/hll/hll.php
Last edited by Wildwest on Tue Oct 14, 2014 8:41 pm, edited 2 times in total.
При таких условиях viewtopic.php?p=43001#p43001 - способ, требующий минимального количества настроек.
Сделаем мир лучше!
Компилирую проект Test, который создался с помощью генератора. Пишет вот такое:При таких условиях viewtopic.php?p=43001#p43001 - способ, требующий минимального количества настроек.
Spoiler:
1>------ Построение начато: проект: test, Конфигурация: Release Win32 ------1>LINK : error LNK2001: неразрешенный внешний символ "_fakeEntry"
1>test.obj : error LNK2001: неразрешенный внешний символ ""void __cdecl kos_WriteTextToWindow(unsigned short,unsigned short,unsigned char,unsigned int,char const *,unsigned int)" (?kos_WriteTextToWindow@@YAXGGEIPBDI@Z)"
1>test.obj : error LNK2001: неразрешенный внешний символ ""bool __cdecl kos_GetKey(unsigned char &)" (?kos_GetKey@@YA_NAAE@Z)"
1>test.obj : error LNK2001: неразрешенный внешний символ ""void __cdecl kos_WindowRedrawStatus(unsigned int)" (?kos_WindowRedrawStatus@@YAXI@Z)"
1>test.obj : error LNK2001: неразрешенный внешний символ ""void __cdecl kos_DefineAndDrawWindow(unsigned short,unsigned short,unsigned short,unsigned short,unsigned char,unsigned int,unsigned char,unsigned int,unsigned int)" (?kos_DefineAndDrawWindow@@YAXGGGGEIEII@Z)"
1>test.obj : error LNK2001: неразрешенный внешний символ ""unsigned int __cdecl kos_WaitForEvent(void)" (?kos_WaitForEvent@@YAIXZ)"
1>test.obj : error LNK2001: неразрешенный внешний символ ""void __cdecl kos_ExitApp(void)" (?kos_ExitApp@@YAXXZ)"
1>D:\kos\template\test\Release\test.exe : fatal error LNK1120: 7 неразрешенных внешних элементов
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
Чудеса случаются! Это вам любой программист скажет!
Генератор создаёт solution с двумя проектами, программой и библиотекой. Для работы нужны оба проекта, не нужно было удалять smalllibc после генерации.
Сделаем мир лучше!
Ура!!! Всё скомпилировалось! В папке Release появился файлик test.exe.CleverMouse wrote:Генератор создаёт solution с двумя проектами, программой и библиотекой. Для работы нужны оба проекта, не нужно было удалять smalllibc после генерации.
Теперь буду пробовать его перенести через виртуальную машину на Kolibri
Чудеса случаются! Это вам любой программист скажет!
test.exe - промежуточный файл, который не загрузится. В папке Release рядом с test.exe ещё должен появиться файл test без расширения, под Колибри запускать нужно его.
Сделаем мир лучше!
Ага, и такой есть!
Только теперь другая проблема появилась
VMWare пишет: "Host USB device connections disabled" и не могу переопределить флешку на виртуальную машину
Только теперь другая проблема появилась
VMWare пишет: "Host USB device connections disabled" и не могу переопределить флешку на виртуальную машину
Чудеса случаются! Это вам любой программист скажет!
Решил, переопределил флешку на Kolibri. Программа Hello, World! успешно запустилась и работает! Теперь буду экспериментировать!Nikolai1 wrote:Ага, и такой есть!
Только теперь другая проблема появилась
Спасибо огромное за помощь. Сам бы неделю наверное разбирался
Чудеса случаются! Это вам любой программист скажет!
Как и Nikolai1 попробовал скомпилировать тестовый проект, сгенерированый makevcproj.exe . Студия 2010 выругалась:
error C1902: Несоответствие диспетчера базы данных программы; проверьте установленную копию
Попробовал с нуля создать проект на С++ (и пустой проект и Win32 App), но студия отказалась создавать, просто в строке состояния написала, что невозможно создать и всё. Причём проект на С# создаёт, другие проекты на С++ компилирует. Кто-нибудь знает, что эта ошибка значит-то?
error C1902: Несоответствие диспетчера базы данных программы; проверьте установленную копию
Попробовал с нуля создать проект на С++ (и пустой проект и Win32 App), но студия отказалась создавать, просто в строке состояния написала, что невозможно создать и всё. Причём проект на С# создаёт, другие проекты на С++ компилирует. Кто-нибудь знает, что эта ошибка значит-то?
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!
гугл
http://softtime.ru/cpp/read.php?id_foru ... theme=1408
http://msdn.microsoft.com/ru-ru/library/8y7hea02.aspx
http://www.sql.ru/forum/735846/sborka-p ... vc-express
http://forum.ru-board.com/topic.cgi?for ... start=4340
http://softtime.ru/cpp/read.php?id_foru ... theme=1408
http://msdn.microsoft.com/ru-ru/library/8y7hea02.aspx
http://www.sql.ru/forum/735846/sborka-p ... vc-express
http://forum.ru-board.com/topic.cgi?for ... start=4340
mspdbsrv.exe или mspdbcore.dll отсутствует или версия этих файлов отличается от версии библиотеки mspdbXX.dll
Неизвестно по какой причине в VS 2008 перестает видеть эти файлы в директории C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\
Приходится копировать их в C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\
тогда все работает.
Поэкспериментировал с функциями из smalllibc, всё пока получилось))Теперь буду экспериментировать!
Теперь хочу попробовать какую-нибудь реальную программку сделать. Как в Kolibri создавать в окне элементы интерфейса: кнопки, строки для ввода текста и т.д. и как обрабатывать их события?
Есть какая-нибудь документация или руководство на эту тему?
Чудеса случаются! Это вам любой программист скажет!
Лучшие примеры уже существующие программы Для справки описание API и библиотеки Box_LibNikolai1 wrote:Поэкспериментировал с функциями из smalllibc, всё пока получилось))Теперь буду экспериментировать!
Теперь хочу попробовать какую-нибудь реальную программку сделать. Как в Kolibri создавать в окне элементы интерфейса: кнопки, строки для ввода текста и т.д. и как обрабатывать их события?
Есть какая-нибудь документация или руководство на эту тему?
to infinity and beyond
Пробовал сам писать обёртки для системных функций, вроде как получается))
Только пока не разобрался с загрузкой библиотек
написал такой код:
он должен подключать библиотеку. При запуске ошибок никаких не происходит
Как дальше использовать функции из библиотеки? пробую box_lib
Видел реализацию загрузки и пример использования в программе Table, но в том коде почти не разобрался, знаний языка не хватает
Можете объяснить что к чему?
Заранее спасибо))
Только пока не разобрался с загрузкой библиотек
написал такой код:
Code: Select all
typedef struct {
char *name ;
void *data ;
} dll_import ;
dll_import* load_dll(char* path);
//................................
// Загрузить DLL
dll_import* load_dll(char* path) {
int result;
__asm{
push 68
pop eax
mov ebx, 19
mov ecx, path
int 0x40
mov result, eax
}
return result;
}
//................
dll_import *lib = load_dll("/sys/lib/box_lib.obj");
Как дальше использовать функции из библиотеки? пробую box_lib
Видел реализацию загрузки и пример использования в программе Table, но в том коде почти не разобрался, знаний языка не хватает
Можете объяснить что к чему?
Заранее спасибо))
Чудеса случаются! Это вам любой программист скажет!
Who is online
Users browsing this forum: No registered users and 2 guests