linux从头开始一步一步安装graphics库(linux缺少graphics.h解决方案)

本文详细介绍了在Linux环境下安装Graphics库所需的SDL及其相关组件(SDL_image, SDL_mixer, SDL_net, Guile, libltdl, gmp, libffi-3.0.11, bdw-gc, libunistring)的完整过程,包括下载、解压、配置、编译和安装等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        graphics是TC里面的图形库,如果要用的话应该用TC来编译,VC++有他自己的另外图形库。分为:像素函数、直线和线型函数、多边形函数、填充函数等。如果在linux下编译程序发现系统没有这个库的话,可以到这里下载:

        http://download.savannah.gnu.org/releases/libgraph/   然后安装:

        tar -zxvf 解压

        ./configure

        make

        make install


        忘了一点,送佛送到西嘛,因为graphics库的安装需要SDL的支持,我们首先需要装SDL。

        wget -O SDL-1.2.14.tar.gz  http://goo.gl/ByL0B      (没有wget命令就装一个呗 yum install wget)

        或者在http://download.youkuaiyun.com/download/tfssm/4430490下一个     然后
        tar -xzvf SDL-1.2.14.tar.gz -C ~/ && cd SDL-1.2.14
        ./configure && make
        sudo make install


        别急啊,有了SDL还得装SDL_image:

        wget -O SDL_image-1.2.11.tar.gz http://goo.gl/98zi6  

        或者在: http://download.youkuaiyun.com/download/wxwph/3278645   下载
        tar -xzvf SDL_image-1.2.11.tar.gz -C ~/ && cd SDL_image-1.2.11
        ./configure && make
        sudo make install


         接着,SDL_mixer 1.2 Installation


        wget -O SDL_mixer-1.2.12.tar.gz http://goo.gl/o0GIX
        tar -xzvf SDL_mixer-1.2.12.tar.gz -C ~/ && cd SDL_mixer-1.2.12
        ./configure && make
        sudo make install

         SDL_net 1.2 Installation
        wget -O SDL_net-1.2.8.tar.gz http://goo.gl/AQuv5
        tar -xzvf SDL_net-1.2.8.tar.gz -C ~/ && cd SDL_net-1.2.8
        ./configure && make
        sudo make install


        这时候发现,居然还不能搞定,还需要先装Guile这个东东


       装Guile的时候又提示需要 libltdl。。。。╮(╯▽╰)╭

        好吧,下载 http://download.youkuaiyun.com/download/a7411053/4597237  的libtool 编译安装

        装好之后还得装 gmp,libffi-3.0.11,bdw-gc和libunistring,不然装Guile还得报错。资源分别在:   

         http://download.youkuaiyun.com/download/esrrhs/4315508 ,

         ftp://sourceware.org/pub/libffi/libffi-3.0.13.tar.gz,

         http://download.youkuaiyun.com/download/yjduoduo/4627004

         http://ftp.gnu.org/gnu/libunistring/libunistring-0.9.3.tar.gz  编译安装

         其中,libffi装好了后还需要再装libffi-devel :yum install libffi-devel,不然编译器还是找不到libffi库的噢

         还有gc装好之后也要再装开发包,gc-devel



        好了,现在终于可以安装graphics库啦(*^__^*) 真不容易啊

<think>嗯,用户需要解决在Linux中配置graphics.h的问题,参考了用户提供的站内引用内容。从这些引用中可以看出Linux安装这个是个挑战,因为它原本属于TurboC的图形。用户可能是一名学生或开发者,正在Linux环境下学习C语言图形编程。从"实现人物动画移动效果"的引用来看,可能是想开发图形界面程序或游戏。用户语气比较急切,使用了"教程"等关键词,说明需要详细步骤指导。之前提供的引用中,引用[1][2][5]介绍了libgraph的编译方法,引用[3]提到Windows的安装方式对Linux有误导性。引用[5]的SDL_image编译步骤值得参考但不够完整。值得注意的是graphics.h在Linux上实际是第三方移植。直接安装可能遇到依赖问题,所以需要考虑替代方案。用户说"并不是真正需求",但确实需要具体安装指导。为帮助用户,我决定:1解释libgraph是graphics.h的Linux实现2详细编译步骤需要包含解决常见错误的技巧3补充替代方案SDL/SFML4通过helloworld示例验证安装5注意提醒64位系统需额外步骤用户可能没意识到,Ubuntu/Debian源里有libgraph-dev包可直接安装,这比编译更方便。另外如果用户使用较新系统,传统图形兼容性问题需要考虑进去,所以替代方案很重要。问题中反复出现"从头开始安装",说明用户可能尝试过失败,所以故障排除部分特别重要,包括X11依赖和Makefile错误处理。建议用户优先尝试apt安装,失败再编译。</think> 在Linux中配置和使用`graphics.h`需要安装其兼容实现 **`libgraph`**,以下是详细步骤和替代方案: --- ### 📥 一、安装libgraphgraphics.h的Linux实现) #### 方法1:通过源码编译安装(推荐) ```bash # 1. 安装依赖 (X11图形开发包) sudo apt-get install libsdl-image1.2-dev libx11-dev libxext-dev # 2. 下载并解压libgraph wget http://download.savannah.gnu.org/releases/libgraph/libgraph-1.0.2.tar.gz tar -xzvf libgraph-1.0.2.tar.gz cd libgraph-1.0.2 # 3. 编译安装 ./configure make sudo make install # 安装到系统目录 sudo ldconfig # 更新动态链接缓存 ``` #### 方法2:直接安装预编译包(Debian/Ubuntu) ```bash sudo apt-get install libgraphics-dev libgraph-dev ``` --- ### ✅ 二、验证安装 创建测试文件 `test.c`: ```c #include <graphics.h> int main() { int gd = DETECT, gm; initgraph(&gd, &gm, NULL); // 初始化图形模式 circle(200, 200, 100); // 画圆 (圆心x,y, 半径) delay(5000); // 显示5秒 closegraph(); // 关闭图形模式 return 0; } ``` 编译并运行: ```bash gcc test.c -lgraph -o test # 链接libgraph ./test # 运行程序(会弹出图形窗口) ``` > ✅ 预期结果:显示一个圆形窗口,持续5秒后关闭[^1][^5]。 --- ### ⚠️ 三、常见问题解决 1. **编译错误:`graphics.h: No such file`** ```bash sudo find / -name graphics.h # 确认头文件位置 # 若路径非标准(如/usr/local/include),编译时添加路径: gcc test.c -I/自定义路径 -lgraph -o test ``` 2. **运行时错误:`error while loading shared libraries`** ```bash sudo ldconfig # 更新缓存后重试 ``` 3. **无法打开图形窗口** 确保已安装X11服务,远程用户需启用X11转发(如SSH加`-X`参数)。 --- ### 🔄 四、替代方案(推荐) `graphics.h`是过时的TC,建议迁移到现代图形: 1. **SDL2** (跨平台,支持硬件加速) ```c #include <SDL2/SDL.h> // 示例:创建窗口 SDL_Init(SDL_INIT_VIDEO); SDL_Window* window = SDL_CreateWindow("SDL Demo", 0, 0, 800, 600, SDL_WINDOW_SHOWN); SDL_Delay(3000); SDL_DestroyWindow(window); SDL_Quit(); ``` **安装SD**:`sudo apt-get install libsdl2-dev` 2. **SFML** (C++,易用的多媒体) **安装**:`sudo apt-get install libsfml-dev` --- ### 💡 关键提示 - **兼容性**:`libgraph`基于X11,在Wayland新系统可能不稳定[^2]。 - **编程建议**:新项目优先选择SDL/SFML等维护活跃的,它们支持更丰富的功能(纹理、音频等)[^4]。 - **游戏开发**:考虑跨平台引擎如Raylib(`sudo apt install libraylib-dev`)。 > 源码编译遇到问题可参考[libgraph官方文档](http://libgraph.sourceforge.net/),或在社区咨询具体错误日志[^5]。 --- **相关问题** 1. 如何在Linux中使用SDL2实现2D动画? 2. 迁移TC图形程序到现代的最佳实践是什么? 3. Linux下有哪些轻量级C/C++游戏开发框架? 4. 如何解决X11图形程序的远程显示问题? 5. 使用CMake编译SDL2项目的正确配置方式? [^1]: [libgraph源码安装步骤](http://download.savannah.gnu.org/releases/libgraph/) [^2]: [SDL_image安装方法](https://www.libsdl.org/projects/SDL_image/) [^5]: [依赖项和编译排错](http://download.csdn.net/download/wxwph/3278645)
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值