Skocz do zawartości

Problem Podczas Kompilacji Sterowników


DePrimota

Rekomendowane odpowiedzi

Witam Mój problem polega na tym iz podczas kompilacji poleceniem make install ze zródla wyskakuje blad.

 

make install
./set_revision.sh
make -C /lib/modules/3.3.2-6.fc16.x86_64/build CONFIG_LINE6_USB=m SUBDIRS=/root/line6usb modules
make[1]: Entering directory `/usr/src/kernels/3.3.2-6.fc16.x86_64'
 CC [M]  /root/line6usb/audio.o
/root/line6usb/audio.c: In function ‘line6_init_audio’:
/root/line6usb/audio.c:30:57: error: ‘THIS_MODULE’ undeclared (first use in this function)
/root/line6usb/audio.c:30:57: note: each undeclared identifier is reported only once for each function it appears in
make[2]: *** [/root/line6usb/audio.o] Error 1
make[1]: *** [_module_/root/line6usb] Error 2
make[1]: Leaving directory `/usr/src/kernels/3.3.2-6.fc16.x86_64'
make: *** [default] Error 2 

dolaczam takze kod pliku w którym chyba wystepuje problem:

 

#include <sound/core.h="">
#include <sound/initval.h="">

#include "driver.h"
#include "audio.h"

static int line6_index[sNDRV_CARDS] = SNDRV_DEFAULT_IDX;
static char *line6_id[sNDRV_CARDS] = SNDRV_DEFAULT_STR;

/*
	Initialize the Line6 USB audio system.
*/
int line6_init_audio(struct usb_line6 *line6)
{
	static int dev;
	struct snd_card *card;
	int err;

	err = snd_card_create(line6_index[dev], line6_id[dev], THIS_MODULE, 0,
						  &card);
	if (err < 0)
			return err;


   line6->card = card;

	strcpy(card->id, line6->properties->id);
	strcpy(card->driver, DRIVER_NAME);
	strcpy(card->shortname, line6->properties->name);
	/* longname is 80 chars - see asound.h */
	sprintf(card->longname, "Line6 %s at USB %s", line6->properties->name,
			dev_name(line6->ifcdev));
	return 0;
}

/*
	Register the Line6 USB audio system.
*/
int line6_register_audio(struct usb_line6 *line6)
{
	int err;

	err = snd_card_register(line6->card);
  if (err < 0)
			return err;

	return 0;
}

/*
	Cleanup the Line6 USB audio system.
*/
void line6_cleanup_audio(struct usb_line6 *line6)
{
	struct snd_card *card = line6->card;

	if (card == NULL)
			return;

	snd_card_disconnect(card);
	snd_card_free(card);
	line6->card = NULL;
} 

Wie ktos jak temu zaradzic?

Edytowane przez WalDo
edycja znaczników
  • Downvote 1
Odnośnik do komentarza
Udostępnij na innych stronach

Andrew: Pobralem najnowsza paczke która trzeba skompilowac.

 

Miszcz: Line6 POD Studio UX2

 

Juz sobie poradzilem z tym problemem. Nowe jadro potrzebuje potrzebuje naglówka "#include <linux/export.h>" w pliku "audio.c". Tylko szkoda, ze nie wszystko dziala na tym sterowniku tak jak powinno, pozostaje tylko czekac na finalna wersje.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...