Visual Studio na maszynie wirtualnej i problemy z linkerem przy kompilacji w trybie debug

Odpowiedz Nowy wątek
2011-07-31 10:34
0

Zainstalowałem VMware Workstation w wersji 7.1.4, stworzyłem maszynę wirtualną, na której zainstalowałem Windowsa XP x86 PL z SP3, a następnie zainstalowałem Visual Studio 2010 Ultimate. Host działa pod kontrolą Windows 7 Professional x86-64 PL z SP1. W obu systemach zainstalowane są wszelkiej maści łatki z Windows Update. Dodatkowo na hoście działa Norton Internet Security 2010. No to teraz do rzeczy:
Problem występuje w trakcie kompilacji projektu w C++ w trybie debug. Linker zgłasza błąd
LINK : fatal error LNK1104: cannot open file Y:\C++\.....\Test.exe
Projekt znajduje się na partycji hosta, do której wirtualka ma dostęp przez foldery udostępnione w VMware, ale sam dysk jest zmapowany ręcznie. Ustawiłem użytkownikowi możliwość modyfikacji odpowiednich folderów, próbowałem też na koncie administratora, ale bez efektu. Gdy kompiluję w wersji release, to wszystko przebiega poprawnie. Tak samo, gdy kompiluję projekty w C#, to też wszystko jest ok (zarówno w debug, jak i w release). Szukałem informacji w sieci i dowiedziałem się, że problemy może sprawiać antywirus, niestety nawet po wyłączeniu wszelkich usług i zatrzymaniu całego programu kompilacja nie kończy się poprawnie. Stąd moje pytania:

  1. Czy zapomniałem o ustawieniu jakichś praw dostępu do plików? Zaznaczam, że kompilacja przebiega pomyślnie do momentu utworzenia pliku exe, wszystkie inne pliki generują się bez żadnych problemów, do tego w wersji release (a także projekty w C#) też kompilują się poprawnie.
  2. Czy to możliwe, że Norton coś blokuje? Jeżeli tak, to jak go na chwilę wyłączyć na amen?

Pozostało 580 znaków

2011-07-31 11:09
0

Przyjmijmy, że ścieżka, pod którą znajduje się folder z projektem, to Y:\C++\Projekty\MojProjekt\. Przy kompilacji w wersji release plik wykonywalny pojawia się najprawdopodobniej tutaj:
Y:\C++\Projekty\MojProjekt\Release\Test.exe
A w przypadku Debug powinno być tutaj:
Y:\C++\Projekty\MojProjekt\Debug\Test.exe
Warto byłoby sprawdzić, czy ten folder Debug istnieje i czy ma uprawnienia do zapisu.

Co do tymczasowego wyłączenia Nortona: http://service1.symantec.com/[...]ip.nsf/docid/2003071515220236


Not Found
The requested URL /wypasiona_sygnaturka.txt was not found in this brain.
-----
Human/1.0.00 (Earth) Server at Poland Port 65535

Pozostało 580 znaków

2011-07-31 11:36
0
mnbvcX napisał(a)

Warto byłoby sprawdzić, czy ten folder Debug istnieje i czy ma uprawnienia do zapisu.

Istnieje, ma uprawnienia. W trakcie kompilacji tworzy się tam plik Test.pdb, więc chyba z uprawnieniami jest wszystko okej.

mnbvcX napisał(a)

Co do tymczasowego wyłączenia Nortona: http://service1.symantec.com/[...]ip.nsf/docid/2003071515220236

Próbowałem i niestety nie pomaga.

Pozostało 580 znaków

2011-07-31 16:30
0

Visual Studio chyba nie bardzo chce pracować na udziałach sieciowych.


"HUMAN BEINGS MAKE LIFE SO INTERESTING. DO YOU KNOW, THAT IN A UNIVERSE SO FULL OF WONDERS, THEY HAVE MANAGED TO INVENT BOREDOM."

Pozostało 580 znaków

2011-07-31 17:54
0

A da się to jakoś obejść inaczej, niż kopiując projekt na dysk maszyny wirtualnej? Przeinstalowałem Visuala, odinstalowałem Nortona i nic nie pomogło. Najbardziej dziwi mnie fakt, że wersja release oraz projekty C# kompilują się bez problemu.

Pozostało 580 znaków

2011-08-01 17:25
0

Znalazłem "obejście", ale z nim też jest problem. Na hoście udostępniłem folder z projektem, a następnie w wirtualce otworzyłem ten projekt łącząc się po adresie IP (czyli ścieżka do projektu to było coś w stylu \192.168.1.2\C++\Test). Teraz kompilacja przebiega bez problemu. Problem jest w tym, że nie mogę nadpisać plików, bo system informuje mnie, że plik jest używany przez inny proces. Taki sam komunikat wyskakuje, gdy chcę edytować plik z hosta. Da się z tym coś zrobić?

Bo to pracy siecowej w VS służy Team Server. W końcu tu chodzi o pieniądze ;) - O_o 2011-08-02 07:19

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0