Сейчас на форуме: (+6 невидимых) |
eXeL@B —› Программирование —› STLport - Visual Studio - include error |
Посл.ответ | Сообщение |
|
Создано: 03 февраля 2014 18:24 · Поправил: Модератор · Личное сообщение · #1 MS VS2005/2008 - include error C2006 Имеется вот такой участок кода: Code:
В визуал студии 2005 проекс собирается без проблем, в 2008-й ошибка: Code:
Как то можно это обойти? ----- -=истина где-то рядом=- |
|
Создано: 03 февраля 2014 18:32 · Личное сообщение · #2 _STLP_NATIVE_CPP_C_HEADER или _STLP_NATIVE_C_HEADER не определен (точнее сказать нельзя, т.к. ты не указал номера строк). Стало быть, найти где определяется и пофиксить. Определяется в _sunprocc.h библиотеки STLPort: # define _STLP_NATIVE_CPP_C_HEADER(header) <../CC/##header##.SUNWCCh> Тут вроде все корректно. Скорее всего неправильно библиотека подключается, да и сама она, судя по всему кривая. Советую ознакомиться с этим тредом: http://www.gamedev.ru/code/forum/?id=153174 В Visual C++ свой годный STL реализован. Вряд ли этот быстрее. Если проект твой, убирай нафиг эту кривую либу. Если чужой - то кидай уже все сорсы, чтобы можно было нормально выявить ошибку. |
|
Создано: 03 февраля 2014 21:15 · Поправил: KingSise · Личное сообщение · #3 |
|
Создано: 04 февраля 2014 15:14 · Личное сообщение · #4 |
|
Создано: 04 февраля 2014 15:23 · Личное сообщение · #5 |
|
Создано: 04 февраля 2014 15:55 · Личное сообщение · #6 |
|
Создано: 04 февраля 2014 16:03 · Личное сообщение · #7 |
|
Создано: 04 февраля 2014 16:13 · Личное сообщение · #8 |
|
Создано: 04 февраля 2014 16:52 · Личное сообщение · #9 |
|
Создано: 04 февраля 2014 17:33 · Поправил: KingSise · Личное сообщение · #10 reversecode, не выходит. Перезалил полностью весь проект целиком. Должен компилиться из любой папки. 30 Мб - https://dl.dropboxusercontent.com/u/5119217/project.rar в CharTraits.h заинклюдил <..\..\STLport-5.1.0\stlport\stl\char_traits.h>, ошибка уже такая: Error 1 error C2006: '#include' : expected a filename, found 'identifier' d:\..\KOD\STLport-5.1.0\stlport\stl\_cstring.h 26 MapEditor Error 2 fatal error C1083: Cannot open include file: '': No such file or directory d:\..\KOD\STLport-5.1.0\stlport\stl\_cstring.h 26 MapEditor В проекте, что собирается участок кода в _cstring.h в этом: Судя по подсветке условие #if defined (_STLP_USE_NEW_C_HEADERS) не выполняется. reversecode, может глянешь? ----- -=истина где-то рядом=- |
|
Создано: 04 февраля 2014 18:18 · Поправил: reversecode · Личное сообщение · #11 KingSise пишет: в CharTraits.h заинклюдил <..\..\STLport-5.1.0\stlport\stl\char_traits.h>, ошибка уже такая: пальцем в небо весь проект мап этидитора и утилс, завязан на stlport а не на студийном stl какой незнайка зачем то втулил using namespace std; в utils, чем явно сбил и себя и других две версии stl смешиваются и ломаются поэтому для начала нужно stlport правильно настроить в студии, читайте редми или гуглите что бы по #include <vector> например обращалось к stlport вектору а не в студийному тогда все должно стать на свои места и собраться а дергать по файлу и искать ошибки, это не то |
|
Создано: 04 февраля 2014 21:14 · Личное сообщение · #12 |
|
Создано: 04 февраля 2014 21:18 · Личное сообщение · #13 |
|
Создано: 04 февраля 2014 23:22 · Поправил: KingSise · Личное сообщение · #14 reversecode пишет: vs2005 на том же компьютере? в том то и дело, все происходит на том же компе. Ок, покляжу, мож чего упустил. Я просто думал, что это изначально особенности самой студии. Типа в 2008/2010 костыли убрали и больше старое говно не работает. А код писали корейцы, что весьма доставляет, особенно переводить комментарии... add Теперь сотня таких ошибок: Error 49 error C2039: 'ptrdiff_t' : is not a member of 'std' d:\game\Stas\IrisSVoSource\KOD\STLport-5.1.0\stlport\stl\_cstddef.h 35 MapEditor Error 50 error C2868: 'ptrdiff_t' : illegal syntax for using-declaration; expected qualified-name d:\game\Stas\IrisSVoSource\KOD\STLport-5.1.0\stlport\stl\_cstddef.h 35 MapEditor Error 51 error C2039: 'wint_t' : is not a member of 'std' d:\game\Stas\IrisSVoSource\KOD\STLport-5.1.0\stlport\stl\_cwchar.h 150 MapEditor Error 52 error C2868: 'wint_t' : illegal syntax for using-declaration; expected qualified-name d:\game\Stas\IrisSVoSource\KOD\STLport-5.1.0\stlport\stl\_cwchar.h 150 MapEditor Error 53 error C2039: 'mbstate_t' : is not a member of 'std' d:\game\Stas\IrisSVoSource\KOD\STLport-5.1.0\stlport\stl\_cwchar.h 157 MapEditor Error 54 error C2868: 'mbstate_t' : illegal syntax for using-declaration; expected qualified-name d:\game\Stas\IrisSVoSource\KOD\STLport-5.1.0\stlport\stl\_cwchar.h 157 MapEditor Error 55 error C2039: 'btowc' : is not a member of 'std' d:\game\Stas\IrisSVoSource\KOD\STLport-5.1.0\stlport\stl\_cwchar.h 163 MapEditor яндекс находит всего 14 страниц ;( Опять этот stl... ----- -=истина где-то рядом=- |
|
Создано: 29 ноября 2019 19:55 · Личное сообщение · #15 KingSise Доброго вечера всем. Тут разбирается проблема очень похожая на мою. Я пытаюсь собрать чужой проект в котором используется STLport. Библиотеку собрал но видимо подключил не верно. Code:
fatal error C1083: Не удается открыть файл включение: MSVCINCLUDECPP/include/cstddef: No such file or directory. Прошу подсказать особенности подлючения STLPort к VS2017. Если что. есть сборка STLPort адаптированная для VS2017. |
|
Создано: 29 ноября 2019 20:15 · Личное сообщение · #16 |
|
Создано: 29 ноября 2019 20:19 · Поправил: Anixiy · Личное сообщение · #17 |
|
Создано: 29 ноября 2019 21:35 · Личное сообщение · #18 Anixiy пишет: Какое значение в ней должно быть, если она должна присутствовать, какая директория? Без понятия. Смотри файл студии ..\VC\Auxiliary\Build\vcvarsall.bat .cstddef должен лежать в инклудах студии, примерный путь: ..\VC\Tools\MSVC\<версия>\include\cstddef Для 2019, например: ..\2019\VC\Tools\MSVC\14.23.28105\include\ ----- EnJoy! |
|
Создано: 29 ноября 2019 21:44 · Личное сообщение · #19 |
|
Создано: 29 ноября 2019 22:08 · Личное сообщение · #20 Тогда определи _STLP_CSTDIO и _STLP_CSTDDEF , очевидно же.Не особо разбирался с STLport, имел с ним дело очень давно, но предполагаю, что тебе нужно изучить значения #define .Посмотри на содержимое файла : Code:
cstdio и cstddef нужны только в том случае, если не определены _STLP_CSTDIO и _STLP_CSTDDEF , понимаешь?И если тебе не нужно использовать стандартный cstddef от Visual Studio, то тебе нужно определить дифайн _STLP_CSTDDEF .
----- EnJoy! |
|
Создано: 29 ноября 2019 23:31 · Поправил: Anixiy · Личное сообщение · #21 |
|
Создано: 30 ноября 2019 00:12 · Личное сообщение · #22 Anixiy пишет: А где ее лучше определить? Лучше всего начать с азов. Пока у меня сложилось впечатление, что дальше тебе будет сложнее, если ты не очень разбираешься в том, где настраиваются глобальные define. Тут всё очень подробно описано: ----- EnJoy! |
|
Создано: 30 ноября 2019 13:17 · Поправил: Anixiy · Личное сообщение · #23 Jupiter Добрый день. Определил я глобально define, добавил инклуды, директории на либы. Но ошибка никуда не делась. ea91_30.11.2019_EXELAB.rU.tgz - Oracle VM VirtualBox 2019-11-30 12.06.40.png Добавлено спустя 1 час 30 минут Jupiter Последнюю проблему поборол. Теперь появилась проблемка в winddk. В заголовочнике guiddef.h "Ошибка C3861 memcmp: идентификатор не найден". Как я понимаю опять не может определиться откуда брать, из STLPort или из стдийной? |
|
Создано: 30 ноября 2019 14:55 · Личное сообщение · #24 Anixiy пишет: Теперь появилась проблемка в winddk. Anixiy пишет: "Ошибка C3861 memcmp: идентификатор не найден - Смотри, какой используется <string.h> - Смотри в сторону _STLP_DONT_USE_PRIV_NAMESPACE - Смотри в сторону using _STLP_VENDOR_CSTD::memcmp; ----- EnJoy! |
|
Создано: 30 ноября 2019 19:47 · Личное сообщение · #25 |
|
Создано: 30 ноября 2019 21:09 · Личное сообщение · #26 |
eXeL@B —› Программирование —› STLport - Visual Studio - include error |