如何使用musl正确编译uClibc ++?

时间:2019-06-17 21:23:40

标签: c++ gcc compiler-errors compilation uclibc

我需要使用uClibc ++和musl编译c ++代码。 为此,首先我必须编译uClibc ++ agains musl。 但是尝试这样做时,我遇到了一些错误,例如缺少__snprintf_chk__cxa_thread_atexit_impl

简而言之:您应该如何正确做? 我很确定这与g ++标志有关,但是哪个呢?

这是我到目前为止尝试过的(针对mips):

  1. 我为musl编译了musl
  2. 将musl-gcc传递给uClibc ++ make的CROSS_COMPILE参数。我还在同一路径中创建了musl-g ++(基本上与具有相同.spec文件的musl-gcc完全相同,但使用的是mips-linux-gnu-g ++而不是gcc) 我的.spec文件是musl自动生成的文件,我没有记录。
  3. 这是我的编译命令:

        make install CROSS_COMPILE=/path/to/my/musl/mips   CPU_CFLAGS=' -lsupc++ -lgcc -nostdlib -nostdinc -nostdinc++ -mmusl -I/path/to/musl/include -Os -fno-use-cxa-atexit -fno-use-stack-protector -D_FORTIFY_SOURC=0 -L/path/to/my/musl/lib -lc
    

输出:

In function '__cxa_thread_atexit':
Undefiend reference to __cxa_thread_atexit_impl
In function 'd_append_chk':
Undefiend reference to __sprintf_chk

0 个答案:

没有答案