Mam zamiar przenieść projekt C, który był dla systemu Unix do okien. Do tej pory mogłem go skompilować, ale nie zbudować. Problem jestem coraz to niektóre z funkcji, które są zadeklarowane w plikach nagłówkowych są zdefiniowane w yacc files.so otrzymuję następujące błędy:yacc i bizon w studiu graficznym
error LNK2001: unresolved external symbol function_name
dodaję .y i dł pliki katalog źródłowy projektu. Myślę, że nie mogłem przesłać plików YACC do wersji Windows lub robię coś głupiego. Przeszukuję je w Internecie, ale nie mogę uzyskać odpowiedniego samouczka. Czy możesz mi powiedzieć:
- Jak mogę dodać pliki .y lub .l do projektu.
- Jak mogę uczynić te pliki kompatybilnymi z oknami?
- Jak mogę połączyć je z innymi plikami obiektowymi.
EDIT
Próbowałem ze zmianą na .l
pliki w .yy.c
plików przy użyciu flex.exe
.Following jest komenda na to
c:\> flex.exe name.l
Przypuśćmy, że zarówno flex.exe i nazwisko. Jestem w C;>
. I wczytałem te wszystkie pliki .l .y(previously present for parsing in unix system) .yy.c(corrsonding yacc file for windows)
do rozwiązania poprzednio istniejącego projektu. Raz skompilować, otrzymuję następujące
Can't read the header file parserheaderfile.h
Jest to plik nagłówka, który musi być generowane przez bison
w systemie UNIX . Więc myślę, że nie jestem w stanie zrobić bison
kompatybilny z windows
. Więc proszę mi go, jak mogę rozwiązać ten problem?
Z góry dziękuję.
Czy jest to coś, co musisz ustawić przy każdym uruchomieniu nowego projektu za pomocą f/lex i/lub bison/yacc? Czy możesz ustawić go raz, a VS zapamięta ustawienia na zawsze i zawsze? Czy są też jakieś zalecane IDE do używania tych bibliotek? Robienie rzeczy z wiersza poleceń może czasami być denerwujące, kiedy musisz uruchomić f/lex i/lub bison/yacc, zanim będziesz mógł skompilować się z gcc. – velocirabbit
@velocirabbit To ustawienie specyficzne dla projektu. Musisz więc skonfigurować go dla każdego pliku .l lub .y. – Rudi