[Eğer genel derleyici uyarısı "expected declaration specifiers..." için buradaysanız ve vmware ile ilgilenmiyorsanız, sizi şu sayfaya alayım.]

[ If you are here for the general compiler error of ""expected declaration specifiers..." and not about installing vmware on ubuntu, click here ]
[English follows.]


Ubuntu 7.04 çıktı, ben de güncelleme yöneticisine uyarak yükselteyim dedim. VMware yükseltme sonrası çalışmıyordu, tekrar kuruluma başladım. VMware'in vmmon adlı modulü hata verip derlenmedi. Hatamız tam olarak şöyle:

Using 2.6.x kernel build system.
make: Entering directory /tmp/vmware-config2/vmmon-only'<br />make -C /usr/src/linux-headers-2.6.20-15-386/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules<br />make[1]: Entering directory/usr/src/linux-headers-2.6.20-15-386'
CC [M] /tmp/vmware-config2/vmmon-only/linux/driver.o
In file included from /tmp/vmware-config2/vmmon-only/linux/driver.c:80:
/tmp/vmware-config2/vmmon-only/./include/compat_kernel.h:21: error: expected declaration specifiers or ‘...’ before ‘compat_exit’
/tmp/vmware-config2/vmmon-only/./include/compat_kernel.h:21: error: expected declaration specifiers or ‘...’ before ‘exit_code’
/tmp/vmware-config2/vmmon-only/./include/compat_kernel.h:21: warning: type defaults to ‘int’ in declaration of ‘syscall1’
make[2]: [/tmp/vmware-config2/vmmon-only/linux/driver.o] Error 1
make[1]:
[_module
/tmp/vmware-config2/vmmon-only] Error 2
make[1]: Leaving directory /usr/src/linux-headers-2.6.20-15-386'<br />make: *** [vmmon.ko] Error 2<br />make: Leaving directory/tmp/vmware-config2/vmmon-only'
Unable to build the vmmon module.


Derlenmesini sağlamak için vmmon modülündeki küçük bir hatayı temizlemek gerekiyor. Şöyle ki:

VMware kaynak kodlarının olduğu klasöre ve vmmon modül dizinine gidiyoruz.

# cd /usr/lib/vmware/modules/source

Tar dosyasını açıyoruz:

# tar xf vmmon.tar

Daha sonra sorunlu bölümü değiştiriyoruz:

# sudo gvim vmmon-only/include/compat_kernel.h

21. Satırdaki

static inline _syscall1(int, compat_exit, int, exit_code);

bölümünü

#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19)
static inline _syscall1(int, compat_exit, int, exit_code);
#endif

olarak değiştirdikten sonra vmmon.tar dosyamızı tekrar oluşturuyoruz

# sudo tar cvf vmmon.tar vmmon-only/
# sudo rm -rf vmmon-only/

ve

# /usr/bin/vmware-config.pl

komutu ile VMware kurulumunda kaldığımız yerden devam ediyoruz.

--

English:

I recently upgraded to Ubuntu 7.04. I bumped into some problems with the VMware Server Console installation. The error I received when installing is during the vmmon installation. Error message is given above, in the Turkish part of my article. To fix the issue, simply find the vmmon source code directory (most probably /usr/lib/vmware/modules/source ) then add the above code to line 21. After that, simply re-tar the file and run vmware-config.pl to continue the installation. Just follow what I have done in the above article.

Hope this helps someone.

Cheers.