Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> не линкуется, ... 
V
    Опции темы
YonasBriginas
Дата 3.4.2006, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 25.2.2006

Репутация: нет
Всего: нет



скомпилировал сишную функцию, а потом объектный файл прилинковал к фортрановскому. (из фортрана вызвал сишную функцию). так у меня компилятор ругается на то, что тип string ему неизвестен. не подскажете, какой выход из этой ситуации?
icc -c test.cpp
ifort test1.f90 test.o

и выдаёт типа:
неизвестныое объявление std::string::string(...) и тому подобное.

зы
извиняюсь, что пример не могу привести, т.к. нет под рукой линукса.


PM MAIL   Вверх
bilbobagginz
Дата 4.4.2006, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 4
Всего: 317



тип string в оригинальном Си не существует.
ты используешь вроде интелевский компилятор, а файл у тебя видимо не Си а Си++.
короче, используй флаг компотобильности с ANSI. и убери string, cout, cin, и т.д. - сделай функцию на Си.

пока.



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
YonasBriginas
Дата 4.4.2006, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 25.2.2006

Репутация: нет
Всего: нет



не корректно выразился. да, с++ ф-ция. если бы у меня была только одна ф-ция, то конечно переделал бы. но объём кода большой и убирать равносильно переписыванию всего...
на счёт флага совместимости можно подробнее? и есть варианты, чтобы не переписывать код на си++?

в win32 компиляторы df и cl отлично ладят.

может библиотеку подключить какую-нить. только какую.... smile

Это сообщение отредактировал(а) YonasBriginas - 4.4.2006, 16:17
PM MAIL   Вверх
bilbobagginz
Дата 5.4.2006, 03:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 4
Всего: 317



дело твое в принципе возможное но муторное. Если с аглиццким нет проблем, почитай о разницах:
http://www.math.utah.edu/software/c-with-f...ml#common-types
между Фортраном и Си++ есть 3 базовых типа:
int <=> INTEGER
float <=> REAL
double <=> DOUBLE PRECISION



и следовательно все связи между модулями должны происходить именно этими типами.
в Си++ добавляется проблема строения класса ( не кострукции, а из чего создают ), и там vptr всю малину портит.


короче, то что ты делаешь называется просто: гемор.

как именно связывать фортран с либами Си++ - ртфм мануал компилятора.


--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
YonasBriginas
Дата 5.4.2006, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 25.2.2006

Репутация: нет
Всего: нет



связи между языками настроил достаточно просто.
нашёл в мануалах! там просто надо было подключить libstdc++ (путь до него тоже надо указывать)
линкуется на ура.
только вот теперь надо разбираться с исключениями в линуксе smile
умя абортит когда исключение генерю. smile

спасиб за урл.

Это сообщение отредактировал(а) YonasBriginas - 5.4.2006, 16:19
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0671 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.