musl

How to compile a static musl binary of a Rust project with native dependencies?

我是研究僧i 提交于 2021-01-21 07:43:28
问题 I have a project with dependencies on Hyper and Diesel, and because of that, on native libraries OpenSSL and libpq. The project builds on nightly Rust because it uses compiler plugins. My current attempt is to build on a Docker container. I have the MUSL libc and the libraries make 'd and installed with prefix /usr/local/musl . I run cargo with the following command: (Not sure if some of the options are redundant, I'm not too well-versed with the compiler chain, and not even sure if they end

Building MariaDB with musl: /usr/bin/ld cannot find -lgcc_s

左心房为你撑大大i 提交于 2020-12-13 17:55:53
问题 I am trying to build MariaDB v10.3 with a musl tool chain on x86_64 Debian kernel v4.19. I have mainly been using the musl-gcc gcc wrapper to achieve this. The relevant packages I installed are as follows: musl (1.1.21-2): standard C library musl-dev (1.1.21-2): standard C library development files musl-tools (1.1.21-2): standard C library tools To build MariaDB, I first run: CC=/usr/bin/musl-gcc cmake ../ -DWITHOUT_TOKUDB=1 which exits cleanly, and then I follow that up with: make CC=/usr

Building MariaDB with musl: /usr/bin/ld cannot find -lgcc_s

五迷三道 提交于 2020-12-13 17:54:47
问题 I am trying to build MariaDB v10.3 with a musl tool chain on x86_64 Debian kernel v4.19. I have mainly been using the musl-gcc gcc wrapper to achieve this. The relevant packages I installed are as follows: musl (1.1.21-2): standard C library musl-dev (1.1.21-2): standard C library development files musl-tools (1.1.21-2): standard C library tools To build MariaDB, I first run: CC=/usr/bin/musl-gcc cmake ../ -DWITHOUT_TOKUDB=1 which exits cleanly, and then I follow that up with: make CC=/usr

Building MariaDB with musl: /usr/bin/ld cannot find -lgcc_s

纵然是瞬间 提交于 2020-12-13 17:51:36
问题 I am trying to build MariaDB v10.3 with a musl tool chain on x86_64 Debian kernel v4.19. I have mainly been using the musl-gcc gcc wrapper to achieve this. The relevant packages I installed are as follows: musl (1.1.21-2): standard C library musl-dev (1.1.21-2): standard C library development files musl-tools (1.1.21-2): standard C library tools To build MariaDB, I first run: CC=/usr/bin/musl-gcc cmake ../ -DWITHOUT_TOKUDB=1 which exits cleanly, and then I follow that up with: make CC=/usr

Building MariaDB with musl: /usr/bin/ld cannot find -lgcc_s

别来无恙 提交于 2020-12-13 17:50:59
问题 I am trying to build MariaDB v10.3 with a musl tool chain on x86_64 Debian kernel v4.19. I have mainly been using the musl-gcc gcc wrapper to achieve this. The relevant packages I installed are as follows: musl (1.1.21-2): standard C library musl-dev (1.1.21-2): standard C library development files musl-tools (1.1.21-2): standard C library tools To build MariaDB, I first run: CC=/usr/bin/musl-gcc cmake ../ -DWITHOUT_TOKUDB=1 which exits cleanly, and then I follow that up with: make CC=/usr

鸿蒙OS的系统调用是如何实现的? | 解读鸿蒙源码

感情迁移 提交于 2020-11-26 08:59:33
本文将首先带您回顾“系统调用”的概念以及它的作用,然后从经典的Hello World开始,逐行代码层层分析——鸿蒙OS的系统调用是如何实现的。 写在前面 9月10号 华为开发者大会(HDC)上,华为向广大开发者宣布了鸿蒙2.0系统开源,源码托管在国内源码托管平台“码云”上: https://openharmony.gitee.com/ 我也第一时间从码云下载了鸿蒙系统的源代码,并进行了编译和分析。当晚回看了HDC上的关于鸿蒙OS 2.0的主题演讲,个人最为好奇的是——这次开源的liteos-a内核。因为它支持了带MMU(内存管理单元)的ARM Cortex-A设备;我们知道,在带有MMU的处理器上,可以实现虚拟内存,进而实现进程之间的隔离、内核态和用户态的隔离等等这些功能。 系统调用简介 引用一张官方文档中的图片,看看liteos-a内核在整个系统中的位置。 这次开源的鸿蒙系统中同时包含了两个内核,分别是liteos-a和liteos-m,其中的liteos-m和以前开源的LiteOS相当,而liteos-a是面向应用处理器的操作系统内核,提供了更为丰富的内核功能。此前已经开源的LiteOS,只是一个实时操作系统(RTOS),它主要面向的是内存和闪存配置都比较低的微控制器。 我们先来简单回顾一下操作系统课程的一个知识点——系统调用,以及为什么会有系统调用?它的作用是什么

做一切为了好玩的极客,TiDB Committer 王贺的心路历程

社会主义新天地 提交于 2020-11-20 16:49:53
王贺看起来是一个不走寻常路的大三学生,从小就喜欢计算机,对于很多大学才开始接触编程的同学来说,高三就可以自己做一个 Linux 发行版无疑是同龄人中的佼佼者了。 今天就来了解一下 TiDB Committer,DDL SIG 的 xhebox 的贡献之路。 当时怎么想到要自己做一个 Linux 发行版呢? 开始接触 Linux 的时候我觉得 glibc 太大了,下载下来有几十 MB 所以想换掉它。当时正好接触到了除了 glibc 以外的 libc,我就萌生了自己做发行版这个想法,甚至还想把 GNU 所有的东西都换掉,虽然最后失败了,但发行版还是做了下来。 我从小就喜欢折腾这些东西,小学的时候用 Discuz 搭建过网站,高中时折腾苹果系统,这些都是因为兴趣所以自学的,也给我高三做 Linux 发行版打下了基础。我也是那个时候开始了解到 Go,我的 Linux 发行版的包管理器就是用 Go 写的,最近也开始在学习 Rust。 你做的 linux 发行版现在可以下载到吗? 以前是可以在 GitHub 上下载,现在不行了,我没有维护二进制包管理器,如果别人想用的话恐怕需要见到我本人,我可以用硬盘复制一份:)主要原因是维护二进制包非常耗时间,以前有 600 个包,现在被我削减到只有 300 个。我平时上课做实验也没有这么多时间, 几百个包都是手动编译,如果开源再维护,那可能没办法做其他事了

Alpine Linux 使用简介

耗尽温柔 提交于 2020-10-07 05:18:59
一、Alpine简要介绍 Alpine 的意思是“高山的”,比如 Alpine plants高山植物,Alpine skiing高山滑雪、the alpine resort阿尔卑斯山胜地。 Alpine Linux 网站首页注明“Small!Simple!Secure!Alpine Linux is a security-oriented, lightweight Linux distribution based on musl libc and busybox.”概括了以下特点: 1、 小巧: 基于Musl libc和busybox,和busybox一样小巧,最小的Docker镜像只有5MB; 2、 安全 :面向安全的轻量发行版; 3、 简单 :提供APK包管理工具,软件的搜索、安装、删除、升级都非常方便。 4、适合 容器使用 :由于小巧、功能完备,非常适合作为容器的基础镜像。 <!--more--> 二、Alpine更新国内源 # Alpine的源文件为: /etc/apk/repositories, # 默认的源地址为: http://dl-cdn.alpinelinux.org/ 可以编辑源文件 /etc/apk/repositories, 采用国内阿里云的源,文件内容为: https://mirrors.aliyun.com/alpine/v3.9/main/ https

VisualStudio 解决首次调试 docker 的 vs2017u5 exists, deleting 太慢问题

瘦欲@ 提交于 2020-08-10 18:05:36
首次调试需要下载一些有趣的内容用于辅助调试,这部分内容大概有 100 多 M 在 VS 里面需要在半天。本文告诉大家如何在外面使用其他强大的下载工具下载完成之后复制回去 本文特别参考了 visual studio 容器工具首次加载太慢 vsdbg\vs2017u5 exists, deleting 的解决方案 - microestc - 博客园 的方法,在此基础上做一点补充 可以看到的输出窗口信息如下 1>Doubi -> D:\lindexi\Doubi\Doubi\bin\Debug\netcoreapp3.1\Doubi.dll 1>C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NonInteractive -NoProfile -WindowStyle Hidden -ExecutionPolicy RemoteSigned -File "C:\Users\lindexi\AppData\Local\Temp\GetVsDbg.ps1" -Version vs2017u5 -RuntimeID linux-x64 -InstallPath "C:\Users\lindexi\vsdbg\vs2017u5" 1>Info: Using vsdbg version '16.6.20415.1' 1>Info

编译安装busybox

非 Y 不嫁゛ 提交于 2020-08-08 19:07:02
下载busybox x86可直接下载,运行 http://www.busybox.net/downloads/binaries/1.31.0-defconfig-multiarch-musl/ arm+KylinV4.0.2需要编译安装 apt install atpitude aptitude install libncurses5-dev 下载源码:make menuconfig;选择Build Busybox as a static binary(no shared libs) make && make install mips+NeoKylinV7需要编译安装 yum -y install ncurses* make menuconfig;选择Build Busybox as a static binary(no shared libs) yum install -y glibc-n32-static.mips64el yum install -y glibc-static.mips64el make && make install 链接: https://pan.baidu.com/s/1EeGv6Hqr5HH1MS-D_OhzIA 提取码:rkt9 来源: oschina 链接: https://my.oschina.net/u/4394252/blog/4285382