Nodejs [已撸]Cubieboard全志A10 Armv7安装Cloud9出错,求助求助~貌似是libxml2-dev的问题

Nodejs [已撸]Cubieboard全志A10 Armv7安装Cloud9出错,求助求助~貌似是libxml2-dev的问题

看这行貌似libxml是正常的?!?!看晕了

*    > libxml@0.0.7 preinstall /home/bigmusic/cloud9/node_modules/packager/node_modules/libxml
*    > ./build.sh
5 回复

针对标题为“Nodejs Cubieboard全志A10 Armv7安装Cloud9出错,求助求助~貌似是libxml2-dev的问题”的帖子,我们可以根据常见的安装问题和错误信息来推测可能的解决方案。以下是一个详细的分析和解决方案:

分析问题

从你的描述来看,安装过程中似乎遇到了与libxml2-dev相关的错误。通常这类问题可能是因为系统中缺少必要的库文件或编译工具链不完整。

解决方案

  1. 确保所有依赖项都已安装

    首先需要确保你的系统上已经安装了libxml2-dev和其他必要的开发库。你可以通过以下命令来安装这些依赖:

    sudo apt-get update
    sudo apt-get install -y build-essential git-core curl
    sudo apt-get install -y libssl-dev libxml2-dev libxslt1-dev zlib1g-dev
    
  2. 检查环境变量

    确保你的环境变量配置正确,特别是PATH变量是否包含了必要的编译工具路径。

  3. 尝试重新安装Cloud9

    如果上述步骤之后仍然有问题,可以尝试重新安装Cloud9。首先卸载现有的Cloud9,然后重新安装:

    # 卸载现有版本
    cd /home/bigmusic/cloud9
    npm uninstall cloud9
    
    # 重新安装
    npm install cloud9
    
  4. 查看具体的错误日志

    如果安装过程中还有其他错误信息输出,建议仔细阅读并记录下来,以便进一步诊断问题。可以使用以下命令查看更详细的日志信息:

    npm install cloud9 --verbose
    
  5. 检查构建脚本

    如果问题依然存在,可能是由于build.sh脚本中的某些部分没有正确执行。你可以手动运行该脚本来查看是否有更详细的错误信息:

    cd /home/bigmusic/cloud9/node_modules/packager/node_modules/libxml
    ./build.sh
    

    根据build.sh的具体内容,你可能需要调整编译选项或者修复一些脚本错误。

示例代码

假设build.sh是一个简单的脚本,用于编译和安装库文件,以下是一个基本的示例:

#!/bin/bash

# 检查是否已经安装了必要的编译工具
if ! command -v gcc &> /dev/null
then
    echo "gcc could not be found, please install it first"
    exit 1
fi

# 编译
echo "Compiling libxml..."
gcc -o libxml src/*.c -lxml2

# 安装
echo "Installing compiled files..."
sudo cp libxml /usr/local/bin/

希望以上信息能够帮助你解决安装Cloud9时遇到的问题。如果还有其他具体错误信息,请提供详细日志以便进一步分析。


是G++编译O3的问题,找到解决方法了,但买了一堆书要看,过几天试试

http://ian-corbitt.com/cloud9-ide-and-nodejs-v0-6-15-on-beaglebone/

继续自言自语 是这样的,因为官方用sm安装的时候gcc编译libxml加了一个sse2的参数,导致libxml编译不成功,最后直接导致整个cloud9的依赖包安装失败

最后发现其实求助google不如求github,在官方的issue里找到答案,简单的关键字"arm"就能搜出来…真晕~

链接在上面那楼

简单说一下,要clone一下cloud9作者的libxml依赖包,然后改掉o3里面的sse2参数,把包编译好安装到全局,回到cloud9目录安装所有包,这时候安装libxml就会找回全局已安装好的le

下面是撸的过程:

git clone https://github.com/ajaxorg/cloud9.git cloud9
cd cloud9 && mkdir node_modules && cd node_modules
git clone https://github.com/ajaxorg/node-libxml.git libxml
cd libxml && git checkout v0.0.7 && git submodule init && git submodule update
vim support/o3/wscript ##Delete the -msse2 options, save and exit nano.
npm install -g
cd ~/cloud9
npm install

根据你的描述,错误似乎与 libxml2-dev 相关。libxml 是一个用于解析 XML 的库,libxml2-dev 包含了编译所需的头文件和库文件。

首先,请确保你已经正确安装了 libxml2-dev

sudo apt-get update
sudo apt-get install -y libxml2-dev

接下来,尝试重新安装 Cloud9 和其依赖项。你可以先删除之前尝试安装的文件夹,然后重新克隆并安装 Cloud9:

cd /home/bigmusic/
rm -rf cloud9
git clone https://github.com/cube-cloud/cloud9.git cloud9
cd cloud9
npm install

如果问题仍然存在,你可以尝试使用 Docker 容器来隔离环境,避免不同版本或配置导致的问题。Docker 能够提供一个一致且可重复的运行环境。

下面是创建 Dockerfile 的步骤:

  1. 创建一个新的文件夹 docker-cloud9 并进入该文件夹。
  2. 在该文件夹中创建一个名为 Dockerfile 的文件,并添加以下内容:
FROM armv7l-ubuntu:latest

RUN apt-get update && apt-get install -y \
    build-essential \
    git \
    nodejs \
    npm \
    libxml2-dev

WORKDIR /cloud9
RUN git clone https://github.com/cube-cloud/cloud9.git .
RUN npm install
  1. 构建 Docker 镜像:
docker build -t cloud9-arm .
  1. 运行容器:
docker run -it --name cloud9-arm-container -p 8080:8080 cloud9-arm

这样,你应该能够在容器中成功安装并运行 Cloud9。希望这能帮助你解决问题!

回到顶部