MacOS/Ubuntu安装使用SystemC

Ubuntu/Debian和Mac操作基本一样,本文以Mac系统演示,有不同的地方我会特殊注明,所有操作在相应系统上均已通过测试

1.安装gcc编译器

  • Ubuntu:自带gcc编译器无需安装,鼠标右键打开终端输入gcc -v查看版本
    在这里插入图片描述
  • Mac OS:使用快捷键 command+空格 打开搜索栏,输入terminal打开终端在这里插入图片描述

在终端输入gcc -v查看版本
已安装

上图为已经安装,未安装的话安装方法请转至百度

2.SystemC 安装

1) 下载 SystemC,下载地址:www.systemc.org
2) 解压SystemC 压缩包(一定要记住自己的文件下载路径

在这里插入图片描述
在这里插入图片描述

3) 在终端中打开文件夹systemc-2.3.1

具体操作方法为:
先输入pwd查看当前路径,再输入ls -l查看查看当前路径下的文件
在这里插入图片描述

输入cd Desktop进入Desktop文件夹(cd为进入某一文件夹,我的下载路径为 /Users/lujie/Desktop/SystemC/systemc-2.3.1,所以我进入Desktop,而你需要进入你刚才下载的路径)再依次cd SystemC cd systemc-2.3.1
在这里插入图片描述

如果是Ubuntu可以直接鼠标右键该文件夹选择Open in Terminal

4) 建立临时文件夹,终端输入 mkdir objdir
5) 进入临时文件夹,终端输入 cd objdir
6) 通过设置 CXX 环境变量选择编译器,终端输入 export CXX=g++
7) 配置软件套件
  • Ubuntu:先输入命令sudo passwd root(输入两次管理员密码)
    再输入命令 su 进入 root模式, 再输入 ../configure
    在这里插入图片描述

  • Mac:输入 sudo ../configure
    在这里插入图片描述

8) 编译软件套件
  • Ubuntu:在开始之前要先修改systemc.h否则在最后一步会报这样一个错误
    在这里插入图片描述

修改方法为在root权限下vi systemc.h
在这里插入图片描述
之后再输入make

Mac:

  • 输入 sudo make
    等待大概五分钟

在这里插入图片描述

9) 编译检查
  • Ubuntu:输入 make check
  • Mac:输入 sudo make check
    Two years later…
    在这里插入图片描述
10) 安装软件套件
  • Ubuntu:输入 make install
  • Mac:输入 sudo make install
    在这里插入图片描述
11) 进入上层文件夹,输入cd ..
12) 删除临时文件夹,输入
  • Ubuntu:输入 rm -rf objdir
  • Mac:输入 sudo rm -rf objdir

2.设置环境变量

这一步Mac和Ubuntu有很大的区别

- Mac:

1) 回到用户根目录

使用cd ..直到回到 /Users/lujie (使用pwd查看)
eg: cd XX是向前进入一层目录,cd ..即向后退出一层目录
在这里插入图片描述

找不到的话可以参考https://www.jianshu.com/p/463244ec27e3

2) 输入 vi ./.bash_profile

在这里插入图片描述

3) 键盘按下 i 进入编辑模式
4) 输入 SystemC 库路径 export LD_LIBRARY_PATH=SystemC 库路径

这里我的是export LD_LIBRARY_PATH=/Users/lujie/Desktop/SystemC/systemc-2.3.1/lib-macosx64
在这里插入图片描述

5) 保存退出

按下ESC,输入 冒号:,输入wq,回车
在这里插入图片描述

6) 输入source ./.bash_profile确认修改

- Ubuntu:

  1. 查看所有文件,输入ls -all
    在这里插入图片描述

  2. 打开.bashrc 文件,输入 vi .bashrc

  3. 键盘按下 i 进入编辑模式

  4. 输入 SystemC 库路径 export LD_LIBRARY_PATH=SystemC 库路径。
    在这里插入图片描述

  5. 按下ESC,输入 冒号:,输入wq,回车

3. Makefile 文件编写

1) 编写Makefile.defs 文件
a) SYSTEMC = SystemC 路径
b) INCDIR = -I. -I.. -I../src -I$(SYSTEMC)/include
c) LIBDIR = -L. -L.. -L../src -L$(SYSTEMC)/lib-$(TARGET_ARCH)
d) LIBS = -lsystemc -lm $(EXTRA_LIBS)

在这里插入图片描述

2) 编写Makefile 文件

Mac

a) TARGET_ARCH = macosx64
b) CC =g++
c) OPT =-O3
d) DEBUG=-g
e) CFLAGS = $(OPT) $(OTHER)
f) VPATH = ../src:.
g) MODULE = 模块名称
h) SRCS = .cpp 文件名称
i) OBJS = $(SRCS:.cpp=.o)
j) include ./Makefile.defs

在这里插入图片描述

Ubuntu

a) TARGET_ARCH = linux64
b) CC =g++
c) OPT =-O3
d) DEBUG=-g
e) CFLAGS = $(OPT) $(OTHER)
f) VPATH = ../src:.
g) MODULE = 模块名称
h) SRCS = .cpp 文件名称
i) OBJS = $(SRCS:.cpp=.o)
j) include ./Makefile.defs

在这里插入图片描述

3) 文件位置

在SystemC文件夹下创建名为hello_world的文件夹
hello_world文件夹下的bin 文件夹存放 Makefile.defs 文件和 Makefile 文件;
src 文件夹存放hello_world.cpp文件
在这里插入图片描述

4) 编译运行

1.在终端下打开文件夹bin,输入make
在这里插入图片描述

运行后会在bin目录下生成 .o 连接文件和可执行文件

2.输入./hello_world运行程序
在这里插入图片描述
Success!

参考文章:

https://www.jianshu.com/p/463244ec27e3

发布了3 篇原创文章 · 获赞 5 · 访问量 296

猜你喜欢

转载自blog.csdn.net/qq_43580646/article/details/104450814
今日推荐