# 2.6.7 and svgalib (module svgalib_helper)[SOLVED]

## Lucho[FLCL]

I like to use svgalib as output to mplayer (it's fast)....Under 2.6.4-ck2 I could use it by loading the module svgalib_helper.

Now that I compiled Vanilla 2.6.7, I can't find svgalib_helper.ko (it was obviously not compiled as module), mplayer -vo svga doesn't work (so it isn't inside the kernel)...and I can't find it's source inside the sourcetree....is it anywhere to be found in 2.6.7???

Mosprobe obviously doesn't work:

```
lucho-gentoo kernel # modprobe svgalib_helper

FATAL: Module svgalib_helper not found.

```

Last edited by Lucho[FLCL] on Sun Jul 11, 2004 3:05 pm; edited 1 time in total

----------

## Jazz

Damn i was lookin for that one too.. i wanted to try that out for video output in framebuffer without X,. i got the vesafb hack with which i get 85Hz in framebuffer mode, ideal for playing videos..

But i cant get the svga module.. i use 2.6.7-rc3-love2 any ideas ?

BYe,

Jazz

----------

## Lucho[FLCL]

Bump...  :Crying or Very sad: 

----------

## Lepaca Kliffoth

Hey guys the svga_helper isn't part of the kernel... why would the kernel guys maintain something like that... well however the module spurce is in the svgalib source tree, so just re-emerge the library or go see if there's a separate archive for the module sources on the svgalib site.

----------

## Jazz

 *Lepaca Kliffoth wrote:*   

> Hey guys the svga_helper isn't part of the kernel... why would the kernel guys maintain something like that... well however the module spurce is in the svgalib source tree, so just re-emerge the library or go see if there's a separate archive for the module sources on the svgalib site.

 

Re emerge what library ?

----------

## silverter

 *Jazz wrote:*   

>  *Lepaca Kliffoth wrote:*   Hey guys the svga_helper isn't part of the kernel... why would the kernel guys maintain something like that... well however the module spurce is in the svgalib source tree, so just re-emerge the library or go see if there's a separate archive for the module sources on the svgalib site. 
> 
> Re emerge what library ?

 

media-libs/svgalib-1.9.18-r1 I guess !

----------

## Lepaca Kliffoth

Sorry guys I was so NOT precise. The library is svgalib, just do emerge svgalib and it should work. I also realized it was quite stupid to say "why would the kernel guys maintain something like that". When I'm in a rush lots of crap flies out of my mouth heh. However it sucks to re-emerge the whole library every time you change your kernel, they really should put the module in a separate package (maybe it isn't possible?). Cha!

----------

## Jazz

Ok i emerged everything needed, and i tried modprobing it but the error i get is 

```
FATAL: Error inserting svgalib_helper (/lib/modules/2.6.7-rc3-love2/kernel/misc/svgalib_helper.ko): Invalid module format
```

Anyone know why ?

Bye,

Jazz

----------

## Lucho[FLCL]

Reemerging svgalib doesn't work.

The reason is: while emerging, portage checks the /usr/src/linux symlink, because it needs /usr/src/linux/misc(I think)/autoconf.h. And this .h doesn't exist in 2.6.7 (even that directory that I named "misc" doesn't exist). That is the base reason of our problem...  :Crying or Very sad: 

----------

## Lucho[FLCL]

Bump + I've seen 4 threads concerning the same problem in the past 2 days...I think we should ask the svgalib people directly...

----------

## Lucho[FLCL]

10 threads on the same problem but still no solution....does anyone know where should we shout abput this? bugs.gentoo.org? www.kernel.org? www.svgalib.org?  :Crying or Very sad: 

----------

## z35

... to not work when they would like to be used?   :Crying or Very sad:   :Wink: 

----------

## nick_downing

A related question, can anyone help?

In my gmplayer "properties" menu, I only have the following 4 drivers available:

  xv / x11 / dfbmga / xvidix

Is svgalib supposed to appear here?  I have "svga" in my USE flags, and I've re-emerged mplayer since then.  I have svgalib on my system, though I didn't request it, so I guess it's been installed as a dependency of something, maybe mplayer?  I can insmod svgalib_helper without problems, but I'm using a 2.6.6 kernel, so it looks as if I might encounter the problems described above??

cheers,

Nick

----------

## Lucho[FLCL]

Bump

still no clue...

----------

## Drexlor

if you look here: http://www.arava.co.il/matan/svgalib/ there is source for a version that works with 2.6.*

I dont know how to use the source, if anyone does, can you help? this will probably solve our problem.

----------

## Drexlor

Well, ive been tinkering around, and havent accomplished much:

Heres the README:

 *Quote:*   

> This is an _alpha_ release. Don't use it if you are not interested in
> 
> svgalib development.
> 
> Program using svgalib 1.9.0 or later don't need root provoleges (suid
> ...

 

So i went to the svgalib_helper directory:

 *Quote:*   

> # ls
> 
> Makefile      displaystart.c  i810.c  interrupt.c  kernel26compat.h  svgalib_helper.h
> 
> Makefile.alt  displaystart.h  i810.h  interrupt.h  main.c            virtual.c
> ...

 

And did make install:

 *Quote:*   

> 
> 
> # make install
> 
> rm -f /dev/svga /dev/svga?
> ...

 

Without the install, and just a normal make, i get this:

 *Quote:*   

> 
> 
> # make
> 
> make -C /lib/modules/2.6.7/build SUBDIRS=/home/ncross/downloads/svga/svgalib-1.9.19/kernel/svgalib_helper modules
> ...

 

does that help anyone?

[edit]

The error above with the build so such file or directory is what happens when i do the normal emerge svgalib.

----------

## Lucho[FLCL]

 *Drexlor wrote:*   

> if you look here: http://www.arava.co.il/matan/svgalib/ there is source for a version that works with 2.6.*
> 
> I dont know how to use the source, if anyone does, can you help? this will probably solve our problem.

 

The versions in portage work fine with 2.6.4, but not with 2.6.5 onwards...it's not a problem with 2.6.*.

And the problem, as I have already said, is because there is a missing directory in the kernel sources in, for example, 2.6.7.

----------

## Drexlor

yeah, i understand that, but this is from the description on the site:

 *Quote:*   

> 
> 
> 1.9.19 - again, mainly fixes to the build system. The kernel now works with kernel 2.6, and will hopefully build out of the box on any distribution/kernel. Please report any build failures. New ati and nVidia chipsets should work. Digital output of those (DVI, or internal notebook) still not supported.

 

If you look at the emerge version, its only 1.9.18, so if the fixes were in the builds, I'm eager to try it, did you change your kernel? or are you sticking it out?

----------

## Lucho[FLCL]

I'll try with 1.9.19. If it doesn't work, I'll file a bug.

----------

## Lucho[FLCL]

 *Lucho[FLCL] wrote:*   

> I'll try with 1.9.19. If it doesn't work, I'll file a bug.

 

It didn't work. The emerge finishes, but the kernel module isn't built   :Crying or Very sad:   :Crying or Very sad: 

HEEEEEEEEEEEEEEEEEEELLPPPP

----------

## teilo

autoconf.h is created when you do a make in your linux src tree, and it is definitely still a part of the 2.6 series, including 2.6.7, which I am running now.

A version of it is installed in /usr/include/linux when you merge a masked 2.6.x version of linux-headers. However, there is some wierdness that happens when you merge a 2.6 series linux-headers. You need to do it twice. For whatever reason, certain header files will be missing unless you merge linux-headers a second time.

I ran into this problem when I built xorg-x11, which also requires autoconf.h.

----------

## Lucho[FLCL]

 *teilo wrote:*   

> autoconf.h is created when you do a make in your linux src tree, and it is definitely still a part of the 2.6 series, including 2.6.7, which I am running now.
> 
> A version of it is installed in /usr/include/linux when you merge a masked 2.6.x version of linux-headers. However, there is some wierdness that happens when you merge a 2.6 series linux-headers. You need to do it twice. For whatever reason, certain header files will be missing unless you merge linux-headers a second time.
> 
> I ran into this problem when I built xorg-x11, which also requires autoconf.h.

 

Priceless help!!! I'll post feedback...

----------

## Lucho[FLCL]

Well, it worked   :Razz: 

When I compiled the kernel, I deleted the sources to save space. When I saw that svgalib required the kernel sources, I re-downloaded it, and that's the reason why autoconf.h didn't exist.

I "make"'d the kernel again, and then "emerge svgalib" worked as it was supposed to.

Thank you very much to all the people who tried to help me, and specially to teilo!!!!

----------

## SmartUser

Hey there.....

Glad you found the solution, cuz im having the same problem emerging kde,  but i cant understand it...

You say "emerge the linux headers twice", and as a BIG begginer, i dont know what does that mean.....

Can any1 tell me what to do...and what does that mean ??...

THX  a lot  :Rolling Eyes: 

----------

## Lucho[FLCL]

 *SmartUser wrote:*   

> Hey there.....
> 
> Glad you found the solution, cuz im having the same problem emerging kde,  but i cant understand it...
> 
> You say "emerge the linux headers twice", and as a BIG begginer, i dont know what does that mean.....
> ...

 

He meant to re-download (or emerge again) the kernel sources that you are using, and type "make" while being in it's directory.

kde is asking for the kernel sources??? Are you sure??? I don't think so..

----------

## madripper

this thread got my svgalib to work.  the trick was "emerge linux-headers" and as soon as that was done, i did it again.  then it was "emerge svgalib" and finally:  "mplayer -vo svga" worked!!!  -ben!

----------

## SmartUser

Hey, thnx...for the interpretation....

Well, hes not asking me for the kernel sources....

KDE is trying to install svgalib-1.9.17-r3, dont ask me why...but im having the bug with the kernel 2.6.x.

So, im going to try that thing ....thnx a lot...

c ya   :Shocked: 

----------

## z35

There were some problems I had while I was compiling the code, It was fixed with:

```
 FEATURES="-userpriv -sandbox" emerge svgalib 
```

I do not exactly know what it all does, but it works now....

----------

## jad

Check where /usr/src/linux points to. I had it llinked to linux-2.6.6-rc1 and was unable to emerge svgalib. Changing the link to linux-2.6.7 allowed svgalib to complie.

----------

## Palhoto

 *teilo wrote:*   

> autoconf.h is created when you do a make in your linux src tree, and it is definitely still a part of the 2.6 series, including 2.6.7, which I am running now.
> 
> A version of it is installed in /usr/include/linux when you merge a masked 2.6.x version of linux-headers. However, there is some wierdness that happens when you merge a 2.6 series linux-headers. You need to do it twice. For whatever reason, certain header files will be missing unless you merge linux-headers a second time.
> 
> I ran into this problem when I built xorg-x11, which also requires autoconf.h.

 

I have the 2.6.9-mm1 kernel. I reemerged the linux26-headers-2.6.8.1-r1, recompiled the kernel, reemerged svgalib-1.9.19-r1 and when I try to modprobe svgalib_helper, I get the following error:

```
# modprobe svgalib_helper

FATAL: Error inserting svgalib_helper (/lib/modules/2.6.9-mm1/kernel/misc/svgalib_helper.ko): Unknown symbol in module, or unknown parameter (see dmesg)

# dmesg

Linux version 2.6.9-mm1 (gcc version 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)) #3 Wed Nov 3 17:31:44 WET 2004

[...]

svgalib_helper: Unknown symbol devfs_mk_symlink

svgalib_helper: Unknown symbol pci_find_class
```

After looking at this thread I tried reemerging nvidia-kernel and svgalib (a long shot), didn't work.

Then I discovered a related thread that had similar errors (unknown symbols), but for NVidia drivers.

"Problem was pci_find_class switched to pci_get_class"

Did symbol devfs_mk_symlink also change in the last kernel versions?

I suppose the solution is to patch the svgalib sources for the new kernels that have changed symbol names. If someone has the same problem, let us know. I'll get back on this in a day or two.

Thanks,

----------

