Author [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] Topic: how to setup the development workspace  (Read 2934 times)

0 Members and 1 Guest are viewing this topic.

Offline BTSInvestor

  • Jr. Member
  • **
  • Posts: 20
    • View Profile
how to setup the development workspace
« on: December 11, 2013, 03:19:53 PM »

I am very interesting on the Bitshares project,would like to setup the workspace to have a study on the project,what tools should i prepare can i import the project into the IDE for study?appreciated if any technical guy here can give me guidance or share me some useful information for my reference.

Offline devilfish

  • Full Member
  • ***
  • Posts: 98
    • View Profile
Re: how to setup the development workspace
« Reply #1 on: December 12, 2013, 09:07:12 AM »
I believe the project is being worked on at GitHub, go to the following link:

https://github.com/InvictusInnovations/BitShares

Clone the project to your hard-drive and use with your IDE. I haven't really looked at it, but at a guess it'll be based on Bitcoin's source so if you are familiar with that then you will have a base to start with.
BTC: 1MqCxQ2qD7ZuS3ELFY43wfaBTbA2XkYwDP
PTS: PiuFEJHz6zScALgPWzcu2SDKtWJW4cnUFi
XPM: Af5qzgsEwWaHZdGUq8dUoHkhmH4XBmnGW9

Offline BTSInvestor

  • Jr. Member
  • **
  • Posts: 20
    • View Profile
Re: how to setup the development workspace
« Reply #2 on: December 13, 2013, 01:42:35 AM »
Thanks devilfish, i have cloned the source code to my local pc before raising the questions here, and also took a glance on the source,but it is a little bit difficult to get the whole picture of the project if read the source code file by file, i think the faster way is to import the source into the IDE(e.g. vs2010), i searched in the internet,but can not find any useful guide to import the bitshares project into the IDE, maybe my direction is wrong,as i also do not know whether can import the bitshares source into the IDE.

Offline devilfish

  • Full Member
  • ***
  • Posts: 98
    • View Profile
Re: how to setup the development workspace
« Reply #3 on: December 13, 2013, 07:25:49 AM »
I just use text wrangler, can open the whole folder then just compile on the command line...
BTC: 1MqCxQ2qD7ZuS3ELFY43wfaBTbA2XkYwDP
PTS: PiuFEJHz6zScALgPWzcu2SDKtWJW4cnUFi
XPM: Af5qzgsEwWaHZdGUq8dUoHkhmH4XBmnGW9

Offline bytemaster

Re: how to setup the development workspace
« Reply #4 on: December 13, 2013, 09:17:23 AM »
Thanks devilfish, i have cloned the source code to my local pc before raising the questions here, and also took a glance on the source,but it is a little bit difficult to get the whole picture of the project if read the source code file by file, i think the faster way is to import the source into the IDE(e.g. vs2010), i searched in the internet,but can not find any useful guide to import the bitshares project into the IDE, maybe my direction is wrong,as i also do not know whether can import the bitshares source into the IDE.

Cmake will generate a Visual Studio project for you.  Read the CMake documentation if you have questions.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline BTSInvestor

  • Jr. Member
  • **
  • Posts: 20
    • View Profile
Re: how to setup the development workspace
« Reply #5 on: December 13, 2013, 02:18:25 PM »
Thanks bytemaster, the workspace has been setup finally, starting my Bitshares journey. :) :) :)

Thanks devilfish, i have cloned the source code to my local pc before raising the questions here, and also took a glance on the source,but it is a little bit difficult to get the whole picture of the project if read the source code file by file, i think the faster way is to import the source into the IDE(e.g. vs2010), i searched in the internet,but can not find any useful guide to import the bitshares project into the IDE, maybe my direction is wrong,as i also do not know whether can import the bitshares source into the IDE.

Cmake will generate a Visual Studio project for you.  Read the CMake documentation if you have questions.

Offline HackFisher

  • Hero Member
  • *****
  • Posts: 883
    • View Profile
Re: how to setup the development workspace
« Reply #6 on: December 14, 2013, 03:13:36 AM »
Has some problem with handling leveldb:

Bitshares seems to use leveldb-win, but CMake reports that can not found CMakeList.txt under vendor/leveldb-win when generate VS proj files, so I just simply copy "CMakeList.txt" under vendor/leveldb-1.12.0,    then the leveldb build failed later...


How should I handle leveldb-win?

Update:

I just found a branch "windows" of leveldb-win on github, I checkout this branch, use it for that, and now it's ok :), though there is still some errors(Using VS2010, std::unordered_set::reserve seems since C++11).
« Last Edit: December 14, 2013, 03:40:24 AM by HackFisher »
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline HackFisher

  • Hero Member
  • *****
  • Posts: 883
    • View Profile
Re: how to setup the development workspace
« Reply #7 on: December 14, 2013, 02:29:10 PM »
Build pass, but there are still some link errors like following, fc default branch is "phoenix", right?

Quote
error LNK2001: unresolved external symbol "public: static unsigned int __cdecl boost::coroutines::detail::standard_stack_allocator::default_stacksize(void)" ([email protected][email protected]@[email protected]@@SAIXZ)   E:\dev\vs11\BitShares\server\fc.lib(thread.obj)

Quote
error LNK2019: unresolved external symbol "public: static unsigned int __cdecl boost::coroutines::detail::standard_stack_allocator::default_stacksize(void)" ([email protected][email protected]@[email protected]@@SAIXZ)
referenced in function "public: __thiscall fc::context::context(void (__cdecl*)(int),class boost::coroutines::detail::standard_stack_allocator &,class fc::thread *)" ([email protected]@@[email protected]@[email protected]@[email protected]@@[email protected]@@Z)   E:\dev\vs11\BitShares\server\fc.lib(mutex.obj)
« Last Edit: December 14, 2013, 02:43:09 PM by HackFisher »
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline BTSInvestor

  • Jr. Member
  • **
  • Posts: 20
    • View Profile
Re: how to setup the development workspace
« Reply #8 on: December 14, 2013, 02:56:56 PM »
I downloaded the master branch,and no such error in my workspace.

Build pass, but there are still some link errors like following, fc default branch is "phoenix", right?

Quote
error LNK2001: unresolved external symbol "public: static unsigned int __cdecl boost::coroutines::detail::standard_stack_allocator::default_stacksize(void)" ([email protected][email protected]@[email protected]@@SAIXZ)   E:\dev\vs11\BitShares\server\fc.lib(thread.obj)

Quote
error LNK2019: unresolved external symbol "public: static unsigned int __cdecl boost::coroutines::detail::standard_stack_allocator::default_stacksize(void)" ([email protected][email protected]@[email protected]@@SAIXZ)
referenced in function "public: __thiscall fc::context::context(void (__cdecl*)(int),class boost::coroutines::detail::standard_stack_allocator &,class fc::thread *)" ([email protected]@@[email protected]@[email protected]@[email protected]@@[email protected]@@Z)   E:\dev\vs11\BitShares\server\fc.lib(mutex.obj)


Sent from my iPhone using Tapatalk

Offline HackFisher

  • Hero Member
  • *****
  • Posts: 883
    • View Profile
Re: how to setup the development workspace
« Reply #9 on: December 15, 2013, 03:22:05 AM »
Finally, succuss build the solution, and generate the exe.

To fix the above link errors, in CMakeLists.txt of Keyhotee, the coroutine module is missed:

add "coroutine" to the last of find_boost package, in "IF( WIN32 )" switch. There is coroutine for non-windows, so I guess the
coder fogot it in WIN32.

FIND_PACKAGE(Boost 1.53 REQUIRED COMPONENTS thread date_time
system filesystem program_options signals serialization chrono
unit_test_framework context coroutine)
« Last Edit: December 15, 2013, 03:26:51 AM by HackFisher »
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline bytemaster

Re: how to setup the development workspace
« Reply #10 on: December 15, 2013, 03:23:21 AM »
Finally, succuss build the soluction, and generate the exe.

For the above link errors, fix it in CMakeLists.txt of Keyhotee:

add "coroutine" to the last of find_boost package, in "IF( WIN32 )" switch. There is coroutine for non-windows, so I guess may the
coder fogot it in WIN32.

Code: [Select]
FIND_PACKAGE(Boost 1.53 REQUIRED COMPONENTS thread date_time system filesystem program_options signals serialization chrono unit_test_framework context [color=red]coroutine[/color])
I suspect it is a boost version issue that our Windows developer was using an older version that didn't include coroutine (1.53 vs 1.54+)...
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline crazybit

  • Sr. Member
  • ****
  • Posts: 416
    • View Profile
Re: how to setup the development workspace
« Reply #11 on: January 08, 2014, 12:41:37 PM »
Can VS2010 compile the keyhotee and bitshares workspace and build executable keyhotee application?  is VS2012 required?

Finally, succuss build the soluction, and generate the exe.

For the above link errors, fix it in CMakeLists.txt of Keyhotee:

add "coroutine" to the last of find_boost package, in "IF( WIN32 )" switch. There is coroutine for non-windows, so I guess may the
coder fogot it in WIN32.

Code: [Select]
FIND_PACKAGE(Boost 1.53 REQUIRED COMPONENTS thread date_time system filesystem program_options signals serialization chrono unit_test_framework context [color=red]coroutine[/color])
I suspect it is a boost version issue that our Windows developer was using an older version that didn't include coroutine (1.53 vs 1.54+)...
« Last Edit: January 08, 2014, 12:44:01 PM by CrazyBit »

Offline HackFisher

  • Hero Member
  • *****
  • Posts: 883
    • View Profile
Re: how to setup the development workspace
« Reply #12 on: January 08, 2014, 12:51:54 PM »
Can VS2010 compile the keyhotee and bitshares workspace and build executable keyhotee application?  is VS2012 required?

Finally, succuss build the soluction, and generate the exe.

For the above link errors, fix it in CMakeLists.txt of Keyhotee:

add "coroutine" to the last of find_boost package, in "IF( WIN32 )" switch. There is coroutine for non-windows, so I guess may the
coder fogot it in WIN32.

Code: [Select]
FIND_PACKAGE(Boost 1.53 REQUIRED COMPONENTS thread date_time system filesystem program_options signals serialization chrono unit_test_framework context [color=red]coroutine[/color])
I suspect it is a boost version issue that our Windows developer was using an older version that didn't include coroutine (1.53 vs 1.54+)...

Yes, I think so. I build sucessfully with VS2012, keyhotee use some feature of C++11, which vs2010 seems not support.

Sent from my GT-N7100 using Tapatalk

Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline crazybit

  • Sr. Member
  • ****
  • Posts: 416
    • View Profile
Re: how to setup the development workspace
« Reply #13 on: January 09, 2014, 02:01:59 PM »
problem solved.

Can VS2010 compile the keyhotee and bitshares workspace and build executable keyhotee application?  is VS2012 required?

Finally, succuss build the soluction, and generate the exe.

For the above link errors, fix it in CMakeLists.txt of Keyhotee:

add "coroutine" to the last of find_boost package, in "IF( WIN32 )" switch. There is coroutine for non-windows, so I guess may the
coder fogot it in WIN32.

Code: [Select]
FIND_PACKAGE(Boost 1.53 REQUIRED COMPONENTS thread date_time system filesystem program_options signals serialization chrono unit_test_framework context [color=red]coroutine[/color])
I suspect it is a boost version issue that our Windows developer was using an older version that didn't include coroutine (1.53 vs 1.54+)...

Yes, I think so. I build sucessfully with VS2012, keyhotee use some feature of C++11, which vs2010 seems not support.

Sent from my GT-N7100 using Tapatalk


the following error was encoutered while generating the vs2012 workspace, do you have any idea?

statusCompiling on WIN32
Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing:  OPENSSL_LIBRARIES OPENSSL_INCLUDE_DIR) (found version "1.0.1e")
** for a debug build: cmake -DCMAKE_BUILD_TYPE=Debug ..
BOOST_LIBRARIES=C:/Boost/lib/libboost_thread-vc110-mt-1_55.libC:/Boost/lib/libboost_system-vc110-mt-1_55.libC:/Boost/lib/libboost_filesystem-vc110-mt-1_55.libC:/Boost/lib/libboost_date_time-vc110-mt-1_55.libC:/Boost/lib/libboost_chrono-vc110-mt-1_55.libSSL_EAY_LIBRARY-NOTFOUNDLIB_EAY_LIBRARY-NOTFOUNDSSL_EAY_RELEASE-NOTFOUNDLIB_EAY_RELEASE-NOTFOUNDC:/Boost/lib/libboost_coroutine-vc110-mt-1_55.libC:/Boost/lib/libboost_context-vc110-mt-1_55.lib
Setting up debug options for MSVC build
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
LIB_EAY_LIBRARY
    linked by target "Keyhotee" in directory F:/WorkSpace/keyhotee
    linked by target "keyhotee_library" in directory F:/WorkSpace/keyhotee
    linked by target "sancho" in directory F:/WorkSpace/keyhotee/BitShares/sancho
    linked by target "sanchoc" in directory F:/WorkSpace/keyhotee/BitShares/sancho
    linked by target "bitshares_client" in directory F:/WorkSpace/keyhotee/BitShares/server
    linked by target "bitshares_server" in directory F:/WorkSpace/keyhotee/BitShares/server
    linked by target "bitshares_test" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "blockchain_tests" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "momentum_pow_test" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "timekeeper" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "name_reg_server" in directory F:/WorkSpace/keyhotee/BitShares/founder_reg_server
    linked by target "mail_server" in directory F:/WorkSpace/keyhotee/BitShares/mail_server
    linked by target "pool_miner" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_masiner" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_server" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_server" in directory F:/WorkSpace/keyhotee/miner
LIB_EAY_RELEASE
    linked by target "Keyhotee" in directory F:/WorkSpace/keyhotee
    linked by target "keyhotee_library" in directory F:/WorkSpace/keyhotee
    linked by target "sancho" in directory F:/WorkSpace/keyhotee/BitShares/sancho
    linked by target "sanchoc" in directory F:/WorkSpace/keyhotee/BitShares/sancho
    linked by target "bitshares_client" in directory F:/WorkSpace/keyhotee/BitShares/server
    linked by target "bitshares_server" in directory F:/WorkSpace/keyhotee/BitShares/server
    linked by target "bitshares_test" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "blockchain_tests" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "momentum_pow_test" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "timekeeper" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "name_reg_server" in directory F:/WorkSpace/keyhotee/BitShares/founder_reg_server
    linked by target "mail_server" in directory F:/WorkSpace/keyhotee/BitShares/mail_server
    linked by target "pool_miner" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_miner" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_server" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_server" in directory F:/WorkSpace/keyhotee/miner
SSL_EAY_LIBRARY
    linked by target "Keyhotee" in directory F:/WorkSpace/keyhotee
    linked by target "keyhotee_library" in directory F:/WorkSpace/keyhotee
    linked by target "sancho" in directory F:/WorkSpace/keyhotee/BitShares/sancho
    linked by target "sanchoc" in directory F:/WorkSpace/keyhotee/BitShares/sancho
    linked by target "bitshares_client" in directory F:/WorkSpace/keyhotee/BitShares/server
    linked by target "bitshares_server" in directory F:/WorkSpace/keyhotee/BitShares/server
    linked by target "bitshares_test" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "blockchain_tests" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "momentum_pow_test" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "timekeeper" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "name_reg_server" in directory F:/WorkSpace/keyhotee/BitShares/founder_reg_server
    linked by target "mail_server" in directory F:/WorkSpace/keyhotee/BitShares/mail_server
    linked by target "pool_miner" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_miner" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_server" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_server" in directory F:/WorkSpace/keyhotee/miner
SSL_EAY_RELEASE
    linked by target "Keyhotee" in directory F:/WorkSpace/keyhotee
    linked by target "keyhotee_library" in directory F:/WorkSpace/keyhotee
    linked by target "sancho" in directory F:/WorkSpace/keyhotee/BitShares/sancho
    linked by target "sanchoc" in directory F:/WorkSpace/keyhotee/BitShares/sancho
    linked by target "bitshares_client" in directory F:/WorkSpace/keyhotee/BitShares/server
    linked by target "bitshares_server" in directory F:/WorkSpace/keyhotee/BitShares/server
    linked by target "bitshares_test" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "blockchain_tests" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "momentum_pow_test" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "timekeeper" in directory F:/WorkSpace/keyhotee/BitShares/tests
    linked by target "name_reg_server" in directory F:/WorkSpace/keyhotee/BitShares/founder_reg_server
    linked by target "mail_server" in directory F:/WorkSpace/keyhotee/BitShares/mail_server
    linked by target "pool_miner" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_miner" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_server" in directory F:/WorkSpace/keyhotee/miner
    linked by target "pool_server" in directory F:/WorkSpace/keyhotee/miner
« Last Edit: January 15, 2014, 03:28:54 PM by CrazyBit »

Offline cgafeng

Re: how to setup the development workspace
« Reply #14 on: January 12, 2014, 09:50:17 AM »
Finally, succuss build the solution, and generate the exe.

To fix the above link errors, in CMakeLists.txt of Keyhotee, the coroutine module is missed:

add "coroutine" to the last of find_boost package, in "IF( WIN32 )" switch. There is coroutine for non-windows, so I guess the
coder fogot it in WIN32.

FIND_PACKAGE(Boost 1.53 REQUIRED COMPONENTS thread date_time
system filesystem program_options signals serialization chrono
unit_test_framework context coroutine)
请问下你怎么编译leveldb-win的,用vs2012吗。
如果用vs2012的话,找不到CMakeLists.txt,没法用cmake创建工程。
如果可以的话麻烦你把解决步骤写详细点,谢谢
BTC:1EYwcZ9cYVj6C9LMLafdcjK9wicVMDV376

 

Google+