如何从源代码修复内部版本TinyCCompiler(TCC)中crt1.o、crti.o的错误?

如何从源代码修复内部版本TinyCCompiler(TCC)中crt1.o、crti.o的错误?,c,gcc,cmake,crt,tcc,C,Gcc,Cmake,Crt,Tcc,如何从源代码修复内部版本TinyCCompiler(TCC)中crt1.o、crti.o的错误 我正在我的桌面系统(ubuntu)和服务器(centos)上进行测试。 在两个操作系统上,显示错误 错误: 细节: guest@Base:~/Gits/tcc编译器$。/configure--prefix=build Binary directory build/bin TinyCC directory build/lib/tcc Library directory build/li

如何从源代码修复内部版本TinyCCompiler(TCC)中crt1.o、crti.o的错误

我正在我的桌面系统(ubuntu)和服务器(centos)上进行测试。 在两个操作系统上,显示错误

错误: 细节: guest@Base:~/Gits/tcc编译器$。/configure--prefix=build

Binary  directory   build/bin
TinyCC directory    build/lib/tcc
Library directory   build/lib
Include directory   build/include
Manual directory    build/man
Doc directory       build/share/doc/tcc
Target root prefix  
Source path      /home/guest/Gits/tcc-compiler
C compiler       gcc
CPU              x86-64
Big Endian       no
gprof enabled    no
cross compilers  no
use libgcc       no
Creating config.mak and config.h
config.h is unchanged
guest@Base:~/Gits/tcc编译器$sudo make

....
....
guest@Base:~/Gits/tcc编译器$sudo make安装

mkdir -p "build/bin"
install -s -m755 tcc "build/bin"
mkdir -p "build/man/man1"
install tcc.1 "build/man/man1"
mkdir -p "build/lib/tcc"
mkdir -p "build/lib/tcc/include"
install -m644 libtcc1.a "build/lib/tcc"
install -m644 include/stdarg.h include/stddef.h include/stdbool.h include/float.h include/varargs.h include/tcclib.h "build/lib/tcc/include"
mkdir -p "build/share/doc/tcc"
install -m644 tcc-doc.html "build/share/doc/tcc"
mkdir -p "build/lib"
install -m644 libtcc.a "build/lib"
mkdir -p "build/include"
install -m644 libtcc.h "build/include"
guest@Base:~/Gits/tcc编译器$cat test2.c

#include <tcclib.h>

int main()
{
    printf("Hello World\n");
    return 0;
}
$find/usr/-name crti*

/usr/mipsel-linux-gnu/lib/crti.o
/usr/lib32/crti.o
/usr/libx32/crti.o
/usr/lib/i386-linux-gnu/crti.o
/usr/lib/x86_64-linux-gnu/crti.o
$find/usr/-name crt1*

/usr/mipsel-linux-gnu/lib/crt1.o
/usr/lib32/crt1.o
/usr/libx32/crt1.o
/usr/x86_64-w64-mingw32/lib/crt1.o
/usr/x86_64-w64-mingw32/lib/crt1u.o
/usr/i686-w64-mingw32/lib/crt1.o
/usr/i686-w64-mingw32/lib/crt1u.o
/usr/lib/i386-linux-gnu/crt1.o
/usr/lib/x86_64-linux-gnu/crt1.o
(完整命令可在上获得)

如何修复错误


我可以使用
sudo apt install tcc
安装tcc(没有错误和错误)

但我想从源代码安装tcc。(此错误)


新更新 在tcc.h文件中:

#define CONFIG_TCC_CRT_PREFIX CONFIG_SYSROOT "/usr/lib"
我正在将
/usr/lib
更改为
/usr/lib/x86\u 64-linux-gnu

$build/bin/tcc test.c-运行

Hello World
$/build/bin/tcc test.c
新更新
如何修复未找到包含文件的错误?!
相关问题:

LuaDist项目旨在使用CMake构建一个完整的Lua生态系统。因此,您应该使用CMake构建系统,而不是原始的makefile。通常,您将执行以下CMake调用

$ mkdir _build && cd _build
$ cmake .. -DCMAKE_INSTALL_PREFIX=_install
$ cmake --build . --target install

在此之后,您应该在_install/bin中有工作的tcc,这看起来像是您应该向您试图构建的程序的维护人员询问的事情。我没有访问他们的权限。stackoverflow处可用的
tcc
标签@ChristianGibbons,github没有
问题
!仅仅因为我们有[tcc]标签并不意味着所有关于
tcc
的问题都在这里的主题上。很抱歉但你有一个来源分布;很可能它包含有关如何联系维护人员的信息。FWIW,在我看来,它像是一个配置/安装问题。
\include\include int main(){printf(“Hello World\n”);return 0;}
,$/tcc../test.c
。/test.c:1:未找到包含文件stdlib.h
\include int main(){printf(“Hello World\n”);返回0;}
$。/tcc../test.c
。/test.c:1:未找到包含文件“tcclib.h”
@drahospHow修复未找到包含文件的错误@drahosp@C-编译器:停止泛滥。关于你的问题,一个概念就足够了。如果回答者想看,他会这样做。但不要坚持。好的,对不起,但我需要一个小的编译器对于C..@Tsyvarev
Hello World
tcc: undefined symbol '__libc_csu_fini'
tcc: undefined symbol '__libc_csu_init'
tcc: undefined symbol '__libc_start_main'
tcc: undefined symbol 'printf'
#include <tcclib.h>
int main()
{
    printf("Hello World\n");
    return 0;
}
test.c:1: include file 'tcclib.h' not found
$ mkdir _build && cd _build
$ cmake .. -DCMAKE_INSTALL_PREFIX=_install
$ cmake --build . --target install