Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Чего не хватает для компиляции??

Автор: zhukovia
Дата сообщения: 04.01.2007 20:36
Возникла проблемма. Есть исодный код программы для работы через COM порт с термометрами Dallas по технологии 1-ware и есть SDK для работы с ними (в исходниках). Все это должно работать под GCC. http://www.maxim-ic.com/products/ibutton/software/1wire/wirekit.cfm
Если я пробую компилировать в Linux SuSe 10 то все нормально, а если же пытаюсь сделать тоже самое во FreeBSD 6.1 то ничего не получается. GCC стоит свежий и там и там. Я догадываюсь что проблемма в том что в Linuxe есть какие то пакеты которых нет во FreeBSD. Можно как то узнать чего не хватает, из пакетов, FreeBSD?
часть выдаваемых ошибок
------------------начало--------------------
syntax error before "ulong"
syntax error before "ushort"
------------------конец--------------------
строки на которую ругается компилер
------------------начало--------------------
int EnterHex(char *msg, int numchars, ulong *value);
void setcrc16(int portnum, ushort reset);
------------------конец--------------------
как я понял в вызываемой функции есть параметры не извесных системе типов. Но почему тогда в Linuxe все нормально. Кстати бинарники скомпилированые в Linuxe идут и во FreeBSD, правда только после того как я скачал и установил пакэдж скомпилированной библиотеки для этих устройств (для FreeBSD). Так и должно быть?
Автор: rain87
Дата сообщения: 04.01.2007 20:47
попробуй вместо ulong написать unsigned long и вместо ushort написать unsigned short
или объяви эти типы
видимо в линухе в каком-то хедере эти типы объявлены, а во фре - нет
Автор: zhukovia
Дата сообщения: 04.01.2007 21:02

Цитата:
попробуй вместо ulong написать unsigned long и вместо ushort написать unsigned short
или объяви эти типы
видимо в линухе в каком-то хедере эти типы объявлены, а во фре - нет

Дело в том что там не один, а много файлов и ошибки не 2 а горазда больше. Может быть есть какой то другой путь выяснить чего нехватает. Эти системы в принципе не сильно должны отличаться структура то одна.
Автор: dmka
Дата сообщения: 05.01.2007 18:46

Цитата:
Эти системы в принципе не сильно должны отличаться структура то одна.

откуда такая уверенность?

Цитата:
Кстати бинарники скомпилированые в Linuxe идут и во FreeBSD, правда только после того как я скачал и установил пакэдж скомпилированной библиотеки для этих устройств (для FreeBSD). Так и должно быть?

По-умолчанию нет. Во FreeBSD есть эмулятор linux-а (отдельно устанавливаемый), на нем видать и работает.

Автор: zhukovia
Дата сообщения: 06.01.2007 16:17

Цитата:
откуда такая уверенность?

У них тот же GCC одинаковый (в исходниках), GNOME, KDE, X11 и т.д. Да и прицып *nix и там и там имеет место. Я не говорю что они идентичны (как дистрибутивы Linux-а). Но должны быть по СУТИ похожими.

Цитата:
По-умолчанию нет. Во FreeBSD есть эмулятор linux-а (отдельно устанавливаемый), на нем видать и работает.

Это я уже понял.
Но всетаки можно както понять чего не хватает FreBSD. Разбираться какие пакеты установлены в линуксе мне кажется проблематичным их там несколько сотен в самой минимальной ковфигурации. Я думал что можно как то по ошибке определить. (Например данная ошибка может выдаваться если не установлен ****.tbz потому что типа ulong нет в стандартном GCC.) Что то типа этого... Ну значит никто не может помочь разобраться????

Страницы: 1

Предыдущая тема: Ламерский вопрос по компиляции


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.