Gå til innhold

knuto

Medlemmer
  • Innlegg

    291
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av knuto

  1. Hei!

     

    Eg programmerar GKT i C++, men har akkurat skifta til linux. Kan nokon hjelpe meg med å få til GTK-kompilering til å fungere med GCC? Eg har prøvd å installere pakke for pakke etter rekkefylja som er oppskriven i GTK sin FAQ, men nå når eg kom til Pango påstod han at GTKLib ikkje var installert, noko det faktisk er (eller ikkje :hmm:).

     

    Det finst ikkje tilfeldig vis eit script som gjer jobben? Brukar Ubuntu.

  2. Eg veit godt at det ikkje går ann å lage ein bootloader utan ASM, men går det ann å bruke C++ med ASM-koden internt? Og korleis skulle ein kompilert det då? :hmm:

     

    Eit eksempel:

    // Ingen inkludering av standard bibliotek sidan dei ofte er avhennige av kjerne
    
    void loadBoot() {
       asm {
         ; Bootloading
       }//asm
    }//end loadBoot
    
    void consolePrint(char &text) {
       asm {
           mov si, &text
           mov ah, 4
           int 21h
       }//end asm
    }//end consolePrint
    
    int main() {
       loadBoot();
       consolePrint("Welcome to floppy :)");
       return 0;
    }//end main
    
    

    Er dette mogleg? :hmm:

  3. Støtte for C++ behøver man ikke å programmere i asm, siden man ikke har C++-kode men binærkode som tolkes av maskinen.

    Hmm. Ettersom det er forskjell på å programmere C++ for windows og linux, så reknar eg med at noko må til får å bruka det, eller er det rett og slett slik at viss ein ikkje brukar eit einaste bibliotek, men f.eks. assembler (inni C++-koden) IO-funksjoner ol, så vil det heile bli plattformuavhennig? :hmm:

    Platformuavhengig skal det vanskelig gjøres å lage et operativsystem, ut fra min begrensede kunnskap om emnet.

    Skreiv då aldri noko om å lage operativsystemet plattformuavhennig, men den forrige posten var elendig :) *redigere når eg får tid*

  4. Eg har i det siste begynt å tenkje mykje på korleis eit operativsystem er oppbygd. Kor mykje som må programmerast. Kva som er innebygd i BIOS. Kva som må programmerast fullstendig sjølv osv.

     

    Kor mykje av operativsystemet må programmerast i assembly før ein kan ta i bruk programmeringsspråk som C++? C++ er jo eit delvis plattformavhennig språk, men kan du programmere C++ totalt uavhennig av ein plattform i bakgrunnen? Kan du då bruke innebygde bibliotek til f.eks. I/O til skjerm, eller må alt slikt programmerast i asm først?

     

    Altså. Her har me eit enkelt C++-program:

    #include <iostream>
    
    int main() {
       cout << "Hey! Dette kjem ut på skjermen";
       return 0;
    }//end int main
    
    

    Men denne koden blir jo kompilert forskjelleg mellom linux og windows. C++ blir jo kompilert til eit spåk CPU'en forstår seg på, men er det tilfelle? Her har jo operativsystemet ein jobb... Kan ein programmere plattformuavhennig C++. Altså C++ som ikkje treng nokon platform meir enn seg sjølv? Må ein i så fall assemble alt ein treng av f.eks. I/O-bibliotek internt noko slikt:

    #include <iostream>
    
    void printOnScreen(char[] text) {
       asm {
         ; ASM-kode her for skriving til skjerm (eg kan ikkje asm :))
       }//end asm
    }//end void printOnScreen
    
    int main() {
       printOnScreen("Hello world!");
       return 0;
    }//end int main
    
    

    Er det dette (pluss ein spesiell kompilator) som må til for å programmere C++ uten nokon platform? Kan ein med andre ord programmere eit operativsystem utan direkte asm, berre asm internt i C++?

     

    Og så: Kor mykje må programmerast i asm? Må ein lage funksjonar for lesing frå harddisk, eller er det innebygd i BIOS? Eller nettverk? Eller skjerm? Kva må til for å lage GUI?

     

    Og litt linux-spesifikt. Alle linuxdistroar brukar jo linuxkjernen, men kva ligg inni den? Er heile kjernen programmert i asm? Kva er det eigentleg som f.eks. ubuntu står bak, anna enn å putte GNU/Linux og Gnome inn på ein CD?

     

    Men nå må de ikkje tru at eg har ein fjortisdraum om å lage eit operativsystem (som evt. skal revolusjonere verden). Slike mål er berre tidsfordriv :)

  5. Eg har hatt Windows i lange tider, og installerte nettopp Ubuntu som dualboot. Problemet er at dei tre NTFS-partisjonerte diskane mine ikkje er å finne. Får til å montere windowspartisjonen, men den forsvinn kvar gong eg startar opp på ny.

     

    Meir informasjon kan eg diverre ikkje gje, ettersom eg ikkje er kjend i Linux. Eg er takksam viss nokon vil hjelpa, og eg kan òg ta i mot effektiv hjelp over MSN ([email protected]).

  6. Hmm. Kopierte litt rett frå konsole:

    knut@ubuntu:~$ sudo apt-get install gstreamer0.8-mad
    Les pakkelister ... Ferdig
    Byggjer kravtre ... Ferdig
    Du vil kanskje prøva å retta på desse ved å køyra «apt-get -f install».
    Følgjande pakkar har krav som ikkje er oppfylte:
     gstreamer0.8-mad: Krav: libid3tag0 (>= 0.15.1b) men skal ikkje installerast
                       Krav: libmad0 (>= 0.15.1b) men skal ikkje installerast
     opera: Krav: xlib6g (>= 3.3.6) men lèt seg ikkje installera eller
                  xlibs men skal ikkje installerast
            Krav: libqt3-mt (>= 3.3.4) men skal ikkje installerast eller
                  libqt3c102-mt (>= 3.3.4) men lèt seg ikkje installera
    E: Nokre krav er ikkje oppfylte. Du kan prøva «apt-get -f install» (eller velja ei løysing).
    

     

    edit: kanskje ein tanke å gjere det som står. Fekk det til no :) Takk!

  7. Eg har lest det som er vesentleg på ubuntuguide faktisk fleire gongar, men fant aldri noko om dette med MP3 ... Har aktivert det som var av repostitorys, men får endå feilmelding når eg prøver å installere MP3-opplegget som Zerblat sa ...

  8. Situasjonsoppdatering: Eg har trykka på at han må prøva å installera grunnsystemet på ny, og denne gonge hentar han kvar pakke mykje fortare (kanskje 10 sekund på kvar). Er derimot ikkje optimist ...

     

    Synes det er merkeleg at det ikkje er ein indikator som viser kor mange pakkar han skal henta, og kor mange som gjenstår ... Hadde likt å vite om han hadde henta få, eller mange pakker ... Dessutan er det keisamt at det heile tida skal stå på 6% på hovudindikatoren :p

  9. Hallo

     

    Virker som om linux hater meg. Alle gongene eg har prøvd å installera linux har heile systemet gått rett i dass. Ettersom Ubuntu har kome i ny versjon tenkte eg å sjå om denne ville fungere, men nei.

     

    Eg har for snart tre timar sidan starta installasjonen. På heile steget "installer grunnsystemet" har kvar pakke han har "henta" brukt omtrent 1 minutt. Eg har teke livet med ro, men no går det over streken tenkte eg. Eg henta laptopen og surra meg inn til diskusjon.no for å spør om dette var normalt.

     

    Endeleg, før eg fekk begynt skrivinga kom det ein feilmelding.

    Base system installation error

    The debootstrap program exitet with an error (return value 1)

    Check /target/var/log/bootstrap.log for the details.

    Mitt alternativ no er å prøve å ta steget på ny, eller å gi opp linux denne gongen òg.

     

    Uansett: Har de nokon tips til kva eg kan prøve for å få dette til? Og eit lite tileggsspørsmål: Kvaforein distro bør eg prøve viss eg ikkje får ubuntu til å fungere?

     

    Eg blir så ufatteleg lei av at linux aldri skal fungere på datamaskinen min. Som programmerar hadde eg hatt ufatteleg godt av å prøve linux som dualboot, og eg har prøvd å installera linux utallige gongar, men alltid er det noko som klikker :mad:

  10. Hei

     

    Eg kunne tenkt meg å kikka på kildekoden bak blandt anna biblioteka string og vector, og har leita og søkt litt rundt om kring. Lasta ned kildekoden til G++, men fant ingen ting. Dette er vel OpenSource?

     

    Uansett; er det nokon som veit kvar eg kan finna det eg leitar etter? Viss nokon lurar har eg eigentleg ingen god grunn til det, men har berre lyst å setje meg litt inn i korleis det heile fungerar. Som ein slags inspirasjon :)

     

    Men forresten. Denne koden er vel skriven i C++, og ikkje ASM? Er han i det heile tatt sånn noke lunde forståeleg for ein meg basiskunnskapar til C++? :p

×
×
  • Opprett ny...