Mac OS X 10.8 中編譯APUE(Unix環(huán)境高級編程)的源代碼過程
更新時間:2014年09月17日 09:34:18 作者:鄉(xiāng)村運維
這篇文章主要介紹了Mac OS X 10.8 中編譯APUE(Unix環(huán)境高級編程)的源代碼過程,對于用MAC學習Unix環(huán)境高級編程的同學會有些作用,需要的朋友可以參考下
最近在溫習APUE(《unix環(huán)境高級編程》),以前都是在linux下搞,現(xiàn)在打算在自己機器弄下,于是google了下,把編譯的事情搞定了,修改了一些教程的一些錯誤,比如下載鏈接之類的。
1、下載源文件,我這里是第二版,貌似第三版的英文版出來了。。。
復制代碼 代碼如下:
wget http://www.apuebook.com/src.2e.tar.gz
2、解壓
復制代碼 代碼如下:
tar zxf src.2e.tar.gz
3、修改些東西
復制代碼 代碼如下:
cd apue.2e/
vim Make.defines.macos
WKDIR=/Users/chenqing/apue.2e //更改到你的代碼的絕對路徑
vim include/apue.h
在第11行后加入下面三句
#ifdef MACOS
#define _DARWIN_C_SOURCE
#endif
4、編譯
復制代碼 代碼如下:
make all
5、復制
復制代碼 代碼如下:
sudo cp include/apue.h /usr/include/
sudo cp lib/error.c /usr/include/
6、修改apue.h
在最后一行#endif 前面添加一行 #include “error.c”
7、測試一下
復制代碼 代碼如下:
#include <apue.h>
int main()
{
err_sys("some error found %d",getpid());
return 0 ;
}
相關(guān)文章
C語言編程技巧 關(guān)于const和#define的區(qū)別心得
盡量用const和inline而不用#define 這個條款最好稱為:“盡量用編譯器而不用預處理”,因為#define經(jīng)常被認為好象不是語言本身的一部分。這是問題之一。再看下面的語句:2013-02-02
C++實現(xiàn)通訊錄系統(tǒng)項目實戰(zhàn)
這篇文章主要為大家詳細介紹了C++實現(xiàn)通訊錄系統(tǒng)項目實戰(zhàn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-06-06

