На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (16) « Первая ... 10 11 [12] 13 14 ... Последняя » все  ( Перейти к последнему сообщению )  
> эмуляция BGI графики
    спасибо. Если чисто код DGMLTEST.CPP пробую запустить, то ничего не работает. А если запустить через проект dgmltest.dev, то всё работает. Получается, обязательно надо проект создавать?



    А если для новой, как её скомпилировать? Создать новый проект и все исходники туда кинуть? У меня 10 ошибок выдал. :unsure:
    Сообщение отредактировано: DFooz -
      Цитата DFooz @
      А если для новой, как её скомпилировать? Создать новый проект и все исходники туда кинуть? У меня 10 ошибок выдал.

      Надо библиотеки подключать.

      Цитата
      Цитата Romtek @
      Для компиляции libdgml в Dev-Cpp нужно указать линкеру ключ
      -lgdi32

      Для компиляции dgmltest нужно указать линкеру ключи
      -lgdi32 -ldgml



      То есть все из папки src - это библиотека.

      А gdmltest.cpp - это уже пример, к нему надо подключать DGML (-lgml)
        Без скомпилированной библиотеки программа-тест работать не будет. Поэтому я всё собрал в проект .dev
          Der_Meister

          В новой версии у меня не компилируется пример из-за конфликта с getch() из conio.h. Придумай решение проблемы.

          Проверял в Dev-C++.

          Добавлено
          Оказывается нужно было закомментировать строчку #include <conio.h.h>
          А ещё нужно то же самое сделать и с graphics.h.

          Отсюда следующий вопрос: об этом догадается программист или его таки предупредить лучше о возможных косяках при компиляции?

          Нужны также imagesize, moveto, getche.

          А что нужно подключать для sound, delay, random ?
            Цитата Romtek @
            Отсюда следующий вопрос: об этом догадается программист или его таки предупредить лучше о возможных косяках при компиляции?

            Пока не могу проверить... А эти строки вообще нужны? То есть в MSVS с ними идет?


            Цитата Romtek @
            А что нужно подключать для sound, delay, random ?

            Для sound нужна winmm.lib, стандартная мультимедиа подсистема винды.


            А чтобы использовать их в преокте нужен один dgml.h
              settextjustify, setbkcolor тоже не определены.

              В общем, что ни программа, то ошибки из-за неподдерживаемых функций.

              Добавлено
              Цитата Der_Meister @
              То есть в MSVS с ними идет?
              У меня не уставнолена студия, есть только Dev-C++.
                не могли бы вы пожалуйста подробнее написать, куда, ггде, что вставлять и писать :unsure:


                Создаю новый проект в ДЕВс++, добавляю все файлы из папки src.
                В папку DEVCpp\include копирую файлы "dgml_error.h" "dgml.h" "dgml_stuff.h"
                В Tool\Compiler options\compiler ставлю обе галки у компилера и линкера, записал в них, что в кавычках "-lgdi32 -ldgml"

                ЧТо ещё надо сделать?
                  Цитата DFooz @
                  не могли бы вы пожалуйста подробнее написать, куда, ггде, что вставлять и писать

                  Вариант №1: использовать статическую библиотеку (libdgml.a, 1-й проект) и потом подключать её в проект тестируемой программы (2-й проект).
                  Для статической библиотеки нужно при создании проекта включить в него все cpp, затем в опциях проекта указать в параметрах Include файлов ключ "-lgdi32" (без кавычек), скомпилировать. Должен создаться файл libdgml.a в папке исходников (если не указать другого пути).
                  Для проекта добавить всего один файл-код BGI cpp-программы, указать в окошко Include строку "-lgdi32 -ldgml" (без кавычек), скомпилировать.

                  Вариант №2: всё в одном проекте (код DGML+код BGI). Указывать только "-lgdi32" (без кавычек), скомпилировать.
                  Заодно выбрать генерацию GUI программы.

                  Надеюсь, ничего не упустил.
                    Цитата
                    Для статической библиотеки нужно при создании проекта включить в него все cpp, затем в опциях проекта указать в параметрах Include файлов ключ "-lgdi32" (без кавычек)

                    Создал проект Win32 Static Lib
                    в опциях проекта в закладке parameters\linker\ написал "-lgdi32". Т.е. всё правильно сделал, да? Но при компиляции он ошибку выдаёт в файле DGML_Error.cpp:
                    ExpandedWrap disabled
                      [Warning] no new line at the end of file
                      In constructor 'DGML_Error::DGML_Error()'
                    и еще чего-то пишет

                    Дистрибутив 0.380
                    Сообщение отредактировано: DFooz -
                      Warnings это некритичные для компиляции сообщения. Хотя trainer уже говорил об этом, изменений пока не видно.
                      Надо всего лишь добавить пустую строку в конце файла.

                      Файл создаётся?

                      Скопируй сюда сообщения компилятора.
                        спасибо, пустые строки вставил.

                        Теперь осталось решит это

                        ExpandedWrap disabled
                          dgml_error.cpp In constructor `DGML_Error::DGML_Error()':
                           
                          dgml_error.cpp `destroy_window' is not a member of `DGML_Stuff'
                           
                          dgml_error.cpp In constructor `DGML_Error::DGML_Error(const char*)':
                           
                          dgml_error.cpp `destroy_window' is not a member of `DGML_Stuff'
                           
                          dgml_error.cpp In constructor `DGML_Error::DGML_Error(const std::string&)':
                           
                          dgml_error.cpp In constructor `DGML_Error::DGML_Error(const std::string&)':
                           
                          dgml_error.cpp `destroy_window' is not a member of `DGML_Stuff'
                           
                          Makefile.win [Build Error]  [dgml_error.o] Error 1


                        Нет, файл не создаётся, только dgml_core.o и Makefile.win
                        Сообщение отредактировано: DFooz -
                          Цитата DFooz @
                          Дистрибутив 0.380
                          Что за дистрибутив такой? Скачай последнюю версию DGML с сайта.
                            это и есть последняя 0.03.80
                              DFooz, покажи свою BGI программу, на которой тестируешь (прикрепи архив к сообщению).

                              Вот мои настройки проекта:
                              Прикреплённый файлПрикреплённый файлdev_screenshots.zip (33.72 Кбайт, скачиваний: 220)
                                у меня сами библиотеки не создаются :wall:
                                Сообщение отредактировано: DFooz -

                                Прикреплённый файлПрикреплённый файлsrc.zip (18.85 Кбайт, скачиваний: 223)
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0477 ]   [ 14 queries used ]   [ Generated: 6.07.25, 05:13 GMT ]