Не удается открыть файл d3dx9 lib
В сети выложены различные версии. Чаще всего пользователи находят web-установщик. Но библиотека D3DX9 не предназначена для Windows 8.1. Установка с помощью web-установщика, скорее всего, не получится. Для установки в Windows 8.1 будем использовать выпуск DirectX End-User Runtimes (June 2010) – пакет для автономной установки.
и скачайте файл. Его размер около 96 Mb. Вы сразу поймёте, что это не web-установщик, который имеет небольшие размеры.
К сожалению, эта версия представлена только в английской части сайта.
Версия, предлагаемая в русской части сайта (March 2009), не имеет самых последних файлов.
Жмите на кнопку "Download".
В следующем окне Microsoft предлагает обратить внимание на другие загрузки.
Нажмите синюю кнопку "Нет, спасибо" (No, thanks). Реклама.
Если загрузка, не началась нажмите маленькую ссылку "Click here".
Скачанный файл представляет собой упакованный архив, который надо распаковать. Для этого создайте отдельную папку, например, в директории "Документы". Назовите её как-нибудь. Например, "Файлы DirectX - June".
Перейдите к скачанному файлу. Щёлкните его значок правой кнопкой мыши и откройте "Свойства".
Откройте снова "Свойства".
Запустите файл directx_Jun2010_redist двойным щелчком по значку установщика.
Сначала откроется окно с предложением принять лицензионное соглашение.
Прочтите и нажмите кнопку "Yes", если Вы согласны.
В следующем окне предлагается указать путь для распаковки архива.
Откроется окно обозревателя папок.
Найдите в обозревателе ранее созданную папку "Файлы DirectX - June" для распаковки и нажмите "ОК"
Путь к указанной папке пропишется в задании, нажмите "ОК".
Начнётся распаковка файлов.
Распаковка архива завершена.
Перейдите в папку назначения "Файлы DirectX - June". Найдите там файл DXSETUP. Сделайте щелчок правой кнопкой по значку файла, перейдите к "Свойствам". Перейдите на вкладку "Совместимость". Поставьте отметку в чекбокс. Совместимость с Windows 7 уже выставлена по умолчанию. Нажмите "Применить" и "ОК".
Нажмите снова кнопку "Далее" в следующем окне установки.
Начнётся загрузка и установка библиотеки D3DX9.
Установка завершена, нажмите кнопку "Готово", чтобы закрыть окно.
Эта цепочка заблокирована. Вы можете просмотреть вопрос или оставить свой голос, если сведения окажутся полезными, но вы не можете написать ответ в этой цепочке.
VS2013 LNK1104 - ошибка статической линковки библиотек в консольном приложении
Visual Studio 2013. В решении три проекта (C++): консольное приложение и две статических.
ошибка LNK1104
Выводит ошибку при сборке LNK1104.В выводе пишет " LINK : fatal error LNK1104: не удается.
Ошибка компиляции LNK1104
Не могу понять почему ошибка, ведь все библиотеки подключены(
В свойствах проекта, C++, дополнительные каталоги включения. кст на d3d9.lib, подключенный таким же образом, компиллятор не ругается
А надо в настройки компоновщика пути до либов прописать, а не только до хэдэров в настройках компилятора.
Т.е. зайти в свойства -> свойства конфигурации -> компоновщик, а дальше смотреть -> ввод -> дополнительные зависимости? или как? если вы имеете ввиду первый вариант, то я его уже пробовал, не вышло. и ругается он конкретно на d3dx9.lib, а d3d9.lib подключает без вопросов.
У меня есть функция инициализации Direct3D для которой нужен d3d9.lib и эта функция компилируется нормально, без ошибок. А все, что связано с d3dx9.lib не работает и компилятор выдает LNK1104. Если убрать pragma comment, то выдает ошибку на неразрешенный внешний символ, т.е. нашел прототип функции, но не нашел определение
Всякое бывает. Люди иногда сами говорят что в проблема в том-то. а оказывается она совсем в другом.
Ну давай хотя бы скрины.
Кстати, не найду писал кто или нет.. там эта библиотека то есть?
линкер не может найти эту библиотеку. раскопируй ее во все директории, "вокруг твоего проекта". только не сразу, а сперва на уровень выше - попробовал, на уровень ниже - попробовал. и т.д. в конце-концов он ее найдет. тогда и поймешь, где он ищет (читать и разбираться ведь некогда? значит, нужно запастись терпением: два дня работы в поле могут сэкономить два часа в библиотеке или в лаборатории). или, если ты на диске c: работаешь, скопируй ее в корень и укажи c:\d3dx9.lib. сходу найдет и присобачит.
novi4ok, это плохой вариант. ТС давно бы решил проблему если бы делал так, как ему советуют. Думаю он просто где-то напутал. Показал бы скрины, код, и я думаю все сразу бы встало на свои места.
VS2013 LNK1104 - ошибка статической линковки библиотек в консольном приложении
Visual Studio 2013. В решении три проекта (C++): консольное приложение и две статических.
ошибка LNK1104
Выводит ошибку при сборке LNK1104.В выводе пишет " LINK : fatal error LNK1104: не удается.
Ошибка компиляции LNK1104
Не могу понять почему ошибка, ведь все библиотеки подключены(
Hydrogen, ещё раз: либо приведи код, либо поставь запятую и попробуй с корректным подключением либы. Если ты не поправил точкуна запятую то это серьёзный баг и либо просто не подключил (а судя по тому что увидел
Hydrogen, ну тогда мой ответ я ХЗ что там у тебя не так т.к. кода не ощущаю
Hydrogen, я так и не понял что ты от меня хотел, да действительно только забрал у меня время.
Hydrogen, можешь остановится на секунду и внятно мне написать. Вобщем есть некий твой проект(код как я понял держишь в тайне). Далее ты слиноквал его и получил предупреждение линковщика
- но как я понял его пофиксил, т.к. точка вместо запятой и H вместо lib приводили к тому что либа не подключалась. Так вот после поправки этого момента проект начал норм линковаться?
Для уверенности можно просто найти d3dx9.lib скопировать его в папку проекта, записать
и произвести линковку.
После всего этого что выдаёт линковщик.
Если ошибка до сих пор есть то просто покажи какие хедеры в инклудах (думаю это ни есть тайной) я сориентируюсь и возможно подскажу что недоподключил и т.д.
Добавлено через 2 минуты
И да у меня нет времени листать весь топик, поєтому если просил(шь) о помощи то кратко введи в курс дела - у меня забот и без вникания в чужие книги из постов хвататет
Добавлено через 7 минут
У всех у кого возникла эта проблема просто откройте папку Lib и Visual Studio с проектом и просто из папки перетащите этот d3dx9.lib в папку(раздел в Обозревателе решений) " Заголовочные файлы "
geniy1998, мы проект для анализа увидим или снова будем гадать по картам таро?
-=ЮрА=-, Не подскажите как сделать окно в котором панель Direct уже создана (Чтоб можно было уже работать с самой панелью). И ещё как делать интерфейс ? Всякие меню, списки, панели и т.д.
Добавлено через 8 минут
Теперь через 5 минут 2 новые ошибки! (До этого всё нормально было)
error LNK1120: 1 неразрешенных внешних элементов
error LNK2019: ссылка на неразрешенный внешний символ _WinMain@16 в функции ___tmainCRTStartup
Точно такой же код( Ведь 5 минут работал прекрасно (
-=ЮрА=-, Не подскажите как сделать окно в котором панель Direct уже создана (Чтоб можно было уже работать с самой панелью). И ещё как делать интерфейс ? Всякие меню, списки, панели и т.д.
- работай с MFC dialog based aplication там уже создано окно и остаётся добавить нужные контролы да написать к ним обработчики.
Вот тут материал по созданию приложений данного типа
Этапы создания MFC приложения
и примеры
Мои MFC поделки
Ребят ну что вы все сразу пытаетесь начать с АПИ, API да прозрачней по коду, но на АПИ нормальное приложение (не дурацкое окно с рисованным почти всем) создают люби в основом съевшие не один пуд соли в написании MFC приложений.
Добавлено через 2 минуты
geniy1998, кинь проект без папок дебуг/релиз и файла с расширением ncb я устраню эти ошибки, я не могу наперёд сказать 100% чем они вызваны, так что разберусь на месте.
Добавлено через 3 минуты
geniy1998, самое простое создать тип проекта simple API Aplication и вбивать всё в него а не мучаться с настройками пустого проекта
Добавлено через 45 секунд
Там 1 файл cpp а там 1 код:
хоть бери да пиши FAQ по уменьшению ёмкости проектов и о возможнотях достройки кода при линковке
Опять же указал какой тип проекта надо создать
geniy1998, самое простое создать тип проекта simple API Aplication и вбивать всё в него а не мучаться с настройками пустого проекта
В заключение всё что могу добавить - я на картах таро не работаю!
geniy1998, прости но напишу честно - ты меня не то что ошарашил, а поверг в глубочайшее уныние(
Ну кто пишет 3 хедера прагмы и не пишет ни main ни WinMain ОМГ ну как можно надеятся что компилятор слинкует срр-ник просто с инклудами. Слёзы на глазах.
Касательно сжатия проекта, написал по русски Debug к чёрту из проекта, нет папка присутсвует.
Единственное я забыл что папку ipch(она тянет много Мб места) можно также убивать - она тоже автоматом достроится.
Теперь к проекту, в аттаче голый костяк API проекта с твоими хедерами и с WinMain. Жду скриншота ошибки (если конечно будет). Причём если будет ошибка плана мол
то у тебя вообще не стоит SDK для DirectX, я пока не знаю стоит она или нет, потому просто приаттач в тему скриншот от линкера прикреплённого ниже проекта
geniy1998, прости но напишу честно - ты меня не то что ошарашил, а поверг в глубочайшее уныние(
Ну кто пишет 3 хедера прагмы и не пишет ни main ни WinMain ОМГ ну как можно надеятся что компилятор слинкует срр-ник просто с инклудами. Слёзы на глазах.
1)Я плохо очень плохо разбираюсь в C++!) Только C++ Consol не много понимаю) Я совсем недавно приступил к изучению!и даже не знаю что такое "хедера".
2)SDK Стоит и он жалуется на "d3dx9.h" а "d3d9.h" не жалуется
3)Я дописал код это я вам отправлял на сколько помню пустой!
4)Написал код вроде как ошибка не выскакивала! Если возникнет я отправлю скриншот)
Спасибо) Буду учиться!
geniy1998, хорошо буду ждать известий;)
geniy1998, прости но напишу честно - ты меня не то что ошарашил, а поверг в глубочайшее уныние(
Ну кто пишет 3 хедера прагмы и не пишет ни main ни WinMain ОМГ ну как можно надеятся что компилятор слинкует срр-ник просто с инклудами. Слёзы на глазах.
Касательно сжатия проекта, написал по русски Debug к чёрту из проекта, нет папка присутсвует.
Единственное я забыл что папку ipch(она тянет много Мб места) можно также убивать - она тоже автоматом достроится.
Теперь к проекту, в аттаче голый костяк API проекта с твоими хедерами и с WinMain. Жду скриншота ошибки (если конечно будет). Причём если будет ошибка плана мол то у тебя вообще не стоит SDK для DirectX, я пока не знаю стоит она или нет, потому просто приаттач в тему скриншот от линкера прикреплённого ниже проекта
Visual studio ошибка 2 error lnk1104: не удается открыть файл 'kernel32.lib'
Я удалил visual studio express, и установил visual studio profissional. И при сборке простой.
Ошибка при компановке программы "fatal error LNK1104"
Здравствуйте. Нужна помощь. Запускаю через qeditor, встроенный в masm32 файл winurl.asm командой.
Ошибка компоновки fatal error LNK1104: не удается открыть файл "kernel32.lib"
Скажыте пожалуста что делать, оооочень нужно. у меня выдает ошыбку: 1>LINK : fatal error.
Microsoft Flight Simulator X Deluxe Edition Microsoft Flight Simulator X Standard Edition Microsoft Flight Simulator X Service Pack 1 Microsoft Age of Empires III Microsoft Age of Empires III : The WarChiefs Microsoft Age of Empires III: The Asian Dynasties Microsoft Zoo Tycoon 2: African Adventure Microsoft Zoo Tycoon 2: Dino Danger Microsoft Zoo Tycoon 2: Marine Mania Microsoft Zoo Tycoon 2: Ultimate Collection Microsoft Fable III for PC Еще. Меньше
Не удается открыть файл библиотеки Майкрософт
обновленные библиотеки Windows SDK
Параллельная синхронизация сборок
если вы используете параллельный вариант сборки, Visual Studio мог заблокировать файл в другом потоке. Чтобы устранить эту проблему, убедитесь, что один и тот же объект кода или библиотека не встроены в несколько проектов. Используйте зависимости сборки или ссылки проекта, чтобы выбрать в проекте созданные двоичные файлы.
Библиотека vccorlib. lib
Не удается открыть сторонний файл библиотеки
Существует несколько распространенных причин этой проблемы.
Путь к файлу библиотеки может быть неверным или не заключен в двойные кавычки. Или, возможно, вы не указали его для компоновщика.
Возможно, вы установили 32-разрядную версию библиотеки, но при этом собираетесь на 64 бит или наоборот.
Библиотека может зависеть от других библиотек, которые не установлены.
Может потребоваться предоставить каталог библиотеки, переопределяющий каталог стандартной библиотеки. В командной строке используйте параметр /libpath . В интегрированной среде разработки используйте свойство Дополнительные каталоги библиотек на странице свойств " Общие" компоновщика > свойств > конфигурации для проекта.
Убедитесь, что установлены все версии библиотеки, необходимые для создаваемых конфигураций. воспользуйтесь программой управления пакетами vcpkg , чтобы автоматизировать установку и настройку для многих распространенных библиотек. По возможности лучше создавать собственные копии сторонних библиотек. Затем вы убедитесь, что все локальные зависимости библиотек созданы для тех же конфигураций, что и ваш проект.
Скачайте и установите последнюю версию DirectX
Чтобы устранить эту проблему, скачайте и установите последнюю версию среды выполнения для конечных пользователей DirectX. Для этого посетите веб-сайт корпорации Майкрософт по адресу:
Устанавливаемое программное обеспечение не проходило проверку на совместимость с этой версией Windows. (Подробнее о тестировании на совместимость.)
Дополнительные сведения см. в следующей статье базы знаний Майкрософт:
822798 Не удается установить некоторые обновления и программы
Приложение выполняется или загружается в отладчике
Если filename — имя исполняемого файла или связанный с ним PDB-файл, см. раздел Если приложение уже запущено. Затем проверьте, загружен ли он в отладчик. Чтобы устранить эту проблему, перед повторным созданием программы закройте программу и выгрузите ее из отладчика. Если приложение открыто в другой программе, например в редакторе ресурсов, закройте его. Если программа не отвечает, может потребоваться завершить процесс с помощью диспетчера задач. Также может потребоваться закрыть и перезапустить Visual Studio.
Слишком большие файлы
Эта ошибка может возникать из-за слишком большого размера файла. Библиотеки или объектные файлы, размер которых превышает гигабайт, может вызвать проблемы для 32-разрядного компоновщика. Возможным исправлением этой проблемы является использование 64-разрядного набора инструментов. Дополнительные сведения о том, как использовать 64-разрядный набор средств в командной строке, см. в разделе как включить 64-разрядный Visual C++ набор инструментов в командной строке. сведения о том, как использовать 64-разрядный набор инструментов в интегрированной среде разработки, см. в разделе использование MSBuild с 64-разрядным компилятором и инструментами. также см. статью Stack Overflow post: как сделать Visual Studio использовать собственную цепочки инструментов amd64.
Решение
Проблемы в переменной среды TMP
Если имя файла LNKnnn, то это имя файла, созданного компоновщиком для временного файла. Каталог, указанный в переменной среды TMP, может не существовать. Кроме того, для переменной среды TMP может быть задано несколько каталогов. Для переменной среды TMP должен быть указан только один путь к каталогу.
Копирование файла вручную
Чтобы устранить эту проблему, скопируйте файл D3dx9_25. dll или D3dx9_27. dll с компакт-диска, CD или DVD, на соответствующий игровой каталог. Для этого выполните указанные ниже действия в зависимости от используемой версии Windows.
Windows 7 или Windows Vista
Вставьте CD или DVD-диск 1 диска для игры на CD-или DVD-диск компьютера.
Найдите и выберите пункт компьютер.
Найдите и щелкните дисковод для компакт-и DVD-дисков.
Найдите и щелкните следующую папку:
CDDrive:\ DirectX9 Примечание. В этом пути CDDriveпредставляет букву диска для компакт-диска.
Дважды щелкните Apr2005_d3dx9_25_x86. cab, щелкните правой кнопкой мыши файл d3dx9_25. dllи выберите команду Копировать.
Примечание. Используйте Apr2005_d3dx9_25_x64. cab для 64-разрядной версии операционной системы Windows.
Найдите следующую папку для вашей игры:
Диск: \Program Files\Microsoft Games \название игры Примечание. В этом случае дискпредставляет букву диска, на которой установлена игра, а название игры — игру, которую вы хотите восстановить.
Щелкните правой кнопкой мыши папку игры, соответствующую игре, установленной на компьютере, и выберите команду Вставить. Примечание. Если на компьютере установлено более одной игры, повторите шаги 7and 8 для других игр.
Windows XP
Вставьте CD или DVD-диск 1 диска для игры на CD-или DVD-диск компьютера.
Найдите и щелкните следующую папку:
CDDrive:\ DirectX9 Примечание. В этом пути CDDriveпредставляет букву диска для компакт-диска.
Дважды щелкните Apr2005_d3dx9_25_x86. cab, щелкните правой кнопкой мыши файл d3dx9_25. dllи выберите команду Копировать.
Примечание. Используйте файл Apr2005_d3dx9_25_x64. cab для версии операционной системы Microsoft Windows, основанной на 64-разрядных версиях.
Найдите следующую папку для вашей игры:
Диск: \Program Files\Microsoft Games \название игры
Примечание. В этом случае диск представляет букву диска, на котором установлена игра, и название игры — игра, которую вы хотите восстановить.
Щелкните правой кнопкой мыши папку игры, соответствующую игре, установленной на компьютере, и выберите команду Вставить. Примечание. Если на компьютере установлено несколько игр, повторите действия 5 и 6 для других игр.
Другие распространенные проблемы
Слишком длинные пути
Эта ошибка может появиться, когда путь к файлу расширяется до 260 символов. При необходимости измените структуру каталогов или Сократите имена папок и файлов, чтобы сократить пути.
Не удается открыть файл "К:\програм.ОБЖ"
Чтобы устранить эту проблему для сборок из командной строки, проверьте параметры параметра /libpath . Также проверьте пути, указанные в переменной среды LIB, и пути, указанные в командной строке. Обязательно используйте двойные кавычки для всех путей, содержащих пробелы.
Чтобы устранить эту проблему в интегрированной среде разработки, при необходимости добавьте двойные кавычки для следующих свойств проекта:
свойство каталоги библиотеки на странице свойств конфигурации > VC++ каталоги
Свойство " Дополнительные каталоги библиотек " на странице свойств " Общие" компоновщика > свойств > конфигурации
Свойство Дополнительные зависимости на странице свойств входных данных компоновщика > свойств > конфигурации .
Библиотеки для розничной торговли, отладки или конкретной платформы
Эта ошибка может возникнуть при первой сборке для новой целевой платформы или конфигурации, например в розничной торговле или ARM64. в интегрированной среде разработки проверьте, установлены ли набор инструментов платформы и Windows SDK версии , указанной на странице свойств общие . также убедитесь, что необходимые библиотеки доступны в каталогах библиотек , указанных на странице свойств каталоги VC++. Проверьте свойства каждой конфигурации, например Debug, Retail, x86 или ARM64. Если одна сборка работает, но другая нет, Сравните параметры обоих параметров. Установите все отсутствующие необходимые инструменты и библиотеки.
Приложение заблокировано антивирусным сканированием
Антивирусные программы часто временно блокируют доступ к вновь созданным файлам, особенно .exe и .dll исполняемые файлы. Чтобы устранить эту проблему, попробуйте исключить каталоги сборки проекта из антивирусного сканера.
Проблемы с путями или именами файлов
Не удается открыть приложение или его PDB-файл
Не удается открыть файл, созданный проектом
Эта ошибка может возникать, если файл filename еще не существует, когда компоновщик пытается получить к нему доступ. Это может произойти, когда один проект зависит от другого в решении, но проекты создаются в неправильном порядке. Чтобы устранить эту проблему, убедитесь, что ссылки проекта заданы в проекте, который использует этот файл. После этого отсутствующий файл будет создан до того, как он потребуется. дополнительные сведения см. в статьях добавление ссылок в проекты Visual Studio C++ и управление ссылками в проекте.
Проблемы
Файл d3dx9_25. dll не найден
Файл d3dx9_27. dll не найден
Дополнительные зависимости, указанные в интегрированной среде разработки
При указании отдельных библиотек в свойстве Дополнительные зависимости используйте пробелы для разделения имен библиотек. Не используйте запятые или точки с запятой. При использовании пункта меню Правка для открытия диалогового окна Дополнительные зависимости используйте символы новой строки для разделения имен, а не запятых, точек с запятой или пробелов. Также используйте символы новой строки при указании путей к библиотекам в папках библиотек и дополнительных каталогах библиотек .
Неправильные разрешения для файла
Эта ошибка может возникать, если у вас недостаточно разрешений для доступа к файлу filename. Это может произойти, если для доступа к файлам библиотеки в защищенных системных каталогах используется обычная учетная запись пользователя. Или, если вы используете файлы, скопированные с других пользователей, у которых все еще есть исходный набор разрешений. Чтобы устранить эту проблему, переместите файл в каталог проекта с возможностью записи. Если перемещенный файл имеет недоступные разрешения, выполните команду takeown.exe в окне командной строки администратора, чтобы стать владельцем файла.
Справка, моей проблемы нет в списке!
Библиотеки vcruntime с отслеживанием версий
Причина
Windows библиотеки, например kernel32. lib
Если файл, который не удается открыть, является одним из стандартных файлов библиотеки, предоставляемых корпорацией Майкрософт, например kernel32. lib, может возникнуть ошибка конфигурации проекта или ошибка установки. убедитесь, что Windows SDK установлен. если для проекта требуются другие библиотеки майкрософт, такие как MFC, убедитесь, что компоненты MFC также установлены установщиком Visual Studio. Вы можете снова запустить установщик, чтобы добавить дополнительные компоненты в любое время. Дополнительные сведения см. в Изменение Visual Studio. Используйте вкладку отдельные компоненты в установщике, чтобы выбрать конкретные библиотеки и пакеты SDK.
Библиотеки в проектах из сетевых или других источников
При построении проекта, скопированного с другого компьютера, расположения установки библиотеки могут отличаться. Для сборок из командной строки убедитесь, что для сборки правильно заданы пути к переменной среды LIB и библиотеке. в Visual Studio можно просмотреть и изменить текущие пути к библиотекам, заданные на страницах свойств проекта. на странице VC++ каталоги выберите элемент управления "раскрывающийся список" для свойства каталоги библиотек , а затем нажмите кнопку изменить. В разделе вычисленное значение диалогового окна каталоги библиотек перечислены текущие пути поиска файлов библиотек. Обновите эти пути, чтобы они указывали на локальные библиотеки.
Дальнейшие действия
Для получения дополнительной помощи посетите веб-сайт службы поддержки Майкрософт. На нем доступны указанные ниже службы.
Эта ошибка возникает, когда компоновщику не удается открыть файл для чтения или записи. Ниже перечислены две наиболее распространенные причины этой проблемы.
Программа уже запущена или загружена в отладчике, и
пути к библиотеке неверны или не заключены в двойные кавычки.
Существует множество других возможных причин этой ошибки. Чтобы сократить их, сначала проверьте Тип файла. Затем используйте следующие разделы для выявления и исправления конкретной проблемы.
Недостаточно места на диске
Эта ошибка может возникать, если на диске недостаточно места. Компоновщик использует временные файлы в нескольких ситуациях. Даже если на диске достаточно места, большие ссылки могут выпустить или фрагментировать свободное место на диске. Рассмотрите возможность использования параметра /OPT (оптимизация) . выполнение транзитного исключения COMDAT считывает все объектные файлы несколько раз.
Читайте также: