導航:首頁 > 源碼編譯 > mac添加gmp擴展編譯報錯

mac添加gmp擴展編譯報錯

發布時間:2023-06-16 09:38:17

『壹』 gmp如何編譯安裝php已經裝好了,想增加這個模塊。

cd gmpphpize./configuremake && make install

『貳』 mac os 安裝gcc

下載完成後,通過terminal進入下載目錄,即gcc-4.8-bin.tar.gz所在的目錄。輸入命令
gunzip gcc-4.8-bin.tar.gz
解壓gcc-4.8-bin.tar.gz壓縮包,注意只需要解壓一次,在同一目錄下得到gcc-4.8-bin.tar文件。
3.繼續在terminal中輸入命令:
sudo tar -xvf gcc-4.8-bin.tar
輸入密碼後,自動在當前目錄下生成了usr目錄。cd /user/local/bin就可以看到所有的gcc相關的命令了。當然你也可以將整個目錄移動到你需要的目錄。
4.添加gcc路徑。關掉當前terminal,重新新建一個terminal。輸入如下命令:
touch ——/.bash_profile
新建一個bash_profile文件,使用vi或者其他編輯器寫入如下代碼:
export PATH=「/Users/lizhaotailang/Gcc/usr/local/bin:$PATH」
,當然這是我的路徑,具體的路徑根據你的實際情況而定。寫入完成後關閉文件。為了使文件生效,還需要在terminal輸入
source ——/。bash_profile

5.查看是否生效。在terminal中輸入:
echo $PATH
,如果能夠在輸出中看到剛剛添加的路徑就說明添加成功了。或者直接輸入gcc命令,如果能夠看到gcc的clang錯誤而不是找不到文件的話,就說明配置成功了。
6.然後就可以愉快的使用gcc了。

『叄』 安裝gmp後怎樣編譯cpp文件

gmp安裝及使用摘要

GNU Multiple Precision Arithmetic Library

首先,去libgmp官網下載最新的gmp包。(我下的是gmp-5.1.0)

然後gmp-5.1.0.tar.bz2。使用命令

tar -jvxf gmp-5.1.0.tar.bz2

進入gmp-5.1.0文件夾

cd gmp-5.1.0

接下來比較關鍵,在使用configure的時候要加上 --enable-cxx命令,否則不能使用c++庫gmpxx.h(今年寒假的時候沒加這個命令也可以,但現在貌似不行了- -)

./configure --enable-cxx

然後

make

make check

最後

sudo make install

就安裝完成了。

可以試著編寫一個樣常式序:

#include<gmpxx.h>
using namespace std;
int main()
{
mpz_t a, b, c, d;
mpz_init(a);
mpz_init(b);
mpz_init(c);
mpz_init(d);
//計算2的1000次方
mpz_init_set_ui(a, 2);
mpz_pow_ui(c, a, 1000);
gmp_printf("c = %Zd\n", c);

//計算12345678900987654321*98765432100123456789
mpz_init_set_str(b, "12345678900987654321", 10);//10進制
mpz_init_set_str(c, "98765432100123456789", 10);
mpz_mul(d, b, c);
gmp_printf("d = %Zd\n", d);
mpz_clear(a);
mpz_clear(b);
mpz_clear(c);
mpz_clear(d);
return 0;
}

以上程序貌似是C的,編譯時使用:

gcc name.c -o name.o -lgmp

對於C++,編碼會方便一些:

#include<iostream>
#include<gmpxx.h>
using namespace std;
int main()
{
mpz_class a;
//計算2的1000次方,似乎C++就沒有數學函數支持了?
a = 1;
for(int i = 0; i < 1000; i++)
a *= 2;
cout<<"2^1000 = "<<a<<endl;
//計算-12345*9876543210123456789
mpz_class b, c;
b = -12345;
c = "98765432100123456789";
cout<<"b * c = "<<b * c<<endl;
return 0;
}

編譯用:

g++ name.cpp -o name.o -lgmpxx -lgmp

閱讀全文

與mac添加gmp擴展編譯報錯相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:672
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:486
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:382
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:350
風翼app為什麼進不去了 瀏覽:779
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:151
伊克塞爾文檔怎麼進行加密 瀏覽:893
app轉賬是什麼 瀏覽:163