Cygwin上建立交叉编译环境的问题

老Gay 2006-05-10 05:29:06
在Cygwin上建立交叉编译环境使用了:binutils-2.11.2, gcc-3.0.4, glibc-2.2.5.
LINUX内核为2.4.8
环境已经建立,但是在编译程序通过后链接时,出现以下错误:
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__dup'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `utime'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libpthread.so: undefined reference to `__libc_fcntl'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__getcwd'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__dup2'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__unlink'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libpthread.so: undefined reference to `__libc_read'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__xstat64'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libpthread.so: undefined reference to `pipe'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__lxstat'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__chmod'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__isatty'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__statfs'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libpthread.so: undefined reference to `__libc_open64'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__chdir'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__readlink'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__mkdir'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libpthread.so: undefined reference to `__poll'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libpthread.so: undefined reference to `__libc_close'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__statvfs64'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__pipe'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libpthread.so: undefined reference to `__libc_open'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__chown'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__xmknod'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__lxstat64'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__ttyname_r'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libpthread.so: undefined reference to `__libc_lseek'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__rmdir'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__fstatfs'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__fxstat64'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__fxstat'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libpthread.so: undefined reference to `__libc_write'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__access'
/home/FiTSA-HG/sh-linux/tools/lib/gcc-lib/sh3-linux/3.0.4/../../../../sh3-linux/
lib/libc.so.6: undefined reference to `__fstatvfs64'
collect2: ld returned 1 exit status
make: *** [] Error 1

请问这个问题怎么解决啊?
在线等,分不够可以另开贴送分
...全文
902 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
SmallBigCat 2006-12-08
  • 打赏
  • 举报
回复
呵呵,cygwin与vmware还是有些不一样吧,cygwin编译出来的是windows版本的
老Gay 2006-05-22
  • 打赏
  • 举报
回复
zhangbo123(男孩,你要前进啊) ( ) 信誉:100 2006-05-19 13:10:00 得分: 0


主要是很多库文件版本不一致的缘故吧,我以前用的时候也是整了大半天才弄好。


============================
那能具体点说说么?
可能是可能是哪些方面的原因呢?
对库文件的版本有什么要求呢?
jmsting 2006-05-22
  • 打赏
  • 举报
回复
打个补丁glibc-2.2.5-cygwin.patch试试!
knoradji 2006-05-19
  • 打赏
  • 举报
回复
Cygwin上建立交叉编译环境的问题
这个东东了,我刚刚装过,编译,下载到目标板运行都通过了。我装地是RPM包

你去这个网址看就可以了http://www.arm9.net/cygwin_arm-linux-gcc_install.asp
zhangbo123 2006-05-19
  • 打赏
  • 举报
回复
主要是很多库文件版本不一致的缘故吧,我以前用的时候也是整了大半天才弄好。
AutoAsm 2006-05-17
  • 打赏
  • 举报
回复
直接用linux
这个鸡肋用起来很不舒服,
以后调试其他程序还会让你吃尽苦头

-------------------

说的不错,还不如用VMWARE
老Gay 2006-05-16
  • 打赏
  • 举报
回复
但是必须在Cygwin下做啊......客户这么要求的.....木办法........
谁来帮帮俺啊.......
liuq 2006-05-13
  • 打赏
  • 举报
回复
我觉得虚拟机上开发也比在cygwin这种不伦不类的环境下好.把太多的时间耗费在环境上没什么意思.
nuclears 2006-05-12
  • 打赏
  • 举报
回复
cygwin下的shell命令可能有问题。
我以前遇到过,它好像不识别../ 这样的路径,另外还有其它的一些shell命令也有问题。
老Gay 2006-05-12
  • 打赏
  • 举报
回复
nuclears(xpl) ( ) 信誉:100 2006-05-12 00:20:00 得分: 0


cygwin下的shell命令可能有问题。
我以前遇到过,它好像不识别../ 这样的路径,另外还有其它的一些shell命令也有问题。



==============

我已经建立了一个SH到BASH的软链接,应该不会是这个问题.....
老Gay 2006-05-11
  • 打赏
  • 举报
回复
编译的程序没有问题~~
在LINUX上可以编译成功的....
但是在我建立的Cygwin环境上编译就会出现以上的问题
不知道是哪里出了问题...
我也希望直接在LINUX上,但是被要求用这个也没办法啊....
qianke 2006-05-10
  • 打赏
  • 举报
回复
直接用linux
这个鸡肋用起来很不舒服,
以后调试其他程序还会让你吃尽苦头
月吻长河 2006-05-10
  • 打赏
  • 举报
回复
你先写个helloworld编译看看有没有问题!
或者把你的程序先在Linux主机上编译看看确定程序没问题
确定是你程序的问题还是编译器安装的问题
资源大于15MB分2次上传。 清晰度一般。加到11章 第12,13章没有。 第1章 嵌入式系统基础. 1.1 嵌入式系统简介 1.1.1 嵌入式系统定义 1.1.2 嵌入式系统与PC 1.1.3 嵌入式系统的特点 1.2 嵌入式系统的发展 1.2.1 嵌入式系统现状 1.2.2 嵌入式系统发展趋势 1.3 嵌入式操作系统与实时操作系统 1.3.1 Linux 1.3.2 uC/OS 1.3.3 Windows CE 1.3.4 VxWorks 1.3.5 Palm OS 1.3.6 QNX 1.4 嵌入式系统选型 第2章 基于ARM9处理器的硬件开发平台 2.1 ARM处理器简介 2.1.1 ARM公司简介 2.1.2 ARM微处理器核 .2.2 ARM9微处理器简介 2.2.1 与ARM7处理器的比较 2.2.2 三星S3C2410X处理器详解 2.3 FS2410开发平台 第3章 创建嵌入式系统开发环境 3.1 嵌入式Linux的开发环境 3.2 Cygwin 3.3 虚拟机 3.4 交叉编译的预备知识 3.4.1 Make命令和Makefile文件 3.4.2 binutils工具包 3.4.3 gcc编译器 3.4.4 Glibc库 3.4.5 GDB 3.5 交叉编译 3.5.1 创建编译环境 3.5.2 编译binutils 3.5.3 编译bootstrap_gcc 3.5.4 编译Glibc 3.5.5 编译完整的gcc 3.5.6 编译GDB 3.5.7 成果 3.5.8 其他交叉编译方法 3.6 通过二进制软件包创建交叉编译环境 3.7 开发套件 第4章 调试嵌入式系统程序 4.1 嵌入式系统调试方法 4.1.1 实时在线仿真 4.1.2 模拟调试 4.1.3 软件调试 4.1.4 BDM/JTAG调试 4.2 ARM仿真器 4.2.1 techorICE ARM仿真器 4.2.2 ARM仿真器工作原理 4.2.3 ARM仿真器的系统功能层次 4.2.4 使用仿真器和ADS Debugger调试ARM开发板 4.3 JTAG接口 4.3.1 JTAG引脚定义 4.3.2 通过JTAG烧写Flash 4.3.3 烧写Flash技术内幕 第5章 Bootloader 5.1 嵌入式系统的引导代码 5.1.1 初识Bootloader 5.1.2 Bootloader的启动流程 5.2 Bootloader之vivi 5.2.1 vivi简介 5.2.2 vivi的配置与编译 5.2.3 vivi代码导读 5.3 Bootloader之U-Boot 5.3.1 U-Boot代码结构分析 5.3.2 编译U-Boot代码 5.3.3 U-Boot代码导读 5.3.4 U-Boot命令 5.4 FS2410的Bootloader 第6章 Linux系统在ARM平台的移植 6.1 移植的概念 6.2 Linux内核结构 6.3 Linux-2.4内核向ARM平台的移植 6.3.1 根目录 6.3.2 arch目录 6.3.3 arch/arm/boot目录 6.3.4 arch/arm/def-configs目录 6.3.5 arch/arm/kernel目录 6.3.6 arch/arm/mm目录 6.3.7 arch/arm/mach-s3c2410目录 6.4 Linux-2.6内核向ARM平台的移植 6.4.1 定义平台和编译器 6.4.2 arch/arm/mach-s3c2410/devs.c 6.4.3 arch/arm/mach-s3c2410/mach-fs2410.c 6.4.4 串口输出 6.5 编译Linux内核 6.5.1 代码成熟等级选项 6.5.2 通用的一些选项 6.5.3 和模块相关的选项 6.5.4 和块相关的选项 6.5.5 和系统类型相关的选项 6.5.6 和总线相关的选项 6.5.7 和内核特性相关的选项 6.5.8 和系统启动相关的选项 6.5.9 和浮点运算相关的选项 6.5.10 用户空间使用的二进制文件格式的选项 6.5.11 和电源管理相关的选项 6.5.12 和网络协议相关的选项 6.5.13 和设备驱动程序相关的选项 6.5.14 和文件系统相关的选项 6.5.15 和程序性能分析相关的选项 6.5.16 和内核调试相关的选项 6.5.17 和安全相关的选项 6.5.18 和加密算法相关的选项 6.5.19 库选项 6.5.20 保存内核配置 第7章 Linux设备驱动程序开发 7.1 设备驱动概述 7.1.1 设备驱动和文件系统的关系 7.1.2 设备类型分类 7.1.3 内核空间和用户空间.. 7.2 设备驱动基础 7.2.1 设备驱动中关键数据结构 7.2.2 字符设备驱动开发 第8章 网络设备驱动程序开发 8.1 网络设备驱动程序简介 8.1.1 device数据结构 8.1.2 sk_buff数据结构 8.1.3 内核的驱动程序接口 8.2 以太网控制器CS8900A 8.2.1 特性 8.2.2 工作原理 8.2.3 电路连接 8.2.4 引脚 8.2.5 操作模式 8.3 网络设备驱动程序实例 8.3.1 初始化函数 8.3.2 打开函数 8.3.3 关闭函数 8.3.4 发送函数 8.3.5 接收函数 8.3.6 中断处理函数 第9章 USB驱动程序开发 9.1 USB驱动程序简介 9.1.1 USB背景知识 9.1.2 Linux内核对USB规范的支持 9.1.3 OHCI简介 9.2 Linux下USB系统文件结点 9.3 USB主机驱动结构 9.3.1 USB数据传输时序 9.3.2 USB设备连接/断开时序 9.4 主要数据结构及接口函数 9.4.1 数据传输管道 9.4.2 统一的USB数据传输块 9.4.3 USBD数据描述 9.4.4 USBD与HCD驱动程序接口 9.4.5 USBD层的设备管理 9.4.6 设备类驱动与USBD接口 9.5 USBD文件系统接口 9.5.1 设备驱动程序访问 9.5.2 设备拓扑访问 9.5.3 设备信息访问 9.6 设备类驱动与文件系统接口 9.7 USB HUB驱动程序 9.7.1 HUB驱动初始化 9.7.2 HUB Probe相关函数 9.8 OHCI HCD实现 9.8.1 OHCI驱动初始化 9.8.2 与USBD连接 9.8.3 OHCI根HUB 9.9 扫描仪设备驱动程序 9.9.1 USBD接口 9.9.2 文件系统接口 9.10 USB主机驱动在S3C2410X平台的实现 9.10.1 USB主机控制器简介 9.10.2 驱动程序的移植 第10章 图形用户接口 10.1 嵌入式系统中的GUI简介 10.1.1 MicroWindows 10.1.2 MiniGUI 10.1.3 Qt/Embedded 10.2 MiniGUI编程 10.2.1 MiniGUI移植 10.2.2 MiniGUI编程 10.3 初识Qt/Embedded 10.3.1 Qt介绍 10.3.2 系统要求 10.3.3 Qt的架构 10.4 Qt/Embedded嵌入式图形开发基础 10.4.1 建立Qt/Embedded 开发环境 10.4.2 认识Qt/Embedded开发环境 10.4.3 窗体 10.4.4 对话框 10.4.5 外形与感觉 10.4.6 国际化 10.5 Qt/Embedded实战演练 10.5.1 安装Qt/Embedded工具开发包 10.5.2 交叉编译Qt/Embedded库 10.5.3 Hello,World 10.5.4 发布Qt/Embedded程序到目标板 10.5.5 添加一个Qt/Embedded应用到QPE 第11章 Java虚拟机的移植 11.1 Java虚拟机概述 11.1.1 Java虚拟机的概念 11.1.2 J2ME 11.1.3 KVM 11.2 Java虚拟机的移植 11.2.1 获得源码 11.2.2 编译环境建立 11.2.3 JDK的安装 11.2.4 KVM的移植及编译 11.2.5 KVM的测试 11.3 其他可选的虚拟机 11.4 性能优化

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧