Войти
ПрограммированиеФорумГрафика

Работа с NVIDIA

Страницы: 1 2 3 4 Следующая »
#0
22:00, 25 мая 2013

Скажу сразу у меня Windows. Я пытаюсь откомпилировать файл main.cpp, в котором подключается
#include <nvModel.h>
И в функции main просто return 0.
nvModel.h и есть та библиотека которую мне нужно подключить. файл находится за пределаи компилятора и я написал такой вот makefile:

CC = g++
EXE = nvTest

DIR1 = -I"C:\Program Files (x86)\NVIDIA Corporation\NVIDIA OpenGL SDK 10\common\include"
DIR2 = -I"C:\Program Files (x86)\NVIDIA Corporation\NVIDIA OpenGL SDK 10\common\GLEW\include"
DIR3 = -I"C:\Program Files (x86)\NVIDIA Corporation\NVIDIA OpenGL SDK 10\common\nvModel\include"
DIR4 = -I"C:\Program Files (x86)\NVIDIA Corporation\NVIDIA OpenGL SDK 10\common\nvWidgets\include"
DIR5 = -I"C:\Program Files (x86)\NVIDIA Corporation\NVIDIA OpenGL SDK 10\common\nvImage\include"
DIR6 = -I"C:\Program Files (x86)\NVIDIA Corporation\NVIDIA OpenGL SDK 10\common\nvGUI\include"

LDFLAGS = -L"C:/Program Files (x86)/NVIDIA Corporation/NVIDIA OpenGL SDK 10/common/nvModel/lib"
LIBS = -lnvModel

INCLUDE += $(DIR1)
INCLUDE += $(DIR2)
INCLUDE += $(DIR3)
INCLUDE += $(DIR4)
INCLUDE += $(DIR5)
INCLUDE += $(DIR6)
all:
$(CC) main.cpp $(LDFLAGS) $(LIBS) -o $(EXE) $(INCLUDE)

сам nvModel.h подключает ещё и файлы которые находятся за пределами его папки.
Сам nvModel.h в папке C:\Program Files (x86)\NVIDIA Corporation\NVIDIA OpenGL SDK 10\common\nvModel\include
А в его коде есть

#include <nvMath.h>

А файл nvMath.h в папке C:\Program Files (x86)\NVIDIA Corporation\NVIDIA OpenGL SDK 10\common\include

Так же есть файлы nvModel.dll,nvModel.lib И Source файлы .cpp.
Я их не включил в makefile, решил попытать счастье с .lib Но не вышло.
Компилятор говорит что в файлах NVIDIA куча ошибок. Вот я их вывел в log файл:
http://yadi.sk/d/0JMHyPEh59nl2

Я довольно плохо знаком с makefile, из IDE использую Code::Blocks. ОС Win7.
Вообще в последнее время vim и g++, без IDE.
Помогите пожалуйста, очень хочу понять что не так делаю.

#1
0:04, 26 мая 2013

Nawy
> Скажу сразу у меня Windows.
> ...
> Вообще в последнее время vim и g++, без IDE.
> Помогите пожалуйста, очень хочу понять что не так делаю.

Всё :(

#2
0:13, 26 мая 2013

Я считаю, ты пошел немного по неправильному пути. Даже в самом OpenGL SDK находятся проекты Visual Studio, почему бы не использовать ее? Тем более есть бесплатные Express версии. Поверь, все будет лишь проще. И если не секрет, почему именно OpenGL?

#3
1:10, 26 мая 2013

> d3dx9_37
> почему именно OpenGL?
:) говорящий ник для такого вопроса.

Судя по vim и gcc человека не только винда интересует.

#4
9:13, 26 мая 2013

ASD
> Всё :(
Не соглашусь. Может VIM не очень и подходит для Windows, но он простой и легкий.

d3dx9_37
Да вообще сложно не согласиться, что для Windows лучше VS использовать, но после написания программы на VS она станет 100% не переносимой на другие платформы, придётся писать все заново.(сам я пишу на Qt и GTK+, обычно по настроению). Ещё одна проблема почему я не использую VS, это её ужасная, просто ужаснейшая MFC... и честно говоря писать на WinAPI тоже не очень, в учет её сложности, размера кода и опять же непереносимости. И лично моё мнение VS напоминает Delphi или C#, громоздкий, гадкий и противный, не люблю я все эти проектища. OpenGL выбрал потому что она кросплатформенная, быстрая, логичная, IMHO лучший реал-тайм, просто скачиваем пару файлов и работаем. А вообще это вопрос религии) Не считаю что Direct3D чем то хуже, даже лучше потому что есть DirectX, в который входят либы звуков рисовалки и куча куча всего. Но опять же я такого не преверженец, я люблю выбирать. Допустим нужна библиотека звука, я допустим выбираю OpenAL или BASS(эх если бы она была бесплатной). И так далее.

Роман Шувалов
> Судя по vim и gcc человека не только винда интересует.
Да ты прав. Обожаю Linux. У меня Debian, была Федора, щас вот с FreeBSD работаю, тестирую там язык Go.

Да проект VS смотрел, мало что понял. Ясно что они шаманят и с source файлами и с .dll и с .lib Как мне это в makefile впихнуть не представляю. Оочень хотел посмотреть как прицепляет библиотеки Code::BLocks, а он походу свои makefile подчишает.

d3dx9_37
Ммм, хотел вот ещё спросить, вот 2 файла
nvModel.vcproj - Visual Studio Project
nvModel.sln - sln что это?
VCCLCompilerTool, VCLinkerTool,VCMIDLTool все разбито на файлы? Нет единого компилятора?

Но все же подскажите как правильно подключить библиотеки, если кто знает пишите пожалуйста.
Я просто не понимаю в чем ошибка. У меня такая логика:
1. Подключаем пути до include
2. Прицепляем архив с обьектными файлами .lib

Все? Что ещё нужно для подключения библиотеки? в .lib находятся обьектные source файлы, в include хедеры. Что ещё то нужно?

#5
9:24, 26 мая 2013

Nawy
Кто тебе мешает скомпилить эти длл как тебе надо и под что надо?

> sln что это?

Solution, у тебя может быть один солюшен и в нём несколько проектов.
Своего рода набор проектов.

#6
10:16, 26 мая 2013

Executor
Вот я и спрашиваю как? Как их и куда вписать в makefile? Я просто не понимаю.

#7
10:25, 26 мая 2013

Nawy
Погугли. Makefile for dll.

#8
10:35, 26 мая 2013

Executor
Тоесть нужно просто прицепить за место .lib , .dll или откомпилировать из .lib в .dll? Так в исходниках уже есть .dll

#9
13:29, 26 мая 2013

Nawy
> Да вообще сложно не согласиться, что для Windows лучше VS использовать, но
> после написания программы на VS она станет 100% не переносимой на другие
> платформы, придётся писать все заново.
Можно компиляторозависимый код обернуть в define.

#if defined(_MSC_VER)
#endif

Ну и makefile тоже можно выполнять команда nmake, через командную строку запускать.

#10
14:33, 26 мая 2013

Nawy
> но после написания программы на VS она станет 100% не переносимой на другие
> платформы
это не правда

#11
15:48, 26 мая 2013

Anika
Pushkoff
Хорошо, хорошо, но все равно я не люблю его) Каким бы он хорошим не был. Я люблю знать и видеть что и как происходит, а когда все делает IDE+Framework мне сложно им доверять. Ну и вообще САМЫЙ главный и большой минус VS, это огромный размер скачиваемого IDE, долгая установка, все это громоздко и не прочно. IMHO Не сердчайте на меня VS`ники, ещё раз повторюсь это вопрос религии)

Вот лучше бы помогли в моём вопросе, целый день гуглю и ишю в  чем ошибка в моём makefile. Нашёл программу Make-It-So но она выдала ошибку по выполнению, нашёл ещё и sln2mak, тоже ошибка синтаксиса( эти две программки конвертируют из .sln в makefile). Не пойму в чем проблема. Как подключить либы? Фанаты VS не знают?

#12
16:58, 26 мая 2013

Nawy
> Я люблю знать и видеть что и как происходит
да там все известно и видно

Nawy
> Ну и вообще САМЫЙ главный и большой минус VS, это огромный размер скачиваемого
> IDE
800Мб вместе с WindowsSDK, но все будет работать из коробки без лишних настроек

Nawy
> Фанаты VS не знают?
судя по логу, у тебя не компилится, и мейкфайл тут не при чем.
возможно библиотека была написана для старых версий компилятора.

#13
17:07, 26 мая 2013

Pushkoff
хм, тоесть ты считаешь что makefile написан верно? Да в какой то мере ты прав потому что компилятор новый, а либо 2010 года.
Ну и кстати VS платный. Есть и бесплатные типа Express, но если говорить прямо он хоть на что то пригоден? Не говоря уже о серьёзных проектах.
Платные VS Professional, почему они платные по твоему? Microsoft вечно что то навязывает, а когда сам выбираешь, это уже другой вопрос.

#14
18:39, 26 мая 2013

MDS
ммм, понятно. Врать не буду, но скажу где то читал что он не умеет работать с базами данных и не может работать с сетью, но не уверен.
Под серьёзными программами понимаю программы допустим скоростные системы. Для которых компилятор msvc не может скомпилировать хорошо оптимизированный код как gcc.
Для сетей может vs и не нужно, но опять же сидеть и просто писать всякие системы расчетов и подсчётов коров в колхозе, или опять же, я слышал на конференциях стартаповцев:
-Одна девушка предлагала программу для рыбофермы, считать икринки и другую чепуху.
-Другой парень предлагал программу для составления расписания в универе
-И ещё кто то толкал идею электронного журнала.
И все это было написано на VS. Более серьёзного я не видел. Сами мелкософты работают без использования VS.

Для меня это не серьёзные проекты. А вот допустим вот что на ум приходит: Microsoft Office, Chrom, Unreal Engine, Adobe Photoshop, CryEngine и другие.
А вообще собственно что даёт VS? И чем отличается от Qt или Juce? Да только взаимодействием с пользователем и алгоритмами построения окон. Остальное идентично, ибо c++ это стандарт.

Ммм... и такой вопрос, во время web установки VS Express, что происходит? Она распакует свои файлы в папку, пропишет в path свой компилятор, а что ещё?

Страницы: 1 2 3 4 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.