Nainstalujte Plesk na CentOS 7
Používáte jiný systém? Plesk je proprietární ovládací panel webového hostitele, který umožňuje uživatelům spravovat jejich osobní a/nebo klientské webové stránky, databáze
GDB je debugger pro C, C++, Objective-C, Pascal, Fortran, Go, D, OpenCL C, Ada a Modula-2.
CentOS je založen na RHEL (Red Hat Enterprise Linux). Jedním z hlavních cílů RHEL je být stabilním serverovým operačním systémem, což znamená, že novější verze softwarových balíků nejsou vždy dostupné.
V době psaní tohoto článku nabízí CentOS 6 GDB v7.2. Tým GDB však nedávno vydal kód pro v7.91.
Oficiálně se doporučuje provozovat jinou linuxovou distribuci za účelem použití novější verze GDB. To není vždy ideální. Naštěstí je možné nainstalovat novější verze GDB na CentOS 6. Vzhledem k tomu, že GDB je spíše debugger než základní součást systému, můžete používat novější verzi celkem bezpečně.
Tento článek vysvětluje, jak nainstalovat podporované i nepodporované verze GDB na CentOS 6.
Také vysvětlím, jak nastavit GDB, aby vám poskytla snazší informace o ladění při použití standardní knihovny C++ (jako řetězec) a knihovny standardních šablon (jako vektor). Tato funkce se nazývá pěkný tisk.
Přihlaste se do svého VPS. To lze provést kliknutím na „Zobrazit konzolu“ v ovládacím panelu Vultr nebo pomocí klienta SSH.
(a) Přihlaste se jako root.
(b) Vytvořte si vlastní uživatelský účet. Nastavte heslo.
adduser <username>
passwd <username>
(c) Udělte uživateli sudo přístup.
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) Odhlaste se jako root a poté se znovu přihlaste pomocí svého uživatelského účtu. Je mnohem bezpečnější se ve skutečnosti nikdy nepřihlašovat jako root. Použití sudo je lepší praxe.
Nainstalujte GDB.
sudo yum install gdb
Zkontrolujte nainstalovanou verzi a podívejte se na její umístění.
gdb --version
May say: GNU gdb (GDB) Red Hat Enterprise Linux (7.2-75.el6)
which gdb
/usr/bin/gdb
Nainstalujte kompilátor jazyka C, například GCC. Kompilátor C++ není nutný k sestavení GDB ze zdroje, ale je potřeba k demonstraci pěkné tiskové funkce GDB. Nejnovější verzi GCC můžete sestavit ze zdroje provedením kroků v článku Jak nainstalovat GCC na CentOS 6 . Nebo můžete nainstalovat oficiálně podporovanou verzi GCC CentOS 6 spuštěním:
sudo yum install gcc gcc-c++
Nainstalujte další požadované balíčky.
sudo yum install wget tar gzip ncurses-devel texinfo svn python-devel
Rozhodněte se, kterou verzi GDB chcete sestavit ze zdroje. Navštivte server FTP GDB a podívejte se na verze, které jsou k dispozici ke stažení.
Získejte zdroj verze GDB, kterou chcete. Zbytek tohoto článku je napsán pro verzi 7.9.1 a stáhne si zdroje do ~/sourceInstallations/gdb-7.9.1/
– budete muset nahradit správné číslo verze za novější verze.
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
Vybudujte GDB. Pokud se to dokončí správně, na posledním řádku, který uvidíte, bude uvedeno „úspěch“. Je normální, že některé chybově vyhlížející zprávy rychle procházejí. Tyto lze bezpečně ignorovat.
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
Nainstalujte si pěkný tisk v C++.
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.
Zkontrolujte nainstalovanou verzi a její umístění.
gdb --version
May say: GNU gdb (GDB) 7.9.1
which gdb
/usr/local/bin/gdb
Volitelně spusťte GDB a uvidíte pěkný tisk.
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.
Volitelně získat zpět místo na pevném disku. Váš ~/sourceInstallations
adresář bude zabírat přibližně 386 MB. Pravděpodobně je rozumné ponechat si adresáře, protože existují volitelné konfigurační možnosti, které budete možná muset někdy v budoucnu použít, a bylo by rychlejší mít spoustu již hotových. Proces sestavení také vytváří protokoly, které můžete později zkontrolovat a pracovat s nimi, pokud se něco pokazí. Po spuštění sudo make install
dříve však vaše nainstalovaná GDB nezávisí na ničem v tomto adresáři a prostor může být drahý, takže můžete provést tento krok a získat zpět přibližně 386 MB. DŮLEŽITÉ: nemažte ~/gdb_printers/
adresář! Obsah tohoto adresáře se načte pokaždé, když spustíte GDB. NEBYLY zakompilovány do samotné GDB.
cd ~/
rm -rf sourceInstallations
--- Again, if you can spare the space, you may someday be happy to have left it there.
Používáte jiný systém? Plesk je proprietární ovládací panel webového hostitele, který umožňuje uživatelům spravovat jejich osobní a/nebo klientské webové stránky, databáze
Squid je populární bezplatný linuxový program, který vám umožňuje vytvořit webový proxy pro předávání. V této příručce uvidíte, jak nainstalovat Squid na CentOS, aby vás otočil
Úvod Lighttpd je fork Apache, jehož cílem je být mnohem méně náročný na zdroje. Je lehký, odtud jeho název, a jeho použití je docela jednoduché. Installin
VULTR nedávno provedl změny na jejich konci a vše by nyní mělo fungovat dobře po vybalení s povoleným NetworkManagerem. Pokud si přejete deaktivovat
Icinga2 je výkonný monitorovací systém a při použití v modelu master-client může nahradit potřebu monitorovacích kontrol založených na NRPE. Hlavní klient
Používáte jiný systém? Apache Cassandra je bezplatný a otevřený systém pro správu databází NoSQL, který je navržen tak, aby poskytoval škálovatelnost, vysokou
Používáte jiný systém? Microweber je open source drag and drop CMS a online obchod. Zdrojový kód Microweber je hostován na GitHubu. Tento průvodce vám to ukáže
Používáte jiný systém? Vanilla forum je open source aplikace fóra napsaná v PHP. Je plně přizpůsobitelný, snadno použitelný a podporuje externí
Používáte jiný systém? Mattermost je open source alternativa k zasílání zpráv Slack SAAS s vlastním hostitelem. Jinými slovy, s Mattermostem můžete ca
Co budete potřebovat Vultr VPS s alespoň 1 GB RAM. Přístup SSH (s oprávněními root/administrátor). Krok 1: Instalace BungeeCord První věci
Ovládací panel Plesk se vyznačuje velmi pěknou integrací pro Lets Encrypt. Lets Encrypt je jedním z jediných poskytovatelů SSL, kteří rozdávají kompletní certifikáty
Lets Encrypt je certifikační autorita určená k bezplatnému poskytování certifikátů SSL. cPanel vytvořil úhlednou integraci, takže vy a váš klient
Používáte jiný systém? Concrete5 je open source CMS, který nabízí mnoho charakteristických a užitečných funkcí, které pomáhají editorům snadno vytvářet obsah
Používáte jiný systém? Review Board je bezplatný a open source nástroj pro kontrolu zdrojového kódu, dokumentace, obrázků a mnoha dalších. Je to webový software
V této příručce se dozvíte, jak nastavit HTTP ověřování pro webový server Nginx běžící na CentOS 7. Požadavky Chcete-li začít, budete potřebovat
YOURLS (Your Own URL Shortener) je open source aplikace pro zkracování adres URL a analýzu dat. V tomto článku se budeme zabývat procesem instalace
Používáte jiný systém? Úvod ArangoDB je open source databáze NoSQL s flexibilním datovým modelem pro dokumenty, grafy a páry klíč–hodnota. to je
Úvod Adresář /etc/ hraje kritickou roli ve způsobu fungování systému Linux. Důvodem je skutečnost, že téměř každá konfigurace systému
Mnoho systémových administrátorů spravuje velké množství serverů. Když je potřeba přistupovat k souborům přes různé servery, přihlaste se ke každému zvlášť ca
Tento návod pokryje proces instalace herního serveru Half Life 2 na systém CentOS 6. Krok 1: Instalace předpokladů Aby bylo možné nastavit ou
Umělá inteligence není v budoucnosti, je zde přímo v současnosti V tomto blogu si přečtěte, jak aplikace umělé inteligence ovlivnily různé sektory.
Jste také obětí DDOS útoků a nemáte jasno v metodách prevence? Chcete-li vyřešit své dotazy, přečtěte si tento článek.
Možná jste slyšeli, že hackeři vydělávají spoustu peněz, ale napadlo vás někdy, jak takové peníze vydělávají? Pojďme diskutovat.
Chcete vidět revoluční vynálezy Google a jak tyto vynálezy změnily život každého dnešního člověka? Pak si přečtěte na blogu a podívejte se na vynálezy od Googlu.
Koncept aut s vlastním pohonem, která vyrazí na silnice s pomocí umělé inteligence, je snem, který už nějakou dobu máme. Ale přes několik slibů nejsou nikde vidět. Přečtěte si tento blog a dozvíte se více…
Jak se věda vyvíjí rychlým tempem a přebírá mnoho našeho úsilí, stoupá také riziko, že se vystavíme nevysvětlitelné singularitě. Přečtěte si, co pro nás může znamenat singularita.
Způsoby ukládání dat se mohou vyvíjet od narození dat. Tento blog se zabývá vývojem ukládání dat na základě infografiky.
Přečtěte si blog, abyste co nejjednodušším způsobem poznali různé vrstvy v architektuře velkých dat a jejich funkce.
V tomto digitálním světě se chytrá domácí zařízení stala klíčovou součástí života. Zde je několik úžasných výhod chytrých domácích zařízení o tom, jak náš život stojí za to žít a zjednodušit jej.
Apple nedávno vydal doplňkovou aktualizaci macOS Catalina 10.15.4, která opravuje problémy, ale zdá se, že aktualizace způsobuje další problémy, které vedou k zablokování počítačů mac. Přečtěte si tento článek a dozvíte se více