Installige Plesk operatsioonisüsteemi CentOS 7
Kas kasutate teistsugust süsteemi? Plesk on patenteeritud veebihosti juhtpaneel, mis võimaldab kasutajatel hallata oma isiklikke ja/või klientide veebisaite, andmebaase
LLVM on avatud lähtekoodiga kompilaatori infrastruktuur. LLVM sai alguse 2000. aastal ning Apple on seda laialdaselt kasutanud ja muutnud alates 2005. aastast. Clang on C, C++, Objective-C ja Objective-C++ kompilaator, mis töötab LLVM-süsteemiga. Clangi käivitas 2007. aastal Apple ning sellest ajast alates on Google ja Intel selle jätkuvas arendamises osalenud.
Clangi arendajad väidavad, et võrreldes GCC-ga kompileerib see kiiremini, kasutab vähem mälu, annab kompileerimise ajal kasutajasõbralikuma diagnostika ja ühildub GCC-ga.
CentOS järgib Red Hat Enterprise Linuxi (RHEL) arengut. RHEL püüab olla stabiilne serveriplatvorm, mis tähendab, et ta ei kiirusta kõige uuemate versioonide kaasamisega.
Alates selle artikli kirjutamisest levitab CentOS 6 ametlikult LLVM & Clang v3.4.2. Clang v3.6 on aga välja antud.
Ametlik soovitus on, et kui vajate LLVM & Clangi uuemat versiooni, peaksite kaaluma teistsugust UNIX-i distributsiooni, mis on rohkem keskendunud tarkvarapakettide uusimate versioonide toetamisele.
Õnneks saate CentOS-ile installida uuema versiooni LLVM & Clang GCC. See erineb puhtalt ametlikult levitatava tarkvara kasutamisest, kuid mõnikord võib tunduda, et teil on vähe valikut.
Selles artiklis kirjeldatakse, kuidas installida CentOS 6 ametlikult toetatud LLVM & Clangi versioon ja kuidas installida uuem versioon. See artikkel eeldab, et teil on värskelt installitud CentOS 6 VPS, kuid võite kindlasti järgida juba kasutatud VPS-i juhiseid.
Clang on suures osas GCC-st sõltumatu, kuid selle artikli kirjutamise seisuga kasutab Clang ikka veel mitmeid GCC installitud jagatud teeke (nimelt crtbegin.o
, gcc
, ja gcc_s
). Kui installite LLVM & Clangi operatsioonisüsteemi CentOS 6, ei saa te midagi kompileerida, kui teie süsteemis pole nende jagatud teekide jaoks ka GCC-d. Ideaalis oleks yum paketisõltuvus gcc ja gcc-c++ klangi jaoks, kuid selle artikli kirjutamise seisuga ei ole yum sellest sõltuvusest teadlik.
Lisaks nõuab LLVM & Clangi allikast uuema versiooni loomine G++ versiooni 4.7+, mille saate hankida ainult CentOS 6-s, kui installite selle allika järgi.
Kui teete kõik allolevad toimingud, saate lõpuks kaks GCC versiooni ja kaks LLVM & Clangi versiooni. See hõlmab iga programmi ametlikult toetatud binaarset vanemat versiooni ja uuemat versiooni allikast. Siiski pole vaja kõiki alltoodud samme läbida. Saate otsustada, kas soovite LLVM & Clangi ametlikult toetatud binaarset vanemat versiooni või allika uuemat versiooni, ja käivitada mis tahes juhiste jaotis, mis sobib teie otsusega.
TÄHTIS! Esmalt installige ametlikult toetatud (vanem) GCC versioon, järgides artiklis GCC installimine CentOS 6 -sse toodud samme – te EI pea täitma selle artikli pealkirja all olevaid samme "GCC uuema versiooni installimine allikast ".
Installige LLVM & Clang
sudo yum install clang
--- This will bring in llvm as a dependency
Kontrollige installitud versioone ja vaadake nende asukohti.
clang --version
May say: clang version 3.4.2 (tags/RELEASE_34/dot2-final)
which clang
/usr/bin/clang
gcc --version
May say: gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
g++ --version
May say: g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
which gcc
/usr/bin/gcc
which g++
/usr/bin/g++
LLVM-i ja Clangi loomiseks allika järgi CentOS-is peab teil olema GCC v4.7 või uuem. CentOS 6-l pole yumis nii kõrget versiooni, seega peate esmalt installima allikast uuema GCC.
TÄHTIS! Esmalt installige allikast GCC uuem versioon, järgides artiklis GCC installimine CentOS 6- sse toodud samme – peate tegema kõik selles artiklis olevad toimingud, sealhulgas jaotises "GCC uuema versiooni installimine allikas".
Installige täiendavalt vajalikud paketid.
sudo yum install cmake
Installige Pythoni uuem versioon. LLVM ja Clang v3.6.0 nõuavad Pythoni versiooni 2.7+, kuid CentOS 6 yumi hoidlas on ainult Python v2.6.6.
mkdir ~/sourceInstallations
cd ~/sourceInstallations
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
tar -xvf Python-2.7.9.tgz
cd Python-2.7.9
./configure && make && sudo make install
Otsustage, millist LLVM & Clangi versiooni soovite. See käsk näitab teile saadaolevate versioonide "silte".
svn ls http://llvm.org/svn/llvm-project/llvm/tags | grep RELEASE
RELEASE_1/
...
RELEASE_352/
RELEASE_360/
RELEASE_361/
svn ls http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_361
rc1/
--- At this time, there is no final, just a release candidate. You could certainly use a release candidate, but this article will show how to use a final release.
svn ls http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_360
final/
rc1/
rc2/
rc3/
rc4/
Hankige soovitud LLVM & Clangi versiooni allikas. See töötab mõne minuti. Ülejäänud osa sellest artiklist on kirjutatud RELEASE_360/
ja laadib allikad alla ~/sourceInstallations/llvm_RELEASE_360/
– tulevaste versioonide sobitamiseks peate asendama õige sildi. Allolevad kataloogid compiler-rt
, libcxx
, ja libcxxabi
ei ole absoluutselt vajalikud, kuid sisaldavad mõningaid LLVM & Clangi funktsioone, mida GCC-l ei ole, seega on need selles artiklis kaasatud. On ka teisi LLVM-i "alamprojekte", mida saate kasutada, näiteks dragonegg, LLDB, OpenMB, vmkit, polly, libclc, klee, SAFECOde ja lld. Nende kohta saate lugeda LLVM-i veebisaidilt .
cd ~/sourceInstallations
svn co http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_360/final llvm_RELEASE_360
cd llvm_RELEASE_360/tools
svn co http://llvm.org/svn/llvm-project/cfe/tags/RELEASE_360/final clang
cd ../projects
svn co http://llvm.org/svn/llvm-project/compiler-rt/tags/RELEASE_360/final compiler-rt
svn co http://llvm.org/svn/llvm-project/libcxx/tags/RELEASE_360/final libcxx
svn co http://llvm.org/svn/llvm-project/libcxxabi/tags/RELEASE_360/final libcxxabi
cd ..
svn update
At revision X.
--- Hopefully this outputs one line saying "At revision X", but numbers instead of "X". If it downloads more source files, a new revision was released while you were downloading the source code. This is highly unlikely unless you're using trunk (the most up to date, maybe unstable code.) But, if this happens, perform a svn update in the tools/clang, projects/compiler-rt, projects/libcxx, projects/libcxxabi, and again ~/sourceInstallations/llvm_RELEASE_360, until you are fully up to date.
Ehitage LLVM ja Clang. See töötab mõnda aega. Kui see on õigesti lõpetatud, on viimasel real, mida näete, "edu". On normaalne, et mõned veanäitajad kiiresti mööda kerivad. Alati on hea mõte ehitada asjad lähtekataloogist erinevasse kataloogi.
mkdir ../llvm_RELEASE_360_build
cd ../llvm_RELEASE_360_build
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/usr/local/bin/gcc -DCMAKE_CXX_COMPILER=/usr/local/bin/g++ ../llvm_RELEASE_360 && 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"
--- If you omit -DCMAKE_BUILD_TYPE=Release, the build defaults to debug. This is great if you need to debug LLVM & Clang itself, but slows down compilation of your end programs considerably.
--- If you omit the references to gcc and g++, it will default to using the older binary versions in /usr/bin/, and will not compile.
Kontrollige installitud versioone ja vaadake nende asukohti.
clang --version
May say: clang version 3.6.0 (tags/RELEASE_360/final 237229)
clang++ --version
May say: clang version 3.6.0 (tags/RELEASE_360/final 237229)
which clang
/usr/local/bin/clang
which clang++
/usr/local/bin/clang++
Lisage uued teegid ld-le (GNU linker).
echo "/usr/local/lib" > usrLocalLib.conf
sudo mv usrLocalLib.conf /etc/ld.so.conf.d/
sudo ldconfig
--- This may say a file or two "is not an ELF file - it has the wrong magic bytes at the start."
--- You may ignore this message. It is silent about the work it successfully completed.
Soovi korral koostage programm "Tere maailm".
mkdir ~/code
cd ~/code
Create a file main.cpp that says:
#include <iostream>
using namespace std;
int main() {
cout << "Hello world!" << endl;
return 0;
}
--- One way to create this file is to run "vi main.cpp", hitting "i" to enter insert mode,
--- typing the above file, hitting ESC, and hitting "ZZ" to save.
clang++ main.cpp -o main
./main
Hello World!
clang++ -stdlib=libc++ -lc++abi main.cpp -o main
--- This uses Clang's libc++ and libc++abi, instead of the GNU stdlibc++ and stdlibc++abi
./main
Hello world!
Kasutage LLVM & Clangi, kui soovite.
You could set LLVM & Clang to be your system's default C and C++ compiler by running:
echo "export CC=/usr/local/bin/gcc" >> ~/.bashrc
echo "export CXX=/usr/local/bin/g++" >> ~/.bashrc
source ~/.bashrc
Once and a while there is a difference between Clang and GCC, but it's becoming more and more rare. To be more conservative, you could specify in your code's buildsystem to use LLVM & Clang, but otherwise leave your system's default to the source build of GCC.
Soovi korral saate kõvakettaruumi tagasi võtta. Teie ~/sourceInstallations
kaust võtab umbes 11 GB kettaruumi. Ilmselt on mõistlik kaustad alles jätta, kuna on valikulisi seadistusvõimalusi, mida võib tekkida vajadus tulevikus kasutada, ja kiirem oleks, kui palju oleks juba tehtud. Ja nagu eespool mainitud, saate LLVM & Clangi lisada täiendavaid "alamprojekte". Samuti loob ehitusprotsess logisid, mida saate hiljem kontrollida ja kasutada, kui midagi läheb valesti. Kuid pärast "sudo make install" varasemat käivitamist ei sõltu teie installitud LLVM & Clang mitte millestki selles kataloogis ja ruumi võib olla liiga palju, nii et saate seda sammu teha ja 11 GB tagasi nõuda.
cd ~/
rm -rf sourceInstallations
--- Again, if you can spare the space, you may someday be happy to have left it there.
Teil on nüüd uuem LLVM & Clang kataloogis /usr/local/bin
, uuemad 64-bitised LLVM & Clangi libised asukohas /usr/local/lib
ja uuemad LLVM & Clangi failid sisaldavad faile /usr/local/include
.
Kas kasutate teistsugust süsteemi? Plesk on patenteeritud veebihosti juhtpaneel, mis võimaldab kasutajatel hallata oma isiklikke ja/või klientide veebisaite, andmebaase
Squid on populaarne tasuta Linuxi programm, mis võimaldab teil luua edastamise veebipuhverserveri. Selles juhendis näete, kuidas installida Squid CentOS-i, et teid pöörata
Sissejuhatus Lighttpd on Apache'i hark, mille eesmärk on olla palju vähem ressursimahukas. See on kerge, sellest ka oma nimi, ja seda on üsna lihtne kasutada. Installin
VULTR on hiljuti teinud nende osas muudatusi ja kõik peaks nüüd töötama hästi, kui NetworkManager on lubatud. Kui soovite keelata
Icinga2 on võimas seiresüsteem ja kui seda kasutatakse põhikliendi mudelis, võib see asendada vajaduse NRPE-põhiste seirekontrollide järele. Meister-klient
Kas kasutate teistsugust süsteemi? Apache Cassandra on tasuta ja avatud lähtekoodiga NoSQL-i andmebaasihaldussüsteem, mis on loodud pakkuma skaleeritavust, hig.
Kas kasutate teistsugust süsteemi? Microweber on avatud lähtekoodiga pukseeritav CMS-i ja veebipood. Microweberi lähtekoodi majutatakse GitHubis. See juhend näitab teile
Kas kasutate teistsugust süsteemi? Mattermost on avatud lähtekoodiga isehostitav alternatiiv Slack SAAS-i sõnumsideteenusele. Teisisõnu, Mattermostiga saate ca
Mida vajate Vultr VPS-i, millel on vähemalt 1 GB muutmälu. SSH-juurdepääs (juur-/administraatoriõigustega). 1. samm: BungeeCordi installimine Kõigepealt
Pleski juhtpaneelil on Lets Encrypti jaoks väga kena integratsioon. Lets Encrypt on üks ainsatest SSL-i pakkujatest, kes väljastab sertifikaate täielikult
Lets Encrypt on sertifitseerimisasutus, mis on pühendunud SSL-sertifikaatide tasuta pakkumisele. cPanel on teie ja teie kliendi jaoks loonud korraliku integratsiooni
Kas kasutate teistsugust süsteemi? Concrete5 on avatud lähtekoodiga CMS, mis pakub palju eristatavaid ja kasulikke funktsioone, mis aitavad toimetajatel sisu hõlpsalt luua.
Kas kasutate teistsugust süsteemi? Review Board on tasuta avatud lähtekoodiga tööriist lähtekoodi, dokumentatsiooni, piltide ja palju muu ülevaatamiseks. See on veebipõhine tarkvara
In this guide, you will learn how to setup HTTP authentication for an Nginx web server running on CentOS 7. Requirements To get started, youll need th
YOURLS (Your Own URL Shortener) on avatud lähtekoodiga URL-i lühendamise ja andmeanalüüsi rakendus. Selles artiklis käsitleme installimisprotsessi
Kas kasutate teistsugust süsteemi? Sissejuhatus ArangoDB on avatud lähtekoodiga NoSQL-i andmebaas, millel on paindlik andmemudel dokumentide, graafikute ja võtmeväärtuste jaoks. see on
Sissejuhatus Kataloog /etc/ mängib Linuxi süsteemi toimimises kriitilist rolli. Selle põhjuseks on peaaegu iga süsteemi konfiguratsioon
Paljud süsteemiadministraatorid haldavad suuri servereid. Kui failidele on vaja juurde pääseda erinevatest serveritest, logige igasse eraldi sisse ca
See õpetus hõlmab Half Life 2 mänguserveri installimist süsteemi CentOS 6 System. 1. samm: eeltingimuste installimine Ou seadistamiseks
Laravel GitScrum ehk GitScrum on avatud lähtekoodiga produktiivsuse tööriist, mis on loodud selleks, et aidata arendusmeeskondadel rakendada Scrumi metoodikat sarnasel viisil.
Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.
Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.
Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.
Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.
Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…
Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.
Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.
Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.
Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.
Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit