Автор Тема: Собрать IUP  (Прочитано 6954 раз)

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Собрать IUP
« : Май 12, 2013, 08:08:59 am »
http://www.tecgraf.puc-rio.br/iup/

Вчера пол вечера убил, но так и не смог собрать в VS2012. То ошибки вываливает. То dll не хочет собирать. Там еще модная штука для сборки есть http://www.tecgraf.puc-rio.br/tecmake/ но у меня оно совсем не завелось.
Как это сделать? Помогите, плиз.

В скайнтилле ошибка обнаружилась с русским вводом. Сейчас общаюсь с разрабом на эту тему.
Хочу у себя проверить некоторые идеи. Но блин собрать не могу :(

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Собрать IUP
« Ответ #1 : Май 12, 2013, 02:24:15 pm »
Собрал. Взять исправленный проект можно тут: https://docs.google.com/file/d/0B5S-yO9U6Ec1bE5kVEFHajJKY0U/edit?usp=sharing

Собиралось все MSVS 2012. Соответственно нужно открывать файл iup\mak.vc10\iup.sln (теперь это проект для 2012 студии)

Там можно собрать iup.dll, в этом случае ставим в свойствах проекта iupwin configuration type=dll, а по умолчанию там сейчас собирается iup.lib и  iup_scintilla.dll.
Y = λf.(λx.f (x x)) (λx.f (x x))

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Собрать IUP
« Ответ #2 : Май 12, 2013, 02:25:27 pm »
Спасибо большое!

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Собрать IUP
« Ответ #3 : Май 12, 2013, 02:27:49 pm »
Небольшое дополнение - это все делалось для Debug версии. Релиз может и не собраться.
Y = λf.(λx.f (x x)) (λx.f (x x))

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Собрать IUP
« Ответ #4 : Май 12, 2013, 02:31:17 pm »
Релиз пока не нужен. Это для экспериментов.

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Собрать IUP
« Ответ #5 : Май 12, 2013, 07:38:53 pm »
Полученная dll не взлетела. Чегой-то там еще настраивать нужно.
Но это уже не нужно, т.к. я разобрался в tecmake и с ней все собирается без проблем.

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Собрать IUP
« Ответ #6 : Май 12, 2013, 07:43:16 pm »
Процесс сборки выглядит примерно так:

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Собрать IUP
« Ответ #7 : Май 16, 2013, 08:57:00 am »
Вопрос знатокам c/c++

В каком случае может происходить следующее:
байт преобразуется по след схеме:
E0 ---> 30
E1 ---> 31
E2 ---> 32
и т.д.

Может преобразование типов приводить к такому?

DddIzer

  • Гость
Re: Собрать IUP
« Ответ #8 : Май 16, 2013, 10:31:24 am »
Вопрос знатокам c/c++

В каком случае может происходить следующее:
байт преобразуется по след схеме:
E0 ---> 30
E1 ---> 31
E2 ---> 32
и т.д.

Может преобразование типов приводить к такому?
по идее это
shr(shl(b,2),2) - комбинация сдвигов на 2 позиции , сначала влево , а потом вправо... -может применяться  для обнуления старших битов в байт -маске

DddIzer

  • Гость
Re: Собрать IUP
« Ответ #9 : Май 16, 2013, 10:38:09 am »
либо эквивалентная битовая операция с заданной маской

DddIzer

  • Гость
Re: Собрать IUP
« Ответ #10 : Май 16, 2013, 11:34:19 am »
где применяется... ну например в наборах чекбоксов.. каждый установленный бит соответствует состоянию "отмечен" некоторого чекбокса(как визуального компонента)...

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Собрать IUP
« Ответ #11 : Май 16, 2013, 11:39:19 am »
Тут проблема такая: https://www.youtube.com/watch?v=BaTDVDiGM20

Если набрать "абвгд" то получится "01234"
Т.е. где-то при обработке ввода херятся байтики.

DddIzer

  • Гость
Re: Собрать IUP
« Ответ #12 : Май 16, 2013, 11:53:21 am »
при обработке ввода или отображении? с чем по умолчанию работает IUP -с 2 байтным юникодом, или UTF-8?  попробуйте установить романскую (французкую) локаль и вывести строку в ней..

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: Собрать IUP
« Ответ #13 : Май 16, 2013, 11:59:09 am »
IUP с юникодом вообще не работает. Там 1251 кодировка.
Отображение работает. Там же видно в видео

DddIzer

  • Гость
Re: Собрать IUP
« Ответ #14 : Май 16, 2013, 12:12:48 pm »
IUP с юникодом вообще не работает. Там 1251 кодировка.
Отображение работает. Там же видно в видео
установите другую локаль (французскую , убедитесь что шрифт поддерживает ее ) и проверьте, если все ок, то нужно копать дальше, если не получилось.. то вы не полностью что-то инициализировали..), и потом судя по всему у вас вызывается внешний редактор (сайнтиловский) - может там есть какие то особенности?.