Richard Stallman 談 GCC、LLVM 和 Copyleft
ESR(Eric S.Raymond)在GCC郵件列表上發貼預言,LLVM/Clang編譯器將在3到5年內威脅到GCC的統治地位,認為GCC編譯器的反外掛政策正成為一大障礙。雖然Clang尚未達到GCC的成熟度,但在某些方面它擁有比GCC更出色的特性,例如錯誤資訊。ESR建議GCC應允許非自由的外掛。
自由軟體基金會主席、GCC原作者RMS(Richard Stallman)迴應稱,非自由的軟體是一種非正義,我們的目標是消滅非正義,給予計算機使用者自由。
他指出,LLVM的許可協議對自由軟體社群而言是一個可怕的挫折。他認為,GCC為了要贏得與Clang的編譯器之戰而允許非自由外掛,那麼即使勝利也將是空洞的,因為勝利無關乎真正重要的東西:使用者的自由。
相關推薦
Richard Stallman 談 GCC、LLVM 和 Copyleft
ESR(Eric S.Raymond)在GCC郵件列表上發貼預言,LLVM/Clang編譯器將在3到5年內威脅到GCC的統治地位,認為GCC編譯器的反外掛政策正成為一大障礙。雖然Clang尚未達到GCC的成熟度,但在某些方面它擁有比GCC更出色的特性,例如錯誤資訊。
測試之談TDD、BDD和ATDD
前言:做測試也快兩年了,雖然期間也接觸到敏捷開發,但是隻是對專案組中的流程有個瞭解。偶然的看到TDD和BDD,是敏捷開發技術中比較高頻的兩個概念,但實際自己並不能說出其中的區別和聯絡,剛好藉此機會學習瞭解,通過CSDN記錄學習的疑問正文:一、概念:TDD:Test-Drive
Performanced C++ 經驗規則(5):再談過載、覆蓋和隱藏
在C++中,無論在類作用域內還是外,兩個(或多個)同名的函式,可能且僅可能是以下三種關係:過載(Overload)、覆蓋(Override)和隱藏(Hide),因為同名,區分這些關係則是根據引數是否相同、是否帶有const成員函式性質、是否有virtual關鍵字修飾以及是否在同一作用域來判斷。在第四
淺談SynchronousQueue、LinkedBlockingQueue和ArrayBlockingQueue
分析這幾個阻塞佇列是自己在分析執行緒池的時候,發現Executors類提供的幾個靜態方法中,newCachedThreadPool()的阻塞佇列使用的 是SynchronousQueue,而剩下兩個用的是LinkedBlockingQueue,好奇為什麼不同,於是便研究了一
談一談getchar()、EOF和Ctrl+D
getchar() getchar從stdio流中讀字元,getchar有一個int型的返回值.當程式呼叫getchar時.程式就等著使用者按鍵.使用者輸入的字元被存放在鍵盤緩衝區中.直到使
淺談GCC/Clang生成和連結靜態庫/動態庫
為了方便下面的講解,先寫兩個C++原始檔,程式碼如下: 1 2 3 4 5 //add.cpp int add(int a, int b) { return a + b; } 1 2 3 4 5 6 7 8 9 10 11 //main.cpp #in
淺談MVC、MVP、MVVM架構模式的區別和聯系
.html csdn 獲取 視圖 viewmodel url title tle htm 淺談MVC、MVP、MVVM架構模式的區別和聯系 學習了:http://www.cnblogs.com/guwei4037/p/5591183.html http://blog.csd
python學習-09(查找、排序和淺談數據結構)
使用 指定 矩陣 這樣的 重復 n) init enc nbsp 查找的方法: 排序的方法: 簡單的數據結構: 一、算計基礎 1.1、什麽是算法: 算法(Algorithm)是指解題方案的準確而完整的描述,是一系列解決問題的清晰指令,算法代表著用系統的方法描述解決問題的策略
GCC 中 -L、-rpath和-rpath-link的區別
目錄 恢復 固定 成功 ref exist fyi man手冊 錯誤 GCC 中 -L、-rpath和-rpath-link的區別 來源 http://blog.csdn.net/q1302182594/article/details/42102961 關於這3個參數的說明
展望Apache RocketMQ5.0 | 談RocketMQ的過去、現在和未來
雙向 維護 分布式消息 雲上 產生 保持 實現 ati 通信 摘要: 核心理念:計算和存儲分離。 近日,在Aliware Open Source?深圳站 - Apache Dubbo & Apache RocketMQ 開發者沙龍上,Apache RocketMQ
淺談內核的Makefile、Kconfig和.config文件
模塊 文件夾 語法 配置 推薦 lec 有時 輸出 The Linux內核源碼文件繁多,搞不清Makefile、Kconfig、.config間的關系,不了解內核編譯體系,編譯修改內核有問題無從下手,自己寫的驅動不知道怎麽編進內核,不知道怎麽配置內核,這些問題都和Makef
再談面向物件中的封裝、繼承和多型
封裝 封裝說的是把資料封裝起來,對外暴露一個可以訪問的介面,不能讓外界直接訪問內部的資料。 從上面的描述可以抽取出兩種型別:介面和類。 從現在比較火的微服務的觀點上來看,一個類就是一個服務,一個物件就是一個服務的例項,通過這個服務暴露的介面來訪問這個服務。從這個意義上來講,面向
淺談ICA演算法的概念、本質和流程
本文轉自http://m.elecfans.com/article/699564.html ICA獨立成分分析是近年來出現的一種強有力的資料分析工具(Hyvarinen A, Karhunen J, Oja E, 2001; Roberts S J, Everson R, 2001)。1994年
淺談Java中原碼、補碼和反碼
學習計算機時,對於十進位制轉二進位制大家很有所瞭解,這次講講原碼、補碼和反碼的基本概念。 原碼 原碼就是十進位制數字最原始的二進位制表示,在Java中,對於整數而言,其原碼格式為最高位為符號位,該位上1表示負數而0表示正數,剩餘位數為該數字的二進位制表示。以Java中32位int型的整數
淺談Websocket、Ajax輪詢和長連接(long pull)
服務器推 .ajax get 版本 其中 img request 結果 服務 1.什麽是Websocket Websocket是HTML5中提出的新的協議,註意,這裏是協議,可以實現客戶端與服務器端的通信,實現服務器的推送功能。 2.Websocket和HTTP協議
GCC、g++編譯器和gcc編譯器的區別
GCC:(GNU Compiler Collection,GNU編譯器套件),是由 GNU 開發的程式語言編譯器。它是以GPL許可證所發行的自由軟體,也是 GNU計劃的關鍵部分。 gcc:GNU的C語言編譯器。 g++:GNU的C++語言編譯器。 區別一: gcc:編譯檔案字尾為.c的檔案時,編譯成編
淺談頻寬、網速和流量之間的關係
通常情況下:我們說的頻寬10M 20M ;現在網速:200KB/s ; 使用了8M的流量等,那麼頻寬、網速、流量之間有什麼關係,他們分別代表什麼呢? ①頻寬的統計單位是:位元/秒(bps):10M=10Mbps; ②網速是資料傳輸的速度,單位是:位元組/秒(B/s KB/s MB/
淺談程序、執行緒和協程三者之間的區別和聯絡
一、程序、執行緒、協程 1,程序 經典定義:一個執行中程式的例項。系統中的每個程式都執行在某個程序的上下文中。(-摘自 CSAPP) 程序是系統資源分配的最小單位 2,執行緒(thread) 執行緒就是執行在程序上下文中的邏輯流。 執行緒是作業系統能夠進行運算排程的最小單位。 &
linux常用命令以及gcc、gdb、vim的安裝和配置
1. linux是一個類unix作業系統 vmware--虛擬出一個硬體環境用於安裝一個作業系統 虛擬機器--在vmware中的這個虛擬的這個硬體環境/安裝的這個作業系統 xshell功能:遠端連線到虛擬機器/伺服器上堆虛擬機器
Linux下gcc/g++、make和cmake的區別
文字程式到可執行檔案生成無論在什麼平臺大致分為以下幾個部分: 1.用編輯器編寫原始碼,如.c檔案。 2.用編譯器編譯程式碼生成目標檔案,如.o。 3.用連結器連線目的碼生成可執行檔案,如.exe。 Linux平臺下,.o檔案一般是通過編譯的但還未連結的