请教个core编译的问题



  • @霜之小刀

    将libgraphene_chain.dylib放在/usr/local/lib/目录下试试看



  • @albert
    现在是两个系统的问题
    1、ubuntu下的时候
    提示找不到 -lgraphene_chain这个库
    而目录下有的这个libgraphene_chain.dylib是应该是苹果系统的库啊~所以没编译成功
    由于你们给mac系统提供的是现成的库(不是本地编译生成的)所以我认为是linux最新的库没有上传。

    2、mac os下的时候
    上面ubuntu的问题是没有了,所以那个地方没出问题,但是另外一个地方出问题了,就是我前面发的
    [ 90%] Linking CXX executable member_enumerator
    ld: library not found for -lgraphene_egenesis_brief
    我找了下,没有找到生成这个graphene_egenesis_brief库的地方呢~



  • 感谢公信宝开发团队的支持!mac版本的core终于编译通过了!


    特别感谢selected在qq上的支持,据说是z神????
    最新更新的代码已经可以直接编译通过了,不过这里有几个地方还想讨论下


    1、github里面的这句

    brew install openssl cmake git openssl autoconf automake doxygen autoreconfls libtool
    

    里面有2个openssl应该去掉一个
    autoreconfls我这里找不到这个东东
    另外我觉得应该加上wget,用于boost的安装脚本。


    2、boost安装脚本里面Mac os的没有加sudo
    不过我就算加了sudo也没法用需要关闭csrutil才能写入usr目录
    就算写进了usr目录,默认的安装路径还是找不到头文件,需要加-DBOOST_ROOT才行
    这里,我觉得是不是可以吧prefix直接放到项目的libraries里,然后添加到includepath好些呢? 还可以保证boost版本一致,嘎嘎


    3、虽然brew了openssl的库,但是直接是找不到的,cmake的时候千万要加对路径和库的配置,这里后来者希望少走点弯路。


    4、有个悲伤的消息,ubuntu还是编译不过。。。不过既然公信宝的主要开发都用mac的话,我也用mac好了,免得徒增烦恼。


    5、我mac做开发做的比较少,很多做法可能不对,各位见谅哈



  • @霜之小刀 said in 请教个core编译的问题:

    感谢公信宝开发团队的支持!mac版本的core终于编译通过了!


    特别感谢selected在qq上的支持,据说是z神????
    最新更新的代码已经可以直接编译通过了,不过这里有几个地方还想讨论下


    1、github里面的这句

    brew install openssl cmake git openssl autoconf automake doxygen autoreconfls libtool
    

    里面有2个openssl应该去掉一个
    autoreconfls我这里找不到这个东东
    另外我觉得应该加上wget,用于boost的安装脚本。


    2、boost安装脚本里面Mac os的没有加sudo
    不过我就算加了sudo也没法用需要关闭csrutil才能写入usr目录
    就算写进了usr目录,默认的安装路径还是找不到头文件,需要加-DBOOST_ROOT才行
    这里,我觉得是不是可以吧prefix直接放到项目的libraries里,然后添加到includepath好些呢? 还可以保证boost版本一致,嘎嘎


    3、虽然brew了openssl的库,但是直接是找不到的,cmake的时候千万要加对路径和库的配置,这里后来者希望少走点弯路。


    4、有个悲伤的消息,ubuntu还是编译不过。。。不过既然公信宝的主要开发都用mac的话,我也用mac好了,免得徒增烦恼。


    5、我mac做开发做的比较少,很多做法可能不对,各位见谅哈

    赞啊,老铁



  • @霜之小刀

    赞~!



  • @霜之小刀

    /:strong 多谢老铁的建议,我们马上更新一下github readme文档。



  • @霜之小刀 你提的建议很好,因为文档的缺陷给你造成的困难表示歉意,我们会持续改进



  • mac下安装boost:

    chmod +x bootstrap.sh
    ./bootstrap.sh
    ./b2 --buildtype=complete install toolset=clang cxxflags="-arch x86_64" linkflags="-arch x86_64"
    

    不需要使用sudo,默认会安装到/usr/local下面

    ls /usr/local/lib/libboost*
    ls /usr/local/include/boost
    


  • ubuntu下的编译,你拉取最新的代码试试看



  • @albert
    多谢哈,后面我会继续跟进代码~
    等到有机会,当个公信宝的下游厂商也不错,我先了解下gxs整体代码的框架



  • @霜之小刀 said in 请教个core编译的问题:

    发做的比较少,很多做法可能不对,各位

    ../chain/libgraphene_chain.a(proposal.cpp.o):proposal.cpp:(.text+0x977): more undefined references to `fc::log_message::log_message(fc::log_context, std::string, fc::variant_object)' follow
    collect2: error: ld returned 1 exit status
    libraries/egenesis/CMakeFiles/embed_genesis.dir/build.make:132: recipe for target 'libraries/egenesis/embed_genesis' failed
    make[2]: *** [libraries/egenesis/embed_genesis] Error 1
    CMakeFiles/Makefile2:863: recipe for target 'libraries/egenesis/CMakeFiles/embed_genesis.dir/all' failed
    make[1]: *** [libraries/egenesis/CMakeFiles/embed_genesis.dir/all] Error 2
    Makefile:127: recipe for target 'all' failed
    make: *** [all] Error 2
    这个问题解决了吗?Ubuntu16.04


Log in to reply
 

Looks like your connection to GXChain Community was lost, please wait while we try to reconnect.