编译原理
zhangpeterx
这个作者很懒,什么都没留下…
展开
-
ubuntu下安装flex和bison
做编译原理作业时需要用到flex和bison,于是在Linux下安装了flex和bisonapt install flex bison原创 2019-03-09 14:15:58 · 10015 阅读 · 0 评论 -
在C++中使用LLVM的JIT功能进行代码优化:Optimization passes--PassManagerBuilder
今天找了一天的在LLVM中如何进行代码优化的方法。原创 2019-06-20 23:42:41 · 3560 阅读 · 0 评论 -
报错解决:usr/bin/ld: output.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when maki
晚上在用g++的时候报错如下:-> # g++ output.o -o test/usr/bin/ld: output.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC/usr/bin/ld: final...原创 2019-06-15 23:33:34 · 6305 阅读 · 1 评论 -
LLVM报错解决:/usr/bin/ld: cannot find -lz和/usr/bin/ld: cannot find -lncurses
晚上在用LLVM时报错如下:g++ `llvm-config-3.9 --cppflags` -std=c++11 -o compiler main.o `llvm-config-3.9 --libs` `llvm-config-3.9 --ldflags` -lpthread -ldl -lz -lncurses -rdynamic -L/usr/local/lib -ljsoncpp...原创 2019-06-15 20:48:11 · 2293 阅读 · 0 评论 -
报错解决:fatal error: json/json.h: No such file or directory
晚上在做编译原理作业的时候遇到了报错:ASTNodes.h:6:23: fatal error: json/json.h: No such file or directory #include <json/json.h>这个报错的解决方法如下:sudo apt-get install libjsoncpp-dev sudo ln -s /usr/include/jsoncp...原创 2019-06-15 20:15:35 · 23652 阅读 · 5 评论 -
安装llvmlite报错解决:RuntimeError: llvm-config failed executing, please point LLVM_CONFIG to the path for
晚上在安装llvmlite时报错:zhang@debian:~$ pip3 install llvmlite==0.16.0Collecting llvmlite==0.16.0 Using cached https://files.pythonhosted.org/packages/23/c7/56d7c18564783f33206b3cb6ce861a8d681e8be1a124c56...原创 2019-06-19 23:08:51 · 24891 阅读 · 10 评论 -
在Python中使用LLVM接口:llvmpy和llvmlite
文章目录1.过时的llvmpy2.llvmlite1.过时的llvmpyllvmpy是llvm C ++库的Python包装器,允许简单访问编译器工具。但是这个库已经不再更新了,只支持LLVM 3.3,不支持更新的版本。2.llvmlite项目的GitHub地址:numba/llvmlite: A lightweight LLVM python binding for writing J...原创 2019-06-19 22:54:56 · 12198 阅读 · 1 评论 -
我看过的编译原理方面的好文章
本文不定期更新,最后更新于2019-5-18GitHub上实时更新,地址:good-articles-by-sort/编译原理.md编译原理编译原理三大经典书籍(龙书 虎书 鲸书)前端为什么要会正则表达式 - 知乎一次性搞懂JavaScript正则表达式之引擎 - 掘金没有AST, IDE中的错误提示、自动补全、重构、语法检查…都玩不转了语法解析(一)BNF&EBNF |...原创 2019-06-19 22:01:35 · 1143 阅读 · 0 评论 -
使用clang将C/C++代码编译成LLVM的中间代码(LLVM ir bitcode),并反汇编LLVM bitcode
test.c文件内容如下:#include<stdio.h>int main(void){ printf("hello world!\n"); return 0;}clang是使用LLVM最为后端,所以支持编译成LLVM的中间代码clang -emit-llvm -o test.bc -c test.c将LLVM bitcode 进一步编译为汇编:cl...原创 2019-06-19 16:07:22 · 9858 阅读 · 0 评论 -
LLVM系列文章1: Debian/Ubuntu 安装和使用 LLVM
Debian/Ubuntu 安装 LLVM原创 2019-05-27 11:51:16 · 4343 阅读 · 0 评论 -
C语言注释的匹配的正则表达式
C语言注释的匹配的正则表达式原创 2019-03-04 14:18:47 · 4315 阅读 · 3 评论 -
g++报错解决:error: ‘setw’ is not a member of ‘std’
下午在用g++编译的时候报错如下:zhang@debian:~/CuteCompiler$ g++ -std=c++11 test.cpp -o testtest.cpp: In function ‘int main(int, char**)’:test.cpp:57:16: error: ‘setw’ is not a member of ‘std’ outFile <&l...原创 2019-06-17 15:49:41 · 8510 阅读 · 0 评论