С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
Почетный модератор
 Аватар для Humanoid
11554 / 4349 / 452
Регистрация: 12.06.2008
Сообщений: 12,453

warning при использовании переменной из подключаемого файла

24.01.2012, 10:59. Показов 1239. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При работе с библиотекой slang я подключаю файл slang.h
Мне нужно получить значение двух переменных SLtt_Screen_Rows и SLtt_Screen_Cols... вроде бы всё работает нормально, но при компиляции появляется предупреждение:
c:/qtsdk/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/ld.exe: warning: auto-importing has been activated without --enable-auto-import specified on the command line.
This should work unless it involves constant data structures referencing symbols from auto-imported DLLs.
Это происходит только когда есть обращение к этим переменным. В принципе, меня всё страивает (т.к. всё работает нормально), но хотелось бы понять причину предупреждения и как от него избавиться.

В файле slang.h эти переменные объявлены как:
C++
1
2
SL_EXTERN int SLtt_Screen_Rows;
SL_EXTERN int SLtt_Screen_Cols;
SL_EXTERN объявлен ранее как
C++
1
# define SL_EXTERN extern SL_IMPORT
В свою очередь SL_IMPORT объявлен как просто
C++
1
# define SL_IMPORT
Т.е., на сколько я понимаю, переменные можно считать как
C++
1
2
extern int SLtt_Screen_Rows;
extern int SLtt_Screen_Cols;
Компилятор mingw32.
Подскажите, в каком направлении копать.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.01.2012, 10:59
Ответы с готовыми решениями:

Warning-и при использовании CSpinEdit
Доброе всем время суток, дамы и господа... Работаю в RAD XE3 и столкнулся с такой вот непоняткой: на форму бросаю компонент CSpinEdit...

Ошибка синтаксиса при использовании переменной
Фрагмент кода: bdw=shelve.open('baydb') ch=1 while ch!=0: print('введите один из вариантов и нажмите enter:/n "s"...

[Mono] Ошибка при использовании локальной переменной
Проблема заключается в следующем. Есть класс DataBase: using System; using MySql.Data.MySqlClient; namespace MagChatServer { ...

2
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
24.01.2012, 11:07
The standard Windows dll format supports data imports from dlls only by adding special decorations (dllimport/dllexport), which let the compiler produce specific assembler instructions to deal with this issue. This increases the effort necessary to port existing Un*x code to these platforms, especially for large c++ libraries and applications. The auto-import feature, which was initially provided by Paul Sokolovsky, allows one to omit the decorations to archieve a behavior that conforms to that on POSIX/Un*x platforms. This feature is enabled with the --enable-auto-import command-line option, although it is enabled by default on cygwin/mingw. The --enable-auto-import option itself now serves mainly to suppress any warnings that are ordinarily emitted when linked objects trigger the feature's use.
auto-import of variables does not always work flawlessly without additional assistance. Sometimes, you will see this message

"variable '<var>' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details."

The --enable-auto-import documentation explains why this error occurs, and several methods that can be used to overcome this difficulty.
http://sourceware.org/binutils... WIN32.html
1
Почетный модератор
 Аватар для Humanoid
11554 / 4349 / 452
Регистрация: 12.06.2008
Сообщений: 12,453
24.01.2012, 11:56  [ТС]
Надеялся, что можно программным путём это сделать. Ну да ладно... добавил в файл проекта Qt строку
Code
1
QMAKE_LFLAGS += -enable-auto-import
и теперь он использует этот параметр. Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.01.2012, 11:56
Помогаю со студенческими работами здесь

Потеря переменной при использовании конструкции исключений
После данного фрагмента процедуры, IDE теряет переменную f1, с чем это связано и как избежать этого? try { ...

Ошибка повторения имен переменных при использовании глобальной переменной
Есть 3 файла: head.h #ifndef HeuristicKardano_probmatr_h #define HeuristicKardano_probmatr_h int m1; int m2; int m3; #endif

Не работает скрипт из подключаемого файла
Проблема в следующем. Если я меняю текст в теге с помощью скрипта, помещенного в код страницы, то все работает. Из подключаемого скрипта не...

Не вызываются функции из подключаемого файла
есть файл с функциями. Но я не могу вызвать его из другого файла. index.php &lt;?php function do_html_header($title) {?&gt; ...

Ошибка при использовании структуры или непредвиденное поведение (неверное значение переменной)
Добрый вечер. Столкнулся с проблемой при написании программы. Требуется нарисовать линию из символов (в приведённом ниже коде отсутствует...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru