INHOUDSOPGAWE:
- Stap 1: Laai Sunxi-tools af
- Stap 2: Pak die bronkode uit
- Stap 3: Laai kode:: blokke af
- Stap 4: Toets u IDE
- Stap 5: Voltooi die toets
- Stap 6: Skep nuwe projek
- Stap 7: Voeg lêers by die projek
- Stap 8: Laat Gcc die 1999 ISO C -taalstandaard volg
- Stap 9: Soek die ontbrekende afhanklikheid
- Stap 10: Pak die Mman uit
- Stap 11: en voeg dit by die projek
- Stap 12: Korrekte pad
- Stap 13: Uitdrywing
- Stap 14: NOTAS
Video: Orange PI HowTo: Stel Sunxi Tool saam vir Windows onder Windows: 14 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:27
VOORSKRIFTE:
Jy sal nodig hê
- 'N (lessenaar) rekenaar met Windows.
- 'N Internetverbinding.
- 'N Oranje PI -bord.
Die laaste is opsioneel, maar ek is seker dat u dit reeds het. Anders lees u nie hierdie instruksies nie.
As u die Orange PI -enkelbordrekenaar koop, bly dit net 'n stuk dooie metaal totdat dit korrek opgestel is. En die belangrikste konfigurasie lêer: "script.bin" is die eerste sleutel om dit lewendig te maak. Hierdie lêer is geleë in die opstartpartisie van u opstartbare SD -kaart. En gelukkig vir ons, in die meeste Linux -verspreidings vanaf die amptelike webwerf (https://www.orangepi.org/downloadresources/) is hierdie partisie FAT32 en kan dit maklik deur enige Windows -rekenaar gesien word. Dit vereenvoudig dinge regtig, aangesien daar nog steeds geen betroubare manier is om in die Linux ext2 -partisies onder die Windows in te skryf nie.
Ongelukkig vir ons het die konfigurasie -lêer script.bin 'n binêre formaat wat heeltemal onvriendelik is vir menslike redigering. 'N Mens het 'n soort sagteware nodig om dit te ontsyfer en terug te kryputeer nadat die nodige wysigings aangebring is. En so 'n gereedskapstel bestaan wel. Dit is berugte SUNXI-GEREEDSKAP. Die salf is dat dit bedoel is om onder Linux te werk, en ons moet óf 'n toegewyde Linux-masjien hou om slegs die sunxi-gereedskap te gebruik, of om 'n manier te vind om dit vir vensters op te stel.
Ek kan dit eenvoudig saamstel en die uitvoerbare deel, maar 'n mens weet nooit of hulle 'n nuwe weergawe wil maak nie en jy sal so gou moontlik 'n nuwe samestelling nodig hê. Daarom het ek besluit om 'n gids te maak oor hoe om die belangrikste hulpmiddel uit die bronne saam te stel. Laat ons begin.
Stap 1: Laai Sunxi-tools af
Kry die nuutste (of noodsaaklike) weergawe van die bronkode van sunxi-tools. Gaan na die URL: https://github.com/linux-sunxi/sunxi-tools/releases en kies om dit as zip-argief af te laai.
Stap 2: Pak die bronkode uit
As die aflaai klaar is, pak die bronkode uit in die gids van u keuse. (verder neem ek aan dat hierdie gids c: / sunxitools / is, dus vervang hierdie pad deur u eie pad).
Stap 3: Laai kode:: blokke af
As u 'n geïnstalleerde kopie van 'n operasionele c ++ - samesteller vir Windows het. en as u weet hoe u dit moet gebruik, kan u direk na stap 3 gaan. Ander moet 'n behoorlike c ++ - samesteller en 'n dop (IDE) kry om dit gemaklik te gebruik. Die keuse van my is kode:: blokke vir Windows, asook vooraf geïnstalleerde MinGW -werktuigketting. U kan dit hiervandaan kry:
Laai dit af en installeer dit.
Stap 4: Toets u IDE
Om te toets of dit goed gaan, begin kodeblokke, klik op 'skep 'n nuwe projek', kies 'konsole -toepassing', kies c of c ++, tik die titel van die afrekenprojek, hou die standaard in die volgende venster onaangeraak en klik op 'voltooi'.
Stap 5: Voltooi die toets
Klik dan op 'n groen driehoek in die boonste paneel van die IDE, of gebruik die menu-menu Build-> Run. As dit reg gaan, moet u 'n boodskap van u outomatiese "Hallo wêreld" -program in die swart "DOS" -venster sien.
Indien nie, beteken dit dat die IDE en die samesteller nie behoorlik werk nie, en u sal moet ondersoek hoe u dit reg kan stel. Waarskynlik, u sal 'n ander weergawe van die programmeerhulpmiddels moet aflaai of hul toestemmings in u firewall/antivirusprogrammatuur moet nagaan.
Stap 6: Skep nuwe projek
Nou moet u 'n operasionele gereedskapstel vir C/C ++ programmeerders en die bronkode van sunxi-tools in u c: / sunxitools / gids op u rekenaar hê. Dit is tyd om 'n projek saam te stel. Skep 'n nuwe projek in u IDE. Kies die gewone C (nie c ++) projek van die tipe "konsole -toepassing".
Maak seker dat u 'n projek in die gids c: / sunxitools / skep en nie op 'n ander plek nie. (EG -kodeblokke is geneig om 'n subgids met dieselfde naam as die projek te maak. As u u projek 'n naam gegee het, sê 'toets' en probeer dit in c: / sunxitools / plaas, dan kan die projek eindig na c: / sunxitools / test / as u nie oplettend genoeg is nie.) Sunxi-gereedskap bevat verskeie hulpmiddels, maar vir ons doel benodig ons slegs een: die sogenaamde 'fexc' nut.
Stap 7: Voeg lêers by die projek
Presies die "fexc" nut is verantwoordelik vir die omskakeling van die script.bin in teksformaat en vir die omskakeling in binêre. Dit is noodsaaklik dat die uitvoerbare program van hierdie program die naam 'fexc.exe' het, dus dit is goed as u u projek as 'fexc' noem. U kan egter 'n ander naam van die projek gebruik, aangesien u die uitvoerbare naam altyd na die opstel kan hernoem, of u kan 'Projek-> Eienskappe' kies in die keuselys bo en klik op die blad 'Bou teikens', en wysig die veld "Uitvoer lêernaam" daar om die uitvoerbare naam te ignoreer.
By u outogegenereerde projek moet u slegs vyf bronlêers byvoeg:
- feksc.c
- script.c
- script_bin.c
- script_fex.c
- script_uboot.c
en sewe koplêers:
- list.h (skuif dit van c: / sunxitools / include / folder na c: / sunxitools / folder)
- fexc.h
- script.h
- script_bin.h
- script_fex.h
- script_uboot.h
- weergawe.h
Sluit die outo -gegenereerde main.c van die projek uit, omdat fexc.c reeds die 'int main' -funksie bevat. (Onthou dat enige program slegs een hooffunksie moet hê?).
Al die nodige bronkode lêers is reeds in die submap waarheen u die bronkodes uitgepak het. Die koplêers verdien 'n paar woorde, waar om dit te kry. "list.h" - is gewoonlik in die "include" submap van die pakket wat nie uitgepak is nie. "version.h" - skep dit self. Sit daar 'n tou soos:
#define VERSIE "Win32"
Stoor en sluit dan die lêer. (U kan dit versier met #define's en #ifdef's as u wil.)
As u nou die projek probeer saamstel, kla dit oor baie foute en 'n ontbrekende lêer. Die foute is meestal te wyte aan 'n bietjie buitensporige stylvryheid, die programmeerders van sunxi-tools wat vroeër toegepas is, en die ontbrekende lêer is die afhanklikheid wat nie in die bronkode is nie. Laat ons hierdie stap vir stap hanteer.
Stap 8: Laat Gcc die 1999 ISO C -taalstandaard volg
Om te verseker dat die samesteller nie kla nie, stel die te gratis programmeerstyl die "99" standaard van die samestelling in. Gaan in kodeblokke na die spyskaart "Projek -> Bouopsies" en in die "Samestellerinstellings -> Opstellervlae", merk die boks "Laat gcc die 1999 ISO C -taalstandaard volg". Of u kan net "-std = c99" by u string opstelopsies van u samesteller voeg. Nou as u probeer om die projek saam te stel, behoort daardie tonne foute te begin en is u een tot een met die ontbrekende afhanklikheid.
Stap 9: Soek die ontbrekende afhanklikheid
Die ontbrekende afhanklikheid is 'mman.h' lêer - die kop van 'n soort Linux geheue bestuurder. Windows C het oorspronklik nie so 'n lêer nie, maar gelukkig is daar 'n vensterspoort daarvan. Gaan na https://github.com/witwall/mman-win32 vir Windows. Laai die momentopname van git repository af.
Stap 10: Pak die Mman uit
Pak die mman.c- en mman.h -lêers uit, plaas dit in die c: / sunxitools / folder.
Stap 11: en voeg dit by die projek
Stap 12: Korrekte pad
En in die lêer "fex.c" raplece line:
#insluit
na die
#sluit "mman.h" in
In hierdie stap moet u samesteller niks kla nie, en u kry die lang wag fexc.exe as die uitvoer. Moenie te vroeg gelukkig wees nie. Die nut is steeds nie ten volle funksioneel nie. U kan dit verseker deur 'n geldige script.bin -lêer in die teksvorm - script.fex -lêer te ontsyfer, met die gevolglike versleuteling van die script.fex -lêer terug na die script.bin. U kan opmerk dat die grootte van die resulterende script.bin effens verskil van die grootte van die oorspronklike script.bin. En as u weer die resultate probeer ontsyfer, sal dit misluk. Die Orange PI sal nie met hierdie script.bin werk nie. Om die funksionele nut te kry, moet ons 'n kodebom aflaai wat iemand in die bronkode van sunxi-tools geplaas het. Dit sal ons volgende stap wees.
Stap 13: Uitdrywing
Om die kodebom te laai, maak die fexc.c -kode lêer oop en vind daar 'n teksstring van die volgende inhoud:
anders as ((uit = oop (lêernaam, O_WRONLY | O_CREAT | O_TRUNC, 0666)) <0) {
Vervang dit net met die volgende string:
anders as ((out = open (lêernaam, O_WRONLY | O_CREAT | O_TRUNC | O_BINARY, 512)) <0) {
Indien nie die slegte syfers "666" in die eerste string nie, sou ek dink dat die kodeerder net vergeet het om die O_BINARY vlag te gebruik. Maar The Number of The Beast verduidelik sy bedoelings deursigtig. Besef, hoe vernuftig dit is: as gevolg van die subtiele verskil in hoe die lêers in Windows en Linux verwerk word, het die bom geen effek wanneer die program saamgestel en gebruik word onder Linux. Maar dit verwoes alles as die program onder Windows gebruik word.
Nadat die bom ontwapen is, kan u uiteindelik die feks -nut op u Windows -tafelrekenaar opstel en veilig gebruik.
Stap 14: NOTAS
1) Om die feks -nut gemaklik te gebruik, moet u twee bondellêers kry:
bin2fex.bat - en - fex2bin.bat.
U kan dit by 'n feksc.exe -gebou vir Windows kry, of u kan dit self tik:
- bin2fex.bat moet "fexc -I bin -O fex script.bin script.fex" bevat
- fex2bin.bat moet "fexc -O bin -I fex script.fex script.bin" bevat
2) As dit moeilik is om die mman -bestuurder vir Windows te vind, kan u dit glad nie vermy nie. Dit verg egter veel meer redigering van die fexc.c -lêer en vereis ten minste kennis van c. Vir u oortuiging deel ek die bewerkte bronkode van die feksc van die sunxi-tools v1.4 vry van die afhanklikheid van mman.h saam met die codeblocks-projeklêer en met voorbeeld script.bin van 'n paar oranje pi. U kan fexc_nomman.zip aflaai
3) Dit is moontlik dat hulle in die daaropvolgende weergawes van sunxi-gereedskap nog meer afhanklikhede sal toevoeg. U kan dit gerus op die internet vind en dit by u versamelingsprojek voeg.
5) Laastens is hier die vooraf saamgestelde weergawe van fexc.exe vir Win32:
fexc_nomman.zip
As u lui genoeg is, gebruik gerus ver. Pasop egter dat dit nie opgedateer sal word as/wanneer die nuwer weergawes van SunxiTools/Windows beskikbaar sal wees nie. Ek veronderstel dus dat dit beter is om te leer hoe om dit op te stel as om afhanklik te wees van 'n vaste binêre opbou.
4) Die "Orange PI", "Code:: Blocks", "Windows", "Linux", "Sunxi-Tools", "Allwinner", ens … is die korrespondent-handelsmerke van hul onderskeie eienaars.
5) As u samesteller kla dat u nie mman -funksies vind nie, soos:
ongedefinieerde verwysing na '_imp_mmap'
Let daarop dat liefhebbers van die ontwikkelingsgemeenskap van mman vergeet het dat die kode nie net as dll -biblioteek saamgestel kan word nie. Dit kan ook 'n statiese biblioteek of 'n selfstandige kode wees soos ons hier het. Om die probleem op te los, wysig 'mman.h' lêer soos volg:
a) vind die snare:
#as gedefinieer (MMAN_LIBRARY)
#define MMANSHARED_EXPORT _declspec (dllexport) #else #define MMANSHARED_EXPORT _declspec (dllimport) #endif
b) voeg die string by
#definieer MMANSHARED_EXPORT
net onder die snare wat by die vorige stap gevind is
Aanbeveel:
Z80 MBC2 - Stel QP/M Bios en Loader weer saam: 6 stappe
Z80 MBC2 - Stel QP/M Bios en Loader weer saam: as u, net soos ek, u in 'n posisie bevind waar u die QP/M -bios vir u MBC2 moet saamstel, is dit hoe u dit doen. die proses, hoe om die bestaande weergawe weer saam te stel. Dit is aan u om die werklike Bios te verander
Hoe om 'n DIY -speelgoedstel vir sonkrag saam te stel: 4 stappe
Hoe om 'n DIY -speelgoedstel vir sonkrag saam te stel: wil u u kind hernubare energie leer? Vergeet wetenskaplike beurs, dit is 'n goedkoop kit vir sonkragmotors wat u vir minder as 5 $ kan koop en nooit 'n battery benodig nie. Vir dieselfde hoeveelheid geld kan u 'n geboude model koop, maar waar is die f
Hoe om 'n eenvoudige en kragtige handvatselkontroleerder saam te stel- gebaseer op die mikro: bietjie: 10 stappe (met foto's)
Hoe om 'n eenvoudige en kragtige handvatselkontroleerder saam te stel- gebaseer op die mikro: bietjie: die naam van die handvatsel is handlebit. Die vorm is 'n handvatsel en dit lyk baie cool! Nou kan ons 'n inleiding maak oor die Handlebit, laat ons verder gaan
Orange PI HowTo: Stel dit in gebruik met 'n 5 "HDMI TFT LCD -skerm: 8 stappe (met foto's)
Orange PI: hoe om dit te gebruik met 'n 5 "HDMI TFT LCD -skerm Terwyl ander selfs geen struikelblokke opgemerk het nie. Die sleutel is dat daar
Orange PI HowTo: Stel dit in gebruik met 'n motor se agteruitkykskerm en HDMI na RCA -adapter: 15 stappe
Orange PI HowTo: Stel dit in gebruik met 'n motor -agteruitkykskerm en 'n HDMI -na -RCA -adapter: VOORWOORD Dit lyk asof elkeen 'n groot en selfs groter TV -toestel of monitor gebruik met 'n dom Orange PI -bord. En dit lyk na 'n bietjie te veel as dit bedoel is vir ingebedde stelsels. Hier het ons iets klein en iets goedkoop nodig. Soos 'n