《铜豌豆 Linux》11.8.1 版本发布

《铜豌豆 Linux》11.8.1 版本发布

https://www.atzlinux.com/News/2023/20231011.htm

《铜豌豆 Linux》 11.8.1 版本发布

首页
一键安装
软件
下载
新闻
使用技巧
常见问题
参与开发
开源贡献
友情链接
捐赠
反馈
联系方式


《铜豌豆 Linux》11.8.1 版本发布

2023-10-11

《铜豌豆 Linux》操作系统是面向中文用户的桌面操作系统,基于 Debian 制作。

2023-10-07, Debian 官方发布 11.8 版本:
https://www.debian.org/News/2023/2023100702

铜豌豆 Linux 跟进发布 11.8.1。

铜豌豆软件源同时发布匹配 Debian 11 的软件源 11.8.1 版本。

安装文件 iso 下载

安装文件大小约 3.7 G

下载完成后,可进行完整性验证,支持校验和、公钥签名验证。 验证所需 相关文件可以访问这里获取。

该 iso 安装文件,支持目前国内市场上常用的 Intel/amd 64 位 CPU。


系统默认用户:wo

系统默认创建两个用户, 一个是名字为 wo 的普通用户; 一个是具有最高系统权限的管理员用户 root 。
  • 默认普通用户名为: wo默认密码为:
  • debian168;
    最后一个字符是英文的分号
  • root 用户可以直接登录系统, 默认密码为:
  • debian-cn;168
    中间为英文的连接符,英文的分号


安全更新

iso 文件调整及优化

  • 增加 gnome 子版本
  • gnome 子版本只包含 gnome 桌面环境,在登录界面右上角,可以选择 gnome 普通模式和 gnome 经典模式登录。 该子版本的中文应用软件,和其它普通桌面子版本一致。

主要应用软件包版本增加

  • qmmp 音乐播放器

主要应用软件包版本更新

  • 腾讯 QQ 官方版本 linuxqq
  • 3.2.1-17153
  • 钉钉官方版本 com.alibabainc.dingtalk
  • 7.1.0.30922
  • WPS wps-office
  • 11.1.0.11704
  • 霞鹜文楷中文字体 fonts-lxgw-wenkai
  • 1.311+repack-1
  • lx-music-desktop 音乐播放器
  • 2.5.0
  • mintstick U 盘制作工具
  • 1.5.6-1~bpo11+1

铜豌豆软件包主要调整:

  • 铜豌豆补丁包
  • 11.8.1.4 版
    • /etc/atzlinux_version 文件, 版本号设置为 11.8.1

主要系统软件包版本更新

  • 内核
  • 5.10.0-26-rt-amd64 #1 SMP PREEMPT_RT Debian 5.10.197-1 (2023-09-29) x86_64 GNU/Linux
  • 升级硬件驱动固件版本到最新版本 20230515-3
  • pci.ids 软件包更新至 0.0~2023.08.10-1
  • usb.ids 软件包更新至 2023.08.24-1
  • media-types 软件包更新至 10.1.0

子版本软件包增加:

  • 纯文字版

  • p7zip-rar
    ffmpeg
    i2c-tools
  • xfce 精简版
  • xfce 完整版

  • p7zip-rar
    ffmpeg
    firmware-nouveau-atzlinux
    mousewheel
    fonts-open-sans
    libpipewire-0.3-0
    hardinfo
    qmmp
    okular
  • 三合一版

  • p7zip-rar
    ffmpeg
    firmware-nouveau-atzlinux
    mousewheel
    fonts-open-sans
    libpipewire-0.3-0
    hardinfo
    qmmp
    okular
  • KDE 版

  • p7zip-rar
    kio-fuse
    ffmpeg
    dolphin-plugins
    kio-extras
    kamera
    firmware-nouveau-atzlinux
    mousewheel
    fonts-open-sans
    libpipewire-0.3-0
    hardinfo
    qmmp
    okular

子版本软件包删除:

  • 纯文字版
  • xfce 精简版
  • fcitx-frontend-gtk2
  • xfce 完整版
  • fcitx-frontend-gtk2
  • 三合一版
  • fcitx-frontend-gtk2
  • KDE 版
  • fcitx-frontend-gtk2
NVIDIA 显卡驱动
铜豌豆默认安装 NVIDIA 显卡开源驱动 nouveau,软件包名为:xserver-xorg-video-nouveau。

如需要安装 NVIDIA 闭源驱动,请参阅: 安装 NVIDIA 显卡厂家闭源驱动及相关软件

《铜豌豆 Linux 11 版本》维护期

该版本维护期至 2026 年 8 月。

Debian 11 版 于 2021 年 8 月正式发布后,Debian 官方将维护三年至 2024 年 8 月 ,随后 Debian 的 LTS 团队将再继续维护两年。 LTS 维护相关情况,请参阅: https://wiki.debian.org/LTS

铜豌豆 Linux 11 版本系列,将跟随 Debian 官方和 Debian LTS 的版本继续进行维护和更新发布。

无缝升级

之前安装有 铜豌豆 11.x 版本的用户,无需重新安装操作系统。

请用 root 用户运行下列命令,一键更新所有软件包到最新版本:

apt update
apt upgrade

iso 文件信息:

已知问题
  • 首次点击蓝牙图标,会有是否自动启动蓝牙的提示
  • 有蓝牙的机器,请选择自动启动蓝牙。
问题&需求反馈
铜豌豆 Linux 项目是一个开源项目,采用开源社区模式开发,非常欢迎大家反馈在使用过程中遇到的任何问题。 各类建议和需求也非常欢迎反馈。

https://gitee.com/atzlinux/debian-cn/issues

感谢
  • 感谢各位捐赠人对 《铜豌豆 Linux》项目的积极捐赠
  • 捐赠列表: https://www.atzlinux.com/juanzeng.htm#liebiao

    大家的捐赠既是对 铜豌豆 Linux 的认可,也是对 铜豌豆 Linux 支持, 是 铜豌豆 Linux 开源项目持续前进的动力。

其它事项
root 账号登录系统
  1. 点击象棋、围棋程序,会报错
  2. 默认声音图标显示为静音
  3. 无法打开声音,不能够播放声音
  4. 点击程序菜单,设置--》用户和组
  5. 账号操作,无法成功,请用 普通用户 登录系统后使用该程序,届时会出现 root 密码输入提示框。
以上为正常现象。这是由于 Debian 的安全机制,不建议 root 用户直接使用图形应用程序。请用普通账号登录系统使用相关功能。

《铜豌豆 Linux》官网二维码
《铜豌豆 Linux》官网二维码
版权所有 © 《铜豌豆 Linux》 项目网站版权协议为(CC BY-NC-ND 4.0)

<think>我们正在处理一个关于C/C++链接错误的查询:"main 已经在 test_11.8.1.obj 中定义"。这个错误通常发生在多个源文件都定义了main函数,导致链接器在合并目标文件时发现多个main函数定义。 根据用户提供的引用,虽然引用内容主要是关于Java和Python的,但我们可以忽略这些引用,因为用户的问题明显是C/C++链接错误。因此,我们将基于C/C++的常见情况来解答。 错误原因分析: 在C/C++程序中,main函数是程序的入口点,每个可执行程序只能有一个main函数(对于标准程序,即int main()或int main(int, char**)等形式)。如果多个源文件都包含了main函数的定义,那么在链接这些目标文件时,链接器会发现多个main函数,从而报错。 解决方法: 1. 检查项目中的源文件,确保只有一个源文件包含main函数。如果有多个源文件包含main函数,需要确定哪个是程序的主入口,其他的应该删除或修改(例如,可以将用于测试的main函数改为其他名称,或者使用条件编译)。 2. 如果是因为在头文件中定义了main函数(虽然不常见),那么需要将头文件中的main函数定义移除,头文件通常只应包含声明,而不是定义。 3. 如果是多个源文件都需要有main函数(例如,每个源文件都是一个独立的单元测试程序),那么不应该将它们一起编译链接成一个可执行文件。应该分别编译每个源文件为独立的可执行文件。 4. 还有一种可能是,在某个源文件中定义了一个名为main的函数,而这个文件本不应该包含main函数,可能是误写。检查所有源文件,找出多余的main函数并删除或重命名。 根据用户的问题描述,错误发生在test_11.8.1.obj中,这意味着在test_11.8.1.cpp(或类似名称的源文件)中定义了一个main函数,而另一个文件也定义了main函数。 步骤: 1. 检查项目中的所有源文件,查找main函数定义。 2. 保留一个作为程序入口的main函数,其他的要么删除,要么改名(例如改为test_main等)。 另外,如果用户使用IDE(如Visual Studio),确保项目中只有一个main函数,并且没有将多个包含main函数的文件加入到同一个项目中(对于多个独立程序,应该创建多个项目)。 如果用户正在编写单元测试,并且每个测试文件都有自己的main函数,那么应该为每个测试文件单独编译,或者使用测试框架(如Google Test),这样测试框架会提供main函数,而用户不需要自己写。 如果用户确实需要在一个项目中包含多个main函数(比如教学示例),那么可以使用条件编译,例如: 在某个文件中: #ifdef MAIN_TEST1 int main() { // 测试1 } #endif 在另一个文件中: #ifdef MAIN_TEST2 int main() { // 测试2 } #endif 然后确保每次编译时只定义一个宏(如编译第一个文件时加上-DMAIN_TEST1,编译第二个文件时加上-DMAIN_TEST2),这样就不会同时编译两个main函数。 但是,更常见的做法是将每个示例单独放在不同的项目中。 因此,针对用户的问题,最直接的解决方法是定位重复的main函数定义,并删除或重命名其中一个。 由于用户没有提供具体的项目结构,我们只能给出一般性建议。 相关问题: 1. C/C++程序为什么只能有一个main函数? 2. 如何在一个解决方案中管理多个可执行项目? 3. 如何正确使用条件编译来避免函数重定义? 4. 常见的链接错误有哪些?如何解决? </think>### 解决 "main 已经在 test_11.8.1.obj 中定义" 的方法 这个错误是由于 **多个源文件定义了`main`函数** 导致的。在 C/C++ 项目中,`main`函数是程序的唯一入口点,链接器发现多个目标文件包含了`main`的定义时会报此错误。以下是解决方法: #### 1. **检查重复的 `main` 函数** - 排查项目中所有源文件(`.cpp` 或 `.c`),确保 **只有一个文件包含 `main` 函数**。 - 常见问题场景: - 多个文件定义了 `int main()`。 - 测试文件(如 `test_11.8.1.cpp`)被错误包含在主项目中。 #### 2. **分离测试代码** - 若 `test_11.8.1.obj` 是单元测试文件: - 将其移出主项目,单独编译为测试可执行文件。 - 使用条件编译隔离测试代码: ```cpp // 在 test_11.8.1.cpp 中 #ifdef UNIT_TEST // 仅在测试时启用 int main() { /* 测试代码 */ } #endif ``` - 编译测试文件时添加宏定义:`g++ -DUNIT_TEST test_11.8.1.cpp`。 #### 3. **正确组织项目结构** - **主程序**:仅保留一个包含 `int main()` 的文件(如 `main.cpp`)。 - **库代码**:其他文件应只包含函数/类定义,不含 `main`。 - **链接规范**:避免在头文件中定义函数(除非使用 `inline` 或 `static`)。 #### 4. **构建系统配置** - **Makefile/CMake**:确保测试文件未加入主目标链接列表。 ```makefile # Makefile 示例:主程序不链接测试文件 main_app: main.cpp lib.cpp g++ -o $@ $^ test_app: test_11.8.1.cpp g++ -o $@ $^ ``` - **IDE 设置**(如 Visual Studio): - 右键测试文件 → 属性 → 从生成中排除。 #### 5. **检查第三方库** - 若使用外部库,确认其未包含 `main` 函数(某些库可能提供测试入口)。 #### 示例修正 假设项目结构如下: ``` src/ ├── main.cpp // 正确:唯一的 main() ├── lib.cpp // 无 main() └── test/ └── test_11.8.1.cpp // 错误:包含 main() ``` 解决方案: 1. 将 `test_11.8.1.cpp` 移出主项目编译列表。 2. 单独编译测试文件:`g++ test/test_11.8.1.cpp -o test_app`。 ### 相关问题 1. **如何避免 C++ 中的多重定义错误?** 2. **单元测试与主项目分离的最佳实践是什么?** 3. **CMake 中如何管理多个可执行目标(如主程序+测试)?** 4. **静态成员变量在多个源文件中如何正确初始化?**[^1] [^1]: 静态成员变量需要在类外单独初始化,否则可能引发链接错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值