You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Dan Horák (JIRA)" <ji...@apache.org> on 2014/10/08 11:42:34 UTC

[jira] [Created] (QPID-6135) build failure in qpid-cpp-0.30/src/tests/txshift.cpp

Dan Horák created QPID-6135:
-------------------------------

             Summary: build failure in qpid-cpp-0.30/src/tests/txshift.cpp
                 Key: QPID-6135
                 URL: https://issues.apache.org/jira/browse/QPID-6135
             Project: Qpid
          Issue Type: Bug
          Components: C++ Broker
    Affects Versions: 0.30
         Environment: Linux Fedora 21 on s390 (32-bit)
            Reporter: Dan Horák


build fails with
...
CMakeFiles/txshift.dir/txshift.cpp.o: In function `boost::program_options::value_semantic* qpid::optValue<unsigned long>(unsigned long&, char const*)':
/builddir/build/BUILD/qpid-cpp-0.30/src/qpid/Options.h:77: undefined reference to `boost::program_options::value_semantic* qpid::create_value<unsigned long>(unsigned long&, std::string const&)'
collect2: error: ld returned 1 exit status

for a full please see build.log at http://s390.koji.fedoraproject.org/koji/taskinfo?taskID=1579517

The reason is that the workers atribute is declared as size_t and size_t is defined as unsigned long (as opposed to the usual unsigned int) and there is no instance of qpid::optValue() for size_t/unsigned long. The solution would be to add

template QPID_COMMON_EXTERN po::value_semantic* create_value(size_t& val, const std::string& arg);
 in src/qpid/Options.cpp, but I think it would conflict with existing create_value() functions, at least I recolled such problems from other projects.

The workaround is to declare workers as uint in txshift.cpp.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org