Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблемы при компиляции (путь к линкеру), cannot open file "C:\Program.obj" 
V
    Опции темы
DrGrey
Дата 16.10.2006, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006
Где: г.Харьков

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



Здравствуйте, уважаемые Кодеры.
У меня следующая проблема:
Я переустановил систему (Microsoft Windows XP/2002 Professional 5.01.2600 (Service Pack 2)) и поставил Microsoft Visual C++ 6.0 Enterprise Edition (я им почти не пользовался раньше т.к. работал в Borland C++ V5.02). При компиляции любого проекта выдает следующее:

Код

Linking...
LINK : fatal error LNK1104: cannot open file "C:\Program.obj"
Error executing link.exe.

WinProg.exe - 1 error(s), 0 warning(s)


Поставил Microsoft Visual Studio .NET 2003 – то же самое. И ведь знаю что проблема в указании пути к линкеру, а сделать ничего не могу. Я перепробовал все: менял пути, ставил в другую директорию, удалял пробелы из пути, задавал пути в стиле ДОС, снимал с папок атрибут только для чтения, все напрасно. Может быть я не так или не там указываю пути?
Буду очень признателен за любой совет.

PM MAIL WWW ICQ   Вверх
Sartorius
Дата 16.10.2006, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



 Объектник на самом деле существует в этой папке?
PM MAIL ICQ   Вверх
DrGrey
Дата 16.10.2006, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006
Где: г.Харьков

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



Нет! Скорее всго имеется в виду что-то в  "Program Files".
PM MAIL WWW ICQ   Вверх
Любитель
Дата 19.10.2006, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

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



А в какой папке создавался проект?


--------------------
PM MAIL ICQ Skype   Вверх
Rickert
Дата 20.10.2006, 01:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

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



Цитата(DrGrey @  16.10.2006,  15:06 Найти цитируемый пост)
Нет! Скорее всго имеется в виду что-то в  "Program Files". 

Что где имеется ввиду?
В какой папке создал проект. У тебя видимо опции криво проставлены, менял чего?


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
DrGrey
Дата 20.10.2006, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006
Где: г.Харьков

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



Сначала проект создавался в папке:
C:\Program Files\Microsoft Visual Studio\MyProjects\WinProg;
А потом я скопировал его в корень, без пробелов:
C:\WinProg;

Опции не менял ни в одном пакете, но скорее всего это они. Подскажите, пожалуйста, по подробнее, как и где, правильно, прописать путь к линкеру в Microsoft Visual C++ 6.0 Enterprise Edition или Microsoft Visual Studio .NET 2003.


P.S. Не компилится даже элементарный "Hello, World!"!!! smile 

PM MAIL WWW ICQ   Вверх
Rickert
Дата 21.10.2006, 04:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

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



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


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
DrGrey
Дата 21.10.2006, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006
Где: г.Харьков

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



Уважаемый, Rickert, я бы с удовольствием, но ведь эффект тот же – то есть:
LINK : fatal error LNK1104: cannot open file "C:\Program.obj"

Какой бы проект ни компилил! В кокой бы папке ни компилил и каким бы пакетом…

Help me, please!!! smile  smile  smile 


PM MAIL WWW ICQ   Вверх
Dreamer_0x01
Дата 23.10.2006, 00:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


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

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



Так, а в переменных окружения TEMP и TMP случаем нет русскоязычных букв?
(Свойства системы-дополнительно-переменные среды).


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
Rickert
Дата 23.10.2006, 03:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

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



DrGrey, твой компилятор ищет промежуточный файл компиляции не в папке с проектом, а на диске C:\, непосредственно в его корне. Допустим ты создал проект в папке "C:\My Coding\Programms\1". Загляни в туда и ищи там папку "Debug"(если компилишь в дебуге, если в релизе, то соответственно "Release") и смотри: есть ли там файлы *.obj. Если они там, то идём в "Project -> <название проекта> Properties" в главном меню. Там: в General смотрим опцию "Intermediate Directory" - должна быть "Debug", если ты в режиме дебага, и "Release", если ты в режиме релиза; затем там же в опциях ищи "C++\Output Files" свойство "Object file name" - должно быть "$(IntDir)/". Пока проверь это.


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
DrGrey
Дата 25.10.2006, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006
Где: г.Харьков

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



Приветствую!
Простите, что долго не выходил на связь.
Итак, по порядку.
Уважаемый, Dreamer_0x01, я пришел к выводу, что Вы близки к истине и причина проблемы связана с переменными окружения, но не с кириллицей (ниже скажу почему).

Если Вы имели ввиду переменные среды пользователя, то тут ситуация такая:
TEMP=%USERPROFILE%\Local Settings\Temp
TMP=%USERPROFILE%\Local Settings\Temp

Если системные переменные, то:
TEMP=%SystemRoot%\TEMP
TMP=%SystemRoot%\TEMP

Продолжение ниже…


Уважаемый, Rickert, меня не покидает мысль о том что и Ваша версия имеет все шансы стать Джек-потом, но пока в указанных Вами местах проблем не обнаружено (все выглядит так как Вы сказали). Надеюсь, на дальнейшую поддержку и буду признателен за любой совет.


Теперь о главном (о моих новых догадках и проблемах).

Немного истории…
У меня стоял Borland C++ v5.02, потом я поставил Microsoft Visual C++ 6.0 Enterprise Edition (не удаляя, работающий до сих пор, Borland) и Visual не заработал. Затем, ничего не удаляя, я поставил Microsoft Visual Studio .NET 2003 в отдельный каталог (C:\MVSNET23\) в корне диска С:, но и он не пашет.

Догадки…

Среди переменных среды пользователя я нашел также такие:
Include= C:\MVSNET23\SDK\v1.1\include\;C:\Program Files\Microsoft Visual Studio\VC98\atl\include;C:\Program Files\Microsoft Visual Studio\VC98\mfc\include;C:\Program Files\Microsoft Visual Studio\VC98\include
lib= C:\MVSNET23\SDK\v1.1\Lib\;C:\Program Files\Microsoft Visual Studio\VC98\mfc\lib;C:\Program Files\Microsoft Visual Studio\VC98\lib
MSDevDir= C:\Program Files\Microsoft Visual Studio\Common\MSDev98
Path= C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin;C:\Program Files\Microsoft Visual Studio\Common\Tools;C:\Program Files\Microsoft Visual Studio\VC98\bin;C:\Program Files\Borland\BC5\BIN;

А среди системных такие:
INCLUDE= C:\MVSNET23\SDK\v1.1\include\
LIB= C:\MVSNET23\SDK\v1.1\Lib\
VS71COMNTOOLS= C:\MVSNET23\Common7\Tools\

При этом файл AUTOEXEC.BAT содержит следующее:
@echo off
set path=%path%;C:\Program Files\BORLAND\BC5\BIN;C:\Program Files\BORLAND\BC5\LIB;C:\Tasm
set include=C:\Program Files\BORLAND\BC5\INCLUDE
set lib=C:\Program Files\BORLAND\BC5\LIB
set link=C:\Program Files\BORLAND\BC5\BIN

Вопрос – не в этой ли путанице проблема?

Подскажите, пожалуйста, где можно почитать о переменных окружения (у меня с этим очень слабенькоsmile smile )?

Проблема…
Теперь я не могу найти как удалить Microsoft Visual C++ 6.0 да и Visual Studio .NET 2003 тоже! Я просто болел недавно smile )


P.S. Помогите, кто чем может!!! smile  smile  smile 

PM MAIL WWW ICQ   Вверх
Dreamer_0x01
Дата 25.10.2006, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


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

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



Попробуйте переменные окружения TEMP и TMP выставить четко в виде какого-то пути (например TMP=c:\TEMP\TMP).
Потому что %USERPROFILE% в этих переменных даст вам что-то вида "C:\Document And Settings\Вася Пупкин".


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
DrGrey
Дата 25.10.2006, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006
Где: г.Харьков

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



Я забыл сказать, что указанные выше значения видны в окне изменения значений (появляющемся при двойном щелчке на переменной), а в окне просмотра указано следующее:

Переменные среды пользователя:
TEMP=C:\Documents and Settings\Main\Local Settings\Temp
TMP=C:\Documents and Settings\Main\Local Settings\Temp

Системные переменные:
TEMP=C:\WINDOWS\Temp
TMP=C:\WINDOWS\Temp

На всякий случай сменил – по нулям!

P.S. Да, забыл сказать, при компиляции (но не билде) Visual C++ 6.0 начал выдавать следующее:
Код

c:\tp\t\t.cpp(4) : fatal error C1083: Cannot open precompiled header file: 'Debug/t.pch': No such file or directory
Error executing cl.exe.


А при билде снова:
Код

LINK : fatal error LNK1104: cannot open file "C:\Program.obj"
Error executing link.exe.

PM MAIL WWW ICQ   Вверх
Dreamer_0x01
Дата 27.10.2006, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


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

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



Так, насчет файла pch.
Попробуй:
1. удалить его. Не бойся, он создастся снова.
2. В свой код первой строкой добавить запись вида #unclude "stdafx.h". Если она там есть, то наоборот, скомпилировать без нее.
3. в настройках компиляции попробовать убрать что-то вида "создавать файл препроцессора pch", дословно не помню, как там называется, так как сижу за чужим компом и студии тут нету, но что-то подобное там есть.

И вопрос еще - так происходит при компиляции абсолютно любого проекта? Иными словами, проверку надо начинать с абсолютно голого проекта, состоящего из минимума файлов и только функции main().

И вопрос еще - если не пытаться строить проект сразу в одно действие, а компилировать каждый файл отдельно, он компилируется, или тоже чего-то не находит?


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
doomik
Дата 27.10.2006, 08:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Одинокий волк
**


Профиль
Группа: Участник
Сообщений: 360
Регистрация: 25.10.2005
Где: #vingrad

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



Цитата

c:\tp\t\t.cpp(4) : fatal error C1083: Cannot open precompiled header file: 'Debug/t.pch': No such file or directory
Error executing cl.exe


Помну такую ошибку, у меня она тоже была, в опциях надо отключить "Using precompiled headers" кажется так называется, к сожелению у меня Microsoft Visual C++ не уcтановлен точно сказать не могу.

Tools --> Options --> [не помну] --> Будет можна выбрать из списка, выбираеш C\C++ --> И ставиш галку на "Not using precompiled headers" 
Примерно так, но это из моей памяти  smile 

Это сообщение отредактировал(а) doomik - 27.10.2006, 08:22


--------------------
"Единственный способ изучать новый язык программирования - писать на нем 
программы." 
- Brian Kernighan

Remember, st1ng3r 
/server irc.ircline.ru /j #vingrad
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




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


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

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