Jump to content

compilare sorgenti bootloader


HackMan85
 Share

14 posts in this topic

Recommended Posts

Ciao a tutti, siccome stò all'incirca da inizio febbraio cioè da quando ho comprato questo mio notebook a cercare di installare correttamente la mia scheda video su un qualsiasi osx senza riuscire oggi ho notato che nel file ati.c nei sorgenti che ho scaricato nella sezione della mia scheda video i subsystem id sono diversi e vorrei provare a cambiarlo per vedere se finalmente riesco a far funzionare questa benedetta scheda

{ 0x6760, 0x04CC1028, CHIP_FAMILY_CAICOS,  "AMD Radeon HD 6490M",    kNull  },
{ 0x6760, 0x165A103C, CHIP_FAMILY_CAICOS,  "AMD Radeon HD 6470M",    kNull  },
{ 0x6760, 0x167D103C, CHIP_FAMILY_CAICOS,  "AMD Radeon HD 6470M",    kNull  },
{ 0x6760, 0x1CB21043, CHIP_FAMILY_CAICOS,  "AMD Radeon HD 6470M",    kNull  },

il mio subsystem id invece è

pcilib: 0000:01:00.0 64-bit device address ignored.
01:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI Seymour XT/PRO [Radeon HD 7400M Series] [1002:6760] (prog-if 00 [VGA controller])
Subsystem: ASUSTeK Computer Inc. Unknown device [[b]1043:2001[/b]]

Ho scaricato i sorgenti 2 volte con il comando diversi casomai qualche novità nella modalità con il terminale

svn co http://forge.voodooprojects.org/svn/chameleon
vn co -r HEAD http://forge.voodooprojects.org/svn/chameleon

seguendo questa guida http://www.insanelymac.com/forum/index.php?showtopic=214871 ma non sò se è vecchiotta e non funziona più bene ma quando dò il comando make mi ritorna questo errore

host-001:Compilare mountain$ cd chameleon
host-001:chameleon mountain$ cd trunk
host-001:trunk mountain$ ls
APPLE_LICENSE  MEMTEST86_LICENSE coding_standards.txt
BLOCKERS  Make.rules  doc
CHANGES   Makefile  i386
CREDITS   README   obj
Cconfig   README.translators package
Chameleon.xcodeproj TODO   sym
GPL_V2_LICENSE  artwork   version
host-001:trunk mountain$ make
[MAKE] config
[CC64] zconf.tab.c
make[1]: md: No such file or directory
make[1]: *** [/users/mountain/Compilare/chameleon/trunk/obj/i386/config/zconf.tab.o64] Error 1
make: *** [/users/mountain/Compilare/chameleon/trunk/.config] Error 2

sbaglio qualcosa?

Link to comment
Share on other sites

Ciao, stai provando a compilare il bootloader su ML, ho ragione? Se si, allora devi prima compilare i pacchetti di "md" perche non fanno piu parte del ML OS.

 

I pacchetti si possono installare utilizzando homebrew http://mxcl.github.com/homebrew/

 

brew install https://raw.github.com/simonair/homebrew/2acd33a1f1ce1493e5fbe0967c24b4eb5ec6db5c/Library/Formula/md.rb

 

P.S Chiedo scusa per il mio italiano.

Link to comment
Share on other sites

grazie della risposta, esatto ho installato mountain lion, se è più facile installo Lion non sono molto bravo con compilazione e programmazione potresti spiegarmi in modo più semplice possibile cosa fare? ho messo questi comandi nel terminale:

iMac-di-mountain:~ mountain$ brew install wget
==> Downloading http://ftpmirror.gnu.org/wget/wget-1.13.4.tar.bz2
######################################################################## 100.0%
==> ./configure --disable-debug --prefix=/usr/local/Cellar/wget/1.13.4 --sysconf
==> make install
/usr/local/Cellar/wget/1.13.4: 7 files, 576K, built in 51 seconds
iMac-di-mountain:~ mountain$ ruby <(curl -fsS https://raw.github.com/mxcl/homebrew/go)
==> This script will install:
/usr/local/bin/brew
/usr/local/Library/Formula/...
/usr/local/Library/Homebrew/...
Press enter to continue
==> Downloading and Installing Homebrew...
==> Installation successful!
You should run `brew doctor' *before* you install anything.
Now type: brew help

Link to comment
Share on other sites

ho scritto il comando "brew doctor" e il risultato era che manca il programma XQuartz-2.7.2 e ho ridato il comando "brew doctor" e il terminale adesso dice che è pronto, ho provato ancora a compilare e la compilazione dura di più ma si blocca ancora, ho dato il comando "make clean" e poi "make" e questo è il risultato:

host-001:trunk mountain$ make
[MAKE] config
[CC64] yesno.c
[CC32] textbox.c
[CC64] textbox.c
[CC32] menubox.c
[CC64] menubox.c
[CC32] checklist.c
[CC64] checklist.c
[CC32] inputbox.c
[CC64] inputbox.c
[LD32] cconfig_32
[LD64] cconfig_64
[LIPO] cconfig
[MAKE] config
================= Making all in i386 =================
[MKDIR] /Users/mountain/compilare/chameleon/trunk/obj/i386/modules
================= Making all in klibc =================
================= Making all in uClibcxx =================
================= Making all in Resolution =================
================= Making all in Keylayout =================
================= Making all in layouts =================
[MKDIR] /Users/mountain/compilare/chameleon/trunk/Keymaps
[MKDIR] /Users/mountain/compilare/chameleon/trunk/obj/i386/util
[CC32] cham-mklayout.c
[CC64] cham-mklayout.c
[LD32] cham-mklayout_32
[LD64] cham-mklayout_64
[LIPO] cham-mklayout
[LAYOUT] Creating keyboard layout: mac-de
[LAYOUT] Creating keyboard layout: mac-es
[LAYOUT] Creating keyboard layout: mac-fr
[LAYOUT] Creating keyboard layout: mac-it
[LAYOUT] Creating keyboard layout: mac-se
[LAYOUT] Creating keyboard layout: pc-fr
================= Making all in sata =================
================= Making all in ACPICodec =================
================= Making all in util =================
[CC32] dyldsymboltool.c
[CC64] dyldsymboltool.c
[CC32] machOconv.c
[CC64] machOconv.c
[CC32] bdmesg.c
[CC64] bdmesg.c
[LD32] machOconv_32
[LD64] machOconv_64
[LIPO] machOconv
[LD32] dyldsymboltool_32
[LD64] dyldsymboltool_64
[LIPO] dyldsymboltool
[LD32] bdmesg_32
[LD64] bdmesg_64
[LIPO] bdmesg
================= Making all in fdisk =================
[MKDIR] /Users/mountain/compilare/chameleon/trunk/obj/i386/util/fdisk
[CC32] cmd.c
[CC32] disk.c
[CC32] fdisk.c
[CC32] getrawpartition.c
[CC32] mbr.c
[CC32] misc.c
[CC32] opendev.c
[CC32] part.c
[CC32] user.c
[CC32] auto.c
[CC64] cmd.c
[CC64] disk.c
[CC64] fdisk.c
[CC64] getrawpartition.c
[CC64] mbr.c
[CC64] misc.c
[CC64] opendev.c
[CC64] part.c
[CC64] user.c
[CC64] auto.c
[LD32] /Users/mountain/compilare/chameleon/trunk/sym/i386/fdisk440_32
[LD64] /Users/mountain/compilare/chameleon/trunk/sym/i386/fdisk440_64
[LIPO] /Users/mountain/compilare/chameleon/trunk/sym/i386/fdisk440
================= Making all in klibc =================
[MKDIR] /Users/mountain/compilare/chameleon/trunk/obj/i386/klibc
[CC] strlcpy.c
[RM] /Users/mountain/compilare/chameleon/trunk/sym/i386/libklibc.a
[AR] libklibc.a
[RANLIB] libklibc.a
================= Making all in libsa =================
[MKDIR] /Users/mountain/compilare/chameleon/trunk/obj/i386/libsa
[CC] prf.c
[CC] printf.c
[CC] zalloc.c
[CC] string.c
[CC] strtol.c
[CC] error.c
[AS] setjmp.s
[CC] qsort.c
[CC] efi_tables.c
[RM] /Users/mountain/compilare/chameleon/trunk/sym/i386/libsa.a
[AR] libsa.a
[RANLIB] libsa.a
================= Making all in libsaio =================
[MKDIR] /Users/mountain/compilare/chameleon/trunk/obj/i386/libsaio
[CC] table.c
[AS] asm.s
[AS] bios.s
[CC] biosfn.c
[CC] disk.c
[CC] sys.c
[CC] cache.c
[CC] bootstruct.c
[CC] stringTable.c
[CC] load.c
[CC] pci.c
[CC] allocate.c
[CC] misc.c
[CC] befs.c
[CC] freebsd.c
[CC] openbsd.c
[CC] vbe.c
[CC] nbp.c
[CC] hfs.c
[CC] hfs_compare.c
[CC] xml.c
[CC] ntfs.c
[CC] msdos.c
[CC] md5c.c
[CC] device_tree.c
[CC] cpu.c
[CC] platform.c
[CC] acpi_patcher.c
[CC] smbios.c
[CC] smbios_getters.c
[CC] smbios_decode.c
[CC] fake_efi.c
[CC] ext2fs.c
[CC] hpet.c
[CC] dram_controllers.c
[CC] spd.c
[CC] usb.c
[CC] pci_setup.c
[CC] device_inject.c
[CC] nvidia_helper.c
[CC] nvidia.c
[CC] ati.c
[CC] gma.c
[CC] pci_root.c
[CC] convert.c
[CC] aml_generator.c
[CC] console.c
[CC] exfat.c
[RM] /Users/mountain/compilare/chameleon/trunk/sym/i386/libsaio.a
[AR] libsaio.a
[RANLIB] libsaio.a
================= Making all in boot0 =================
[NASM] boot0
[NASM] boot0hfs
[NASM] boot0md
[NASM] chain0
================= Making all in boot1 =================
[NASM] boot1hp
[NASM] boot1f32
[NASM] boot1h
[NASM] boot1he
================= Making all in boot2 =================
[MKDIR] /Users/mountain/compilare/chameleon/trunk/obj/i386/boot2
[AS] boot2.s
[CC] boot.c
[CC] graphics.c
[CC] drivers.c
[CC] prompt.c
[CC] options.c
[CC] lzss.c
[CC] mboot.c
[CC] ramdisk.c
[CC] picopng.c
[CC] resume.c
[CC] bmdecompress.c
[CC] graphic_utils.c
[CC] gui.c
[CC] modules.c
[AS] modules_support.s
[CC] /Users/mountain/compilare/chameleon/trunk/sym/i386/boot_modules.c
[LD] boot.sys
ld: warning: -segaddr __INIT not 4096 byte aligned
ld: warning: grandfathering in old symbol '__DATA__bss__begin' as alias for 'section$start$__DATA$(bool, short, short)'
ld: warning: grandfathering in old symbol '__DATA__bss__end' as alias for 'section$end$__DATA$(bool, short, short)'
ld: warning: grandfathering in old symbol '__DATA__common__begin' as alias for 'section$start$__DATA$__common'
ld: warning: grandfathering in old symbol '__DATA__common__end' as alias for 'section$end$__DATA$__common'
Undefined symbols for architecture i386:
 "start", referenced from:
 -u command line option
 (maybe you meant: _start_built_in_module, _startprog , dyld_void_start , _symbols_module_start , _start_built_in_modules )
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
make[3]: *** [boot] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Link to comment
Share on other sites

Mi sembra che il bootloader non e ancora compatibile o forse ce qualcos'altro lib che manca. Purtroppo le mie conoscenze finiscono qui. Provero domani a compilarlo sul mio sistema, cosi posso vedere i problemi e le possibile soluzioni.

 

In ogni caso, penso che ErmaC sa cosa fare. Meglio che chiedi aiuto a lui.

Link to comment
Share on other sites

Speriamo, sono disperato, ho provato sul mio pc Lion e Mountain, mi è piaciuto come Os e ho ordinato un macbook pro dall'apple store di fascia media, volevo avere lo sfizio di farlo girare bene non c'è una documentazione ben fatta per fare da soli queste cose, fino a ieri non sapevo nemmeno a cosa serviva il file ati.c ne dove reperire questo file, poi ho scoperto che non è un file tipo smbios che lo metti in extra e funziona ma bisogna compilare i sorgenti, questa cosa di compilare mi piace molto però non si capisce da dove iniziare, bisognerebbe aggiornare le guide specialmete adesso che c'è MOuntain e hanno rimosso alcune cose, una persona che adesso ci si avvicina a questo genere di cose non sà dove sbattere la testa.

Link to comment
Share on other sites

non puoi fare checkout dal branch di Fabio? prendendo magari una revision sicuramente funzionante, come la 2030?

 

poi hai sicuramente bisogno dela suite XCode installata per avere i vari comandi (g++, gcc, make, il linker etc..)

Link to comment
Share on other sites

Come ti hanno già detto su Mountain Lion e Xcode 4.4, la compilazione "tradizionale" (da terminale),

presenta delle lacune in termini di comandi non più presenti rispetto alle versioni precedenti della suite di programmazione...

 

Lo ribadisco nuovamente...

 

devi disattivare il gatekeeper da pannello di controllo.

Preferenze di Sistema->Sicurezza e Privacy->Generali

E alla voce "Consenti applicazioni scaricate da:" seleziona Dovunque.

 

Ps in questa versione di Enoch ho anche inserito la tua scheda.

 

Fabio

 

Nella versione Enoch sperimentale ho inserito anche la tua scheda video... sembra che i messaggi non vengano letti.

 

Fabio

Link to comment
Share on other sites

Come ti hanno già detto su Mountain Lion e Xcode 4.4, la compilazione "tradizionale" (da terminale),

presenta delle lacune in termini di comandi non più presenti rispetto alle versioni precedenti della suite di programmazione...

 

Lo ribadisco nuovamente...

 

 

 

Nella versione Enoch sperimentale ho inserito anche la tua scheda video... sembra che i messaggi non vengano letti.

 

Fabio

 

Ciao Fabio,

 

vuoi farmi credere che hanno limitato le potenzialità di XCode in nome di Gatekeeper?

Link to comment
Share on other sites

quindi hai inserito il subsystem 1043:2001? però mi piacerebbe imparare a fare qualcosa per dare un contributo alla comunità, a limite installo lion e provo ex novo.

Link to comment
Share on other sites

Ciao Fabio,

 

vuoi farmi credere che hanno limitato le potenzialità di XCode in nome di Gatekeeper?

 

?

Il quote di gatekeeper era dovuto al fatto che snow85 non riusciva ad installare pacchetti non certificati...

nel nuovo Xcode i "vecchi" comandi non vengono di serie... vanno compilati in Lion e installati in ML ma sembra che continuino a dare delle rogne...

 

Al momento continuo a sviluppare e compilare in Lion... per il resto si vedrà.

 

Fabio

Link to comment
Share on other sites

 Share

×
×
  • Create New...