Missing prototype - LabWindows 8.0.1

Jeśli masz problem z LabWindows napisz, postaramy się pomóc.
esluk
Posty: 5
Rejestracja: 20 paź 2008 18:31
Lokalizacja: Dolny Śląsk
Kontakt:

Missing prototype - LabWindows 8.0.1

Post autor: esluk »

Witam,

Piszę program z użyciem różnych sygnałów (SineWave, TriangleWave, SquareWave), i podczas kompilacji programu wyrzuca mi błędy "Missing prototype". Wygląda jakby funkcje których chcę użyć nie były skompilowane.

Moje zadeklarowane biblioteki to:
#include <utility.h>
#include <ansi_c.h>
#include <analysis.h>
#include <cvirte.h>
#include <userint.h>
#include "Program.h>


W internecie znalazłem sposób rozwiązania mójego błądu - odznaczenie "Require function prototypes" w Options-->Build options -->Require function prototypes...lecz przy kompilacji wyrzuca kolejne błędy:

"Undefined symbol '_TriangleWave' referenced in "Program.c"
"Undefined symbol '_SquareWave' referenced in "Program.c"
"Undefined symbol '_SineWave' referenced in "Program.c"

Czy taka deklaracja sygnału jest dobra?

--------------------------------------------------------------

double amplituda, czestotliwosc, phase, tablica[10];
int n;
n=10;

SineWave (n, amplituda, czestotliwosc, phase, tablica);

--------------------------------------------------------------

Co powinienem zrobić aby skompilował mi się program?

Pozdrawiam esluk
ZbychoZbych
Posty: 12
Rejestracja: 24 lip 2007 00:00

Missing prototype - LabWindows 8.0.1

Post autor: ZbychoZbych »

Ja używam CVI 9.0, dodaj: #include <analysis.h>

SineWave wymaga przekazania pointera, wiec:
SineWave (n, amplituda, czestotliwosc, &phase, tablica);
Zbyszek
esluk
Posty: 5
Rejestracja: 20 paź 2008 18:31
Lokalizacja: Dolny Śląsk
Kontakt:

Re: Missing prototype - LabWindows 8.0.1

Post autor: esluk »

ZbychoZbych pisze:Ja używam CVI 9.0,
dodaj:
#include <analysis.h>
Właśnie analysis.h miałem dodane. Może trzeba dodać jakąś inną bibliotekę?
Awatar użytkownika
maciekwp
Posty: 46
Rejestracja: 03 kwie 2007 00:00
Wersja środowiska: Nie mam LabVIEW
Lokalizacja: Warszawa

Re: Missing prototype - LabWindows 8.0.1

Post autor: maciekwp »

Sprawdź jaką masz wersję (licencję) LabWindowsa. Wersja podstawowa "Base Package" nie zawiera m.in. bibliotek "Signal generation" i "Signal processing". Być może nie działa bo nie ma prawa działać....

Patrz link:
http://www.ni.com/lwcvi/compare.htm
w palcu siła...
esluk
Posty: 5
Rejestracja: 20 paź 2008 18:31
Lokalizacja: Dolny Śląsk
Kontakt:

Re: Missing prototype - LabWindows 8.0.1

Post autor: esluk »

Witam,

Mam wersje demo - wersja darmowa ze strony producenta, z tego co pamiętam 30 lub 60-cio dniowa.

Pozdrawiam
Awatar użytkownika
maciekwp
Posty: 46
Rejestracja: 03 kwie 2007 00:00
Wersja środowiska: Nie mam LabVIEW
Lokalizacja: Warszawa

Missing prototype - LabWindows 8.0.1

Post autor: maciekwp »

W takim razie powinno działać. Co prawda jeśli skopiowałeś kod z pliku *.c to jest błąd.

Zamiast
#include "Program.h>
powinno być
#include "Program.h"

ale nie sądzę żeby w tym właśnie był problem. Kompilator sam proponuje dodanie właściwych dyrektyw "include" jeśli wykryje użycie jakiejś funkcji bibliotecznej.
Proponuję prześledzić dokładnie kod być może to tylko literówka ale jeśli nie to bez całego kodu trudno cokolwiek więcej powiedzieć.
w palcu siła...
esluk
Posty: 5
Rejestracja: 20 paź 2008 18:31
Lokalizacja: Dolny Śląsk
Kontakt:

Re: Missing prototype - LabWindows 8.0.1

Post autor: esluk »

Błąd popełniłem wklejając kawałek kodu na forum. Faktycznie jest jak powinno być (#include "Program.h").

Niestety nadal nie wiem co jest przyczyną wyrzucenia błędów, przy każdym z trzech zamieszczanych sygnałów. O dziwo z czwartym (WhiteNoise) nie ma problemów. Nie jestem ekspertem co do c++, ale żadnych większych błędów w kodzie programu nie widzę.

Kod programu załączam w załączniku. Wszystkie uwagi mile widziane :)

pozdrawiam eS.
esluk
Posty: 5
Rejestracja: 20 paź 2008 18:31
Lokalizacja: Dolny Śląsk
Kontakt:

Re: Missing prototype - LabWindows 8.0.1

Post autor: esluk »

Witam,

Problem rozwiązany - pomógł mi mój wykładowca. Faktycznie ściągając LabWindows'a zassałem wersję BASE, z ograniczeniami na sygnały. Po ściągnięciu wersji FDS wszystko ładnie śmiga. :D

Pozdrawiam esluk
ODPOWIEDZ