Įdiekite „Plesk“ „CentOS 7“.
Naudojate kitą sistemą? Plesk yra patentuotas žiniatinklio prieglobos valdymo skydelis, leidžiantis vartotojams administruoti savo asmenines ir (arba) klientų svetaines, duomenų bazes
GDB yra C, C++, Objective-C, Pascal, Fortran, Go, D, OpenCL C, Ada ir Modula-2 derinimo priemonė.
CentOS yra pagrįsta RHEL („Red Hat Enterprise Linux“). Vienas iš pagrindinių RHEL tikslų – būti stabilia serverio operacine sistema, o tai reiškia, kad naujesnės programinės įrangos paketų versijos ne visada pasiekiamos.
Rašymo metu CentOS 6 siūlo GDB v7.2. Tačiau GDB komanda neseniai išleido kodą v7.91.
Oficialiai siūloma paleisti kitą Linux distro, kad būtų galima naudoti naujesnę GDB versiją. Tai ne visada idealu. Laimei, CentOS 6 galima įdiegti naujesnes GDB versijas. Kadangi GDB yra derinimo priemonė, o ne pagrindinis sistemos komponentas, galite naudoti naujesnę versiją.
Šiame straipsnyje paaiškinama, kaip CentOS 6 įdiegti palaikomas ir nepalaikomas GDB versijas.
Taip pat paaiškinsiu, kaip nustatyti GDB, kad suteiktumėte lengviau skaitomą derinimo informaciją, kai naudojate C++ standartinę biblioteką (pvz., eilutę) ir standartinę šablonų biblioteką (pvz., vektorių). Ši funkcija vadinama gražiu spausdinimu.
Prisijunkite prie savo VPS. Tai galima padaryti spustelėjus „View Console“ „Vultr“ valdymo skydelyje arba naudojant SSH klientą.
a) Prisijunkite kaip root.
(b) Sukurkite savo vartotojo paskyrą. Nustatykite slaptažodį.
adduser <username>
passwd <username>
(c) Suteikite vartotojui sudo prieigą.
visudo
After the line "root ALL=(ALL) ALL"
Add the line "<username> ALL=(ALL) ALL"
--- If you aren't familiar with vi, go to the line "root ALL=(ALL) ALL".
--- Hit "o" to create a new line after that line and enter insert mode.
--- Type "<username> ALL=(ALL) ALL".
--- Hit ESC.
--- Type "ZZ" to save.
(d) Atsijunkite kaip root, tada vėl prisijunkite naudodami savo vartotojo paskyrą. Daug saugiau niekada neprisijungti kaip root. Sudo naudojimas yra geresnė praktika.
Įdiekite GDB.
sudo yum install gdb
Patikrinkite įdiegtą versiją ir jos vietą.
gdb --version
May say: GNU gdb (GDB) Red Hat Enterprise Linux (7.2-75.el6)
which gdb
/usr/bin/gdb
Įdiekite C kompiliatorių, pvz., GCC. C++ kompiliatorius nereikalingas norint sukurti GDB iš šaltinio, tačiau jis reikalingas norint parodyti gražią GDB spausdinimo funkciją. Galite sukurti naujesnę GCC versiją iš šaltinio, atlikdami straipsnyje Kaip įdiegti GCC CentOS 6 nurodytus veiksmus . Arba galite įdiegti CentOS 6 oficialiai palaikomą GCC versiją paleisdami:
sudo yum install gcc gcc-c++
Įdiekite papildomai reikalingus paketus.
sudo yum install wget tar gzip ncurses-devel texinfo svn python-devel
Nuspręskite, kurią GDB versiją norite sukurti iš šaltinio. Apsilankykite GDB FTP svetainėje, kad pamatytumėte versijas, kurias galima atsisiųsti.
Gaukite norimos GDB versijos šaltinį. Likusi šio straipsnio dalis skirta 7.9.1 versijos versijai, o šaltiniai bus atsisiunčiami į jį ~/sourceInstallations/gdb-7.9.1/
– naujesnėmis versijomis turėsite pakeisti tinkamą versijos numerį.
mkdir ~/sourceInstallations
cd ~/sourceInstallations
wget ftp://ftp.gnu.org/gnu/gdb/gdb-7.9.1.tar.gz .
tar -zxvf gdb-7.9.1.tar.gz
Sukurkite GDB. Jei tai bus atlikta teisingai, paskutinėje eilutėje, kurią pamatysite, bus nurodyta „sėkmė“. Normalu, kad kai kurie klaidos pranešimai greitai slenka. Tai saugu ignoruoti.
mkdir gdb-7.9.1.build
cd gdb-7.9.1.build
../gdb-7.9.1/configure --with-python=yes && make && sudo make install && echo success
--- If your VPS has multiple cores, you can speed up the build by changing the middle part
--- of this line from "&& make &&" to "&& make -j <number of cores> &&".
--- You can see the number of cores your VPS has by running "nproc"
--- The parameter "--with-python=yes" is necessary for the pretty printing feature
Įdiekite C++ pretty printing.
cd ~/
svn co svn://gcc.gnu.org/svn/gcc/trunk/libstdc++-v3/python gdb_printers
Create a file ~/.gdbinit of:
python
import sys
sys.path.insert(0, '/home/<yourUserName>/gdb_printers/')
from libstdcxx.v6.printers import register_libstdcxx_printers
end
--- One way to create this file is to run "vi ~/.gdbinit", hitting "i" to enter insert mode,
--- typing the above file, hitting ESC, and hitting "ZZ" to save.
Patikrinkite įdiegtą versiją ir jos vietą.
gdb --version
May say: GNU gdb (GDB) 7.9.1
which gdb
/usr/local/bin/gdb
Pasirinktinai paleiskite GDB ir pamatysite gražų spausdinimą.
mkdir ~/gdbExample
cd ~/gdbExample
Create a file gdbExample.cpp of:
#include <string>
#include <vector>
using namespace std;
int main() {
string foo = "bar";
vector<string> vec;
vec.push_back("foo");
vec.push_back("bar");
vec.push_back("foobar");
}
--- One way to create this file is to run "vi gdbExample.cpp", hitting "i" to enter insert mode,
--- typing the above file, hitting ESC, and hitting "ZZ" to save.
g++ -ggdb gdbExample.cpp -o gdbExample
Start GDB traditionally, by running "gdb ./gdbExample". Or, start GDB by using its terminal user interface (basically a text mode GUI), by running "gdb --tui ./gdbExample".
Enter "break main" to set a breakpoint at the beginning of function main() -- and it will say:
Breakpoint 1 at 0x<someAddress>: file gdbExample.cpp, line 6.
Enter "run" to start the program, which will immediately hit the breakpoint you just set -- and it will say:
Starting program: /home/<yourUserName>/gdbExample/gdbExample
Breakpoint 1, main () at gdbExample.cpp:6
6 string foo = "bar";
Enter "next" and hit enter four times, and gdb will move up to just before executing:
10 vec.push_back("foobar");
Enter "print foo" and gdb will show:
$1 = "bar"
Enter "print vec" and gdb will show:
$2 = std::vector of length 2, capacity 2 = {"foo", "bar"}
--- Remember, line 10 hasn't executed yet to add "foobar" to the vector
Enter "quit" and "y" to quit anyway.
Pasirinktinai atlaisvinkite vietos standžiajame diske. Jūsų ~/sourceInstallations
katalogas užims apie 386 MB. Tikriausiai būtų protinga išsaugoti katalogus, nes yra pasirenkamų konfigūravimo parinkčių, kurias gali tekti naudoti kada nors ateityje, ir būtų greičiau, jei daug ką jau padarytumėte. Be to, kūrimo procesas sukuria žurnalus, kuriuos vėliau galėsite patikrinti ir dirbti, jei kas nors negerai. Tačiau paleidus sudo make install
anksčiau, jūsų įdiegtas GDB nepriklauso nuo nieko šiame kataloge, o vietos gali būti labai daug, todėl galite atlikti šį veiksmą ir susigrąžinti maždaug 386 MB. SVARBU: neištrinkite ~/gdb_printers/
katalogo! Šio katalogo turinys įkeliamas kiekvieną kartą paleidus GDB. Jie NĖRA sukompiliuoti į patį GDB.
cd ~/
rm -rf sourceInstallations
--- Again, if you can spare the space, you may someday be happy to have left it there.
Naudojate kitą sistemą? Plesk yra patentuotas žiniatinklio prieglobos valdymo skydelis, leidžiantis vartotojams administruoti savo asmenines ir (arba) klientų svetaines, duomenų bazes
Squid yra populiari nemokama „Linux“ programa, leidžianti sukurti persiuntimo žiniatinklio tarpinį serverį. Šiame vadove pamatysite, kaip įdiegti „Squid“ „CentOS“, kad paverstumėte jus
Įvadas Lighttpd yra „Apache“ šakutė, skirta daug mažiau išteklių imti. Jis yra lengvas, todėl jo pavadinimas ir yra gana paprastas naudoti. Įdiegti
VULTR neseniai atliko pakeitimus, ir dabar viskas turėtų veikti gerai, kai įjungta „NetworkManager“. Jei norite išjungti
Icinga2 yra galinga stebėjimo sistema, o kai naudojama pagrindinio kliento modelyje, ji gali pakeisti NRPE pagrįstų stebėjimo patikrų poreikį. Meistras-klientas
Naudojate kitą sistemą? Apache Cassandra yra nemokama ir atviro kodo NoSQL duomenų bazių valdymo sistema, skirta užtikrinti mastelio keitimą, hig.
Naudojate kitą sistemą? Mattermost yra atvirojo kodo, savarankiškai priglobta alternatyva Slack SAAS pranešimų paslaugai. Kitaip tariant, naudodami Mattermost, jūs apytiksliai
„Plesk“ valdymo skydelyje yra labai graži „Lets Encrypt“ integracija. „Lets Encrypt“ yra vienas iš vienintelių SSL teikėjų, išduodančių visus sertifikatus
„Lets Encrypt“ yra sertifikatų institucija, skirta nemokamai teikti SSL sertifikatus. cPanel sukūrė tvarkingą integraciją, kad jūs ir jūsų klientas
Naudojate kitą sistemą? Concrete5 yra atvirojo kodo TVS, kuri siūlo daug išskirtinių ir naudingų funkcijų, padedančių redaktoriams lengvai sukurti turinį
Naudojate kitą sistemą? „Review Board“ yra nemokamas atvirojo kodo įrankis, skirtas šaltinio kodui, dokumentacijai, vaizdams ir daugeliui kitų peržiūrėti. Tai internetinė programinė įranga
Šiame vadove sužinosite, kaip nustatyti HTTP autentifikavimą Nginx žiniatinklio serveriui, kuriame veikia CentOS 7. Reikalavimai Norėdami pradėti, jums reikės
YOURLS (Your Own URL Shortener) yra atvirojo kodo URL sutrumpinimo ir duomenų analizės programa. Šiame straipsnyje apžvelgsime diegimo procesą
Naudojate kitą sistemą? Įvadas ArangoDB yra atvirojo kodo NoSQL duomenų bazė su lanksčiu duomenų modeliu dokumentams, grafikams ir raktų reikšmėms. tai yra
Įvadas Katalogas /etc/ vaidina lemiamą vaidmenį veikiant Linux sistemai. Taip yra todėl, kad beveik visos sistemos konfigūracijos
Daugelis sistemos administratorių valdo didelius serverių kiekius. Kai failus reikia pasiekti skirtinguose serveriuose, prisijungiant prie kiekvieno atskirai apytiksliai
Ši pamoka apims Half Life 2 žaidimų serverio diegimą CentOS 6 sistemoje. 1 veiksmas: būtinų sąlygų įdiegimas Norėdami nustatyti ou
Laravel GitScrum arba GitScrum yra atvirojo kodo produktyvumo įrankis, skirtas padėti kūrimo komandoms įgyvendinti Scrum metodiką panašiai
Įvadas Šiame „Vultr“ vadove sužinosite, kaip įdiegti „PowerDNS“. PowerDNS yra programa, skirta paleisti savo vardų serverius. Tai labai naudinga, kai
Galite nukopijuoti ir įklijuoti šį bash scenarijų į Vultr valdymo skydelio paleisties scenarijaus sritį. Jis įdiegs visus reikalingus paketus į ru
Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.
Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.
Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.
Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.
Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…
Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.
Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.
Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.
Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.
Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį