вторник, 14 апреля 2015 г.

ati-drivers-15.3 linux kernel 4.

Два офигенных релиза и такие же новости при установке.




  MODPOST 1 modules 

FATAL: modpost: GPL-incompatible module fglrx.ko uses GPL-only symbol 'cpu_tlbstate' 
scripts/Makefile.modpost:90: recipe for target '__modpost' failed
Простой путь пирата - обход gpl путем  epatch-user:

Quasar linux # mkdir -p /etc/portage/patches/sys-kernel/gentoo-sources/

вставляем patch:

Quasar linux # cat /etc/portage/patches/sys-kernel/gentoo-sources/gentoo-sources-4.0-no-GPL.patch  


--- arch/x86/mm/init.c  2015-04-13 01:12:50.000000000 +0300 
+++ arch/x86/mm/init.c  2015-04-14 18:01:22.963651359 +0300 @@ -744,7 +744,7 @@
#endif
       .cr4 = ~0UL,    /* fail hard if we screw up cr4 shadow initialization */
};
-EXPORT_SYMBOL_GPL(cpu_tlbstate);
+EXPORT_SYMBOL(cpu_tlbstate);

void update_cache_mode_entry(unsigned entry, enum page_cache_mode cache)
{

Устанавливаем ядро смотрим сроку с патчем:

Quasar linux # emerge sys-kernel/gentoo-sources --ignore-default-opts --jobs=1 --quiet-build=n


...
* Applying user patches from /etc/portage/patches/sys-kernel/gentoo-sources ... 
*   gentoo-sources-4.0-no-GPL.patch ...    


Пересобираем ядро:
Quasar linux # 
make oldconfig && make && make modules_install

теперь можно устанавливать сам frglx
2  патча [1 2]  для измененных имен функций и ебилд с внесенными патчами.
Quasar linux # emerge x11-drivers/ati-drivers  --ignore-default-opts --jobs=1 --quiet-build=n

...
* Applying ati-drivers-15.1-kernel-4.0.patch ...                                                                                                                     [ ok ] 
* Applying ati-drivers-15.1-kernel-4.0.2.patch ...                                                                                                                   ok ]


>>> Installing (1 of 1x11-drivers/ati-drivers-15.1-r1::aweal







UPD1:

на 30.06.15 рабочий патч: https://bugs.gentoo.org/show_bug.cgi?id=548118





понедельник, 13 апреля 2015 г.

Дрова от модема скачай с сайта производителя.


root # emerge -vat dev-util/cmake

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!


[nomerge       ] dev-util/cmake-3.2.1::gentoo  USE="ncurses qt5 -doc -emacs -qt4 {-test}" 
[ebuild  N     ]  dev-libs/jsoncpp-0.10.1::gentoo  USE="-doc {-test}" 0 KiB
[ebuild  N     ]   dev-util/cmake-3.2.1::gentoo  USE="ncurses qt5 -doc -emacs -qt4 {-test}" 0 KiB

Total: 2 packages (2 new), Size of downloads: 0 KiB

 * Error: circular dependencies:

(dev-util/cmake-3.2.1:0/0::gentoo, ebuild scheduled for merge) depends on
 (dev-libs/jsoncpp-0.10.1:0/0::gentoo, ebuild scheduled for merge) (buildtime)
  (dev-util/cmake-3.2.1:0/0::gentoo, ebuild scheduled for merge) (buildtime)

  * Note that circular dependencies can often be avoided by temporarily
  * disabling USE flags that trigger optional dependencies.

и jsoncpp без cmake не установить.


в ебилде убираем зависимость от jsoncpp и 
        >=dev-libs/jsoncpp-0.6.0_rc2

втравляем  в src_configure() {

-DCMAKE_USE_SYSTEM_LIBRARY_JSONCPP=OFF


сам ебилд


root # emerge cmake jsoncpp